![]() |
Giúp đỡ về DELAY trong 16F877A bằng ASM !!!! Gấp ! Gấp
Các bạn xem kĩ hai chương trình này rồi giải thích giúp mình:
( thạch anh 4mhz) REG_DELAY_1 EQU 0x20 REG_DELAY_2 EQU 0x21 ; Chuong trinh delay 100ms cho PIC 16F877A - CHUONG TRINH 1 DELAY_100MS MOVLW 0x83 MOVWF REG_DELAY_1 MOVLW 0xFF MOVWF REG_DELAY_2 LOOP1 DECFSZ REG_DELAY_1 GOTO LOOP2 GOTO EXIT LOOP2 DECFSZ REG_DELAY_2 GOTO LOOP2 GOTO LOOP1 EXIT ; Chuong trinh delay 100ms cho PIC 16F877A - CHUONG TRINH 2 DELAY_100MS MOVLW 0x83 MOVWF REG_DELAY_1 LOOP1 DECFSZ REG_DELAY_1 GOTO LOOP2 GOTO EXIT LOOP2 MOVLW 0xFF MOVWF REG_DELAY_2 DECFSZ REG_DELAY_2 GOTO LOOP2 GOTO LOOP1 EXIT theo mình thì CHUONG TRINH 1 là sai vì sau một vòng lặp loop 2, giá trị thanh ghi REG_DELAY_2 bị giảm về 0 ( thanh ghi này được gán cho ô nhớ 21h trong GPR). nen ko thể delay được giá trị 100ms. nên mình đã sửa lại giống như ở CHUONG TRINH 2. Như thế có đúng ko ? Các bạn xem rồi giúp mình với nha ! |
buồn quá ! sao không ai giúp mình hết vậy ??????????
|
trả lời
chương trình 1 đúng rồi
viết chương trình 2 thế thế thoát khỏi loop2 bằng niềm tin ah cái này là delay_oo rồi |
Múi giờ GMT. Hiện tại là 09:17 AM. |
Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam