Timer Counter 8051
Sự khác biệt giữa Bộ Timer và Bộ Counter.
Counter :
- Thanh ghi được tăng lên khi xem xét các chuyển đổi từ 1 đến 0 tương ứng của nó với chân đầu vào bên ngoài (T0, T1).
- Bộ đếm sử dụng tín hiệu bên ngoài để đếm xung.
- Tốc độ đếm tối đa là 1/24 của tần số dao động.
Timer :
- Thanh ghi tăng dần cho mỗi chu kỳ máy.
- Bộ hẹn giờ sử dụng tần số của tín hiệu đồng hồ bên trong và tạo ra độ trễ.
-Tốc độ đếm cực đại bằng 1/12 tần số dao động.
Timer Delay
Hãy xem chương trình tạo độ trễ thời gian sử dụng timer1 và mode2 (T1M2):
- #include<reg51.h>
- void main()
- {
- unsigned char j;
- TMOD=0x20; //set the timer mode//
- for(j=0;j<2;j++) //double the time delay//
- {
- TL1=0x19; //set the time delay//
- TH1=0x00;
- TR1=1; //timer is on//
- While(TF1==0); //check the flag bit//
- TF1=0;
- }
- TR1=0; //timer is off//
- }
Delay bình thường
void delay()
{
unsigned int j;
for(j=0;j<30000;j++);
}