![]() |
|
![]() |
#1 |
Đệ tử 2 túi
Tham gia ngày: Mar 2007
Bài gửi: 44
: |
Bạn có thể post nguyên cái code của bạn ko, bạn hỏi nguời khác, mà bạn cứ cắt xén câu hỏi như vậy, nguời ta phải đoán bạn làm gì rồi, chưa làm gì rồi
rất là khó Code:
/* service routine for timer 0 interrupt */ void interrupt timer0_isr(void) { if(reload == 0){ // effect a change on PORTB whenever our desired period is reached. // Note this timing will contain a margin of error. reload = RELOADS + 1; seconds++; PORTB++; // effect a change on PORTB } reload--; T0IF = 0; } Tớ up cho bạn mổ cái file manual của HT PIC, trong chuơng năm nguời ta có 1 ví dụ về timer1 thì phải. thay đổi nội dung bởi: ngocthanh07, 21-05-2010 lúc 11:31 PM. |
![]() |
![]() |
![]() |
#2 | |
Đệ tử 5 túi
Tham gia ngày: Jan 2010
Bài gửi: 114
: |
Trích:
đêm qua mình ngồi suy nghi lại và đọc thêm 1 số bài.hóa ra mình thiếu cho phép ngắt ngoaij vi PEIE=1, vì tmer1 là mọt ngoại vi. mình đã bổ xung và timer1 chạy ngon lành cành đào vui quá ![]() nhưng lại có thêm 1 vấn đề nữa khi mình dùng timer0 và timer1 cùng 1 lúc, thì trình dịch báo lỗi (symbol "interrupt_function" defined more than) có nghĩa là khai báo hàm ngắt quá 1 lần. mính gọi hai hàm ngắt liên tục như thế này void interrupt inter0(void) { //thực hiện lênh1. } void interrupt inter1(void) { //thực hiện lênh2. } có ki nào xung đột ko nhỉ mà khi dịch thì nó báo lỗi hoài? |
|
![]() |
![]() |
![]() |
Ðiều Chỉnh | |
Xếp Bài | |
|
|