![]() |
|
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 |
|
![]() |
#1 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
Thêm nữa, trong phần khởi tạo cho Timer1, bạn xoá thanh ghi INTCON, điều này làm cho bit GIE và PEIE trong thanh ghi này bị xóa. Hai bit này bị xoá thì không bao giờ có bất cứ ngắt nào xảy ra. Do vậy đoạn khởi tạo cho Timer1 bạn sửa như sau:
Code:
;================================================================================================== ;KHOI TAO TIMER1 ;================================================================================================== CLRF T1CON CLRF INTCON CLRF PIR1 MOVLW 0XFC MOVWF TMR1H MOVLW 0X17 MOVWF TMR1L BSF STATUS,RP0 CLRF PIE1 BSF PIE1,TMR1IE BCF STATUS,RP0 BSF INTCON,PEIE BSF INTCON,GIE
__________________
Do more than exist, LIVE |
![]() |
![]() |
![]() |
#2 | |
Đệ tử 4 túi
Tham gia ngày: Jan 2007
Bài gửi: 79
: |
Làm như bạn hướng dẫn nó đã chạy được nhưng vẫn không ổn định, luc được lúc không (mình thử trên mạch test riêng chứ ko phải mạch đồ án)
Trích:
Cái quan trọng với mình là : trong một chương trình chỉ sử dụng ngắt timer1 (vào đầu chương trình là ngắt chạy luôn) mà chạy còn thiếu ổn định ,lúc được lúc không nên khi đưa vào đồ án, chương trình chạy theo tuần tự, trong đó việc ngắt timer1 xảy ra sau các đoạn chương trình khác nên nó ko bao giờ chạy được cả, ngắt chỉ xảy ra một lần rồi thôi. |
|
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|