|
Tài trợ cho PIC Vietnam |
MPASM Lập trình bằng hợp ngữ là một việc làm vô cùng vất vả, tuy nhiên, để hiểu và làm việc với vi điều khiển, hợp ngữ trở thành một công cụ khá đắc lực ... |
|
Ðiều Chỉnh | Xếp Bài |
23-07-2010, 06:50 AM | #1 |
Đệ tử 2 túi
Tham gia ngày: Jul 2009
Bài gửi: 33
: |
help bài Led chóp tắt không chạy
Ngồi làm chơi cái này mà nó không chạy chẳng hiểu làm sao cả.
Anh em xem giúp xem code có sai chỗ nào không? Mạch gồm có 1 con PIC16f877a và 5 con 74hc595 lập trình chạy theo thứ tự : sáng dần, tắt dần, sáng xen kẽ dần dần, chóp tắt 10 lần 75hc595 có 2 chân đưa xung vào nối vào 2 chân Port B là 1 và 2 để điều khiển, tạo xung ở 1 thì nó dịch dữ liệu ngõ vào vào thanh ghi nội, tạo xung ở chân 2 thì dịch từ thanh ghi nội ra ngõ ra. Không hiểu vì sao mà nó chạy không đúng, chạy giả lập trên máy mình thì nó chỉ sáng hết đền lên rồi đứng im không thay đổi gì cả, còn trên máy đứa bạn thì chạy xong tới chỗ chóp tắt rồi cứ chóp tắt hoài không lặp lại được như mong muốn. file hardware mô phỏng kèm theo bằng proteus(7.5 sp3) ORG 0H SOLAN EQU 0x0 WA1 EQU 0x1 WA2 EQU 0x2 SOLANST EQU 0x3 SOLAN1 EQU 0x4 ;------------------------------------------------- ;CAU HINH PORTB BANKSEL ANSEL CLRF ANSEL BANKSEL ANSELH CLRF ANSELH BANKSEL OPTION_REG CLRF OPTION_REG BANKSEL TRISB CLRF TRISB BANKSEL PORTB CLRF PORTB ;------------------------------------------------- BEGIN: CALL SANGTAT CALL SANGXENKE CALL TATHETVASANGHET GOTO BEGIN ;-------------------------------------------------- ;CHE DO SANG VA TAT DAN SANGTAT: BSF PORTB,0 CALL SANGTATDAN BCF PORTB,0 CALL SANGTATDAN RETURN SANGTATDAN: MOVLW D'40' MOVWF SOLAN LAP: BSF PORTB,1 NOP BCF PORTB,1 BSF PORTB,2 NOP BCF PORTB,2 CALL DELAY DECFSZ SOLAN,1 GOTO LAP RETURN ;------------------------------------------------- ;------------------------------------------------- ;SANG XEN KE SANGXENKE: MOVLW D'20' MOVWF SOLAN SXK: BSF PORTB,0 CALL TAOXUNG CALL DELAY CALL DELAY CALL DELAY BCF PORTB,0 CALL TAOXUNG CALL DELAY CALL DELAY CALL DELAY DECFSZ SOLAN,1 GOTO SXK RETURN TAOXUNG: BSF PORTB,1 NOP BCF PORTB,1 BSF PORTB,2 NOP BCF PORTB,2 RETURN ;-------------------------------------------------- ;-------------------------------------------------- ;Choptat TATHETVASANGHET: MOVLW D'10' MOVWF SOLANST BATDAUST: ;SANG BSF PORTB,0 CALL NAPBIT ;TAT BCF PORTB,0 CALL NAPBIT DECFSZ SOLANST,1 GOTO BATDAUST RETURN NAPBIT: MOVLW D'40' MOVWF SOLAN1 DICHVAOTHANHGHI: BSF PORTB,1 NOP BCF PORTB,1 DECFSZ SOLAN1,1 GOTO DICHVAOTHANHGHI BSF PORTB,2 NOP BCF PORTB,2 RETURN ;-------------------------------------------------- DELAY: MOVLW D'255' MOVWF WA1 L: LAP1: MOVLW D'255' MOVWF WA2 DECFSZ WA2,1 GOTO LAP1 DECFSZ WA1,1 GOTO L RETURN END |
|
|