關于at89c51的定時器和計數器的使用一個很有用的ppt分享給大家:
ppt文檔的截圖:
0.png (378.29 KB, 下載次數: 34)
下載附件
2017-5-18 16:53 上傳
0.png (350.39 KB, 下載次數: 38)
下載附件
2017-5-18 16:53 上傳
0.png (68.93 KB, 下載次數: 42)
下載附件
2017-5-18 16:52 上傳
99s精確倒計時仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (24.53 KB, 下載次數: 44)
下載附件
2017-5-18 16:54 上傳
定時器中斷方式實驗仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (23.99 KB, 下載次數: 47)
下載附件
2017-5-18 16:55 上傳
單片機源程序如下:
- #include<reg52.h>
- #define uchar unsigned char
- #define uint unsigned int
- char i;
- char ctime=99;
- uchar code led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
- void main()
- {
- TMOD=0X01; //設定定時器為工作方式1
- TH0=(65536-45872)/256; //裝初值,11.0592 MHZ晶振定時50MS,計數值為45872
- TL0=(65536-45872)%256;
- EA=1; //打開總中斷
- ET0=1; //打開定時器中斷
- TR0=1; //啟動定時器0
- while(1)
- {
- P0=led[ctime/10];
- P2=led[ctime%10];
-
- }
- }
- void time() interrupt //定時器0中斷服務程序
- {
- TH0=(65536-45872)/256; //重裝初值
- TL0=(65536-45872)%256;
- i++;
- if(i==20) //如果i=20,說明1s時間到
- {
- i=0;
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
定時器、計數器的應用.rar
(731.13 KB, 下載次數: 17)
2017-5-18 09:35 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|