PDA

View Full Version : Giúp Code


maitruccucdao
24-06-2009, 07:07 AM
Bài này dùng ngắt timer1, TẠO XUNG VUÔNG
xem dùm mình 2 bài viết này đâu khác gì nhau lắm, nhưng tại sao một bài thì chạy, một bày thì không??
BÀI CHẠY , CHO XUẤT XUNG VUÔNG Ở PORTD VỊ TRÍ 0 HOẶC PORTB,VỊ TRÍ 0
PROCESSOR 16F877A
#INCLUDE <P16F877A.INC>
ORG 0X0004
MOVLW B'00000001'
XORWF PORTD,1
BCF PIR1,0
RETFIE
ORG 0X0000
GOTO MAIN
ORG 0X050
MAIN
BSF STATUS, 5
BCF STATUS, 6
BCF TRISD,0
BCF STATUS, 5
BCF PORTD,0

BSF INTCON,7
BSF INTCON,6
BSF STATUS,5
BSF PIE1,0
BCF STATUS,5
MOVLW B'00100000'
MOVWF T1CON
MOVLW 0XFE
MOVWF TMR1H
MOVLW 0X0B
MOVWF TMR1L
BSF T1CON,0
LOOP
BTFSS PIR1,0
GOTO LOOP
GOTO $
END
BÀI KHÔNG CHẠY, CHO XUẤT XUNG VUÔNG Ở VỊ TRÍ KHÁC CHỈ THAY THÀNH PORTD, 1,2,3...
ORG 0X0004
MOVLW B'00000001'
XORWF PORTD,1
BCF PIR1,0
RETFIE
ORG 0X0000
GOTO MAIN
ORG 0X050
MAIN
BSF STATUS, 5
BCF STATUS, 6
BCF TRISD,3
BCF STATUS, 5
BCF PORTD,3

BSF INTCON,7
BSF INTCON,6
BSF STATUS,5
BSF PIE1,0
BCF STATUS,5
MOVLW B'00100000'
MOVWF T1CON
MOVLW 0XFE
MOVWF TMR1H
MOVLW 0X0B
MOVWF TMR1L
BSF T1CON,0
LOOP
BTFSS PIR1,0
GOTO LOOP
GOTO $
END
Nhờ mọi người giúp đỡ.

phandinh
24-06-2009, 09:07 PM
Bạn xem lại chương trình ngắt xem có thể giải quyết dc ko .

maitruccucdao
25-06-2009, 08:41 PM
Mình đã xem, nhưng không phát hiện chổ nào là lỗi, nên mình mới post lên đây nhờ mọi người xem dùm. không biết do bài viết của mình nó thiếu sót chổ nào hay tại vì sao?

phandinh
25-06-2009, 11:51 PM
Cụ thể hơn :
Trong chương trình ngắt, bạn thay lệnh: MOVLW B'00000001'
bằng lệnh: MOVLW B'00001000'

maitruccucdao
26-06-2009, 08:23 PM
A, hiểu rồi, cám ơn bạn thật nhiều. Thì ra là vậy. Vậy mà mình nghĩ không ra.

maitruccucdao
26-06-2009, 08:24 PM
Vậy mà nghĩ mãi không ra thật hết nói!