BÀI 13 : CHỚP TẮT LED VỚI TẦN SỐ 1S SỬ DỤNG TIMER 1 PIC16F877A CCS

5:20:00 AM
Chào các bạn trong bài đăng về TIMER 1 thì mình đã hướng dẫn các bạn cánh tính toán để cài đăt cho TIMER 1 rồi nên ai chưa đọc thì quay lại bài trước đọc nha ! Còn trong bài đăng này mình sẽ hướng dẫn các bạn dùng TIMER 1 để tạo trễ 1s để chớp tăt LED.
Để delay 1s thì chương trình con ngắt 100ms phải thực hiện 10 lần, mỗi lần ngắt 100ms thì tăng biến đếm ngắt BDN lên 1 đơn vị, kiểm tra nếu bằng 10 thì cho bằng 0 và đảo trạng thái của led, nếu chưa bằng 10 thì thoát và thực hiện tiếp chương trình chính. Ý nghĩa của việc dùng TIMER 1 để delay 1s chính xác hơn khi chúng ta sử dụng lệnh delay_ms().
- Đây là ảnh mô phỏng protues.

 CHỚP TẮT LED VỚI TẦN SỐ 1S SỬ DỤNG TIMER 1

- Đây là code chương trình.
#INCLUDE <16F877a.H>
#FUSES NOWDT, PUT, HS, NOPROTECT, NOLVP
#USE DELAY(CLOCK=16M)
INT8 DEM, BDN;
#int_timer1
void INTERRUPT_TIMER1()

BDN++;   
SET_TIMER1(15536);
IF (BDN == 10)   

BDN = 0;  OUTPUT_B(DEM); 
DEM = ~ DEM;
}
}
VOID MAIN()
{    
SET_TRIS_B(0x00);  
DEM = 0X00 ;   
OUTPUT_B(DEM);     
BDN= 0X00 ;
SETUP_TIMER_1(T1_INTERNAL | T1_DIV_BY_8);    
SET_TIMER1(15536);
ENABLE_INTERRUPTS(GLOBAL);    
ENABLE_INTERRUPTS(INT_TIMER1);
WHILE(true)


}
}
- Link download project Click here

Share this

Related Posts

Previous
Next Post »

6 nhận xét

Write nhận xét
July 14, 2016 at 8:18 PM delete

sao minh mo phong ma khong duoc

Reply
avatar
July 14, 2016 at 11:36 PM delete

:( ý là file mô phỏng k chạy hay là, nó chạy k đúng 1s ?

Reply
avatar
September 6, 2016 at 11:17 PM delete

Cho mình hỏi sao cái hàm interupt_timer1 bạn không có gọi nó lại trong hàm void main thì sao mình cần phải viết nó ra chi vậy, mình mới học qua timer chưa hiểu rõ lắm có gì bạn thông cảm

Reply
avatar
September 7, 2016 at 4:47 AM delete

Ý nghĩa của hàn interupt là khi cờ ngắt của timer bị tràn là nó nhảy vào chương trình ngắt thực hiện cho nên bạn k để trong void main.

Reply
avatar
September 11, 2020 at 10:38 AM delete

Cờ ngát của timer1 bị tràn nó nằm ở dòng lệnh nào vậy bạn

Reply
avatar