久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

采用定時器0產生多個時間間隔

作者:佚名   來源:本站原創   點擊數:  更新時間:2009年06月15日   【字體:

采用單片機定時器0產生多個時間間隔。程序中使用定時器0每50ms中斷一次,然后用全局變量tt,t1,t2,t3,t4,t5對中斷次數計數,獲得100ms,1s,2s,4s,8s,16s間隔,在各個定時間隔內,分別使LED燈亮滅一次。源程序如下:
#include < AT89X51.H>
unsigned char tt,t1,t2,t3,t4,t5;      //全局時間隔變量
unsigned char code dispcode[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,
0x82,0xF8,0x80,0x90};  //七段數碼管譯碼表
void main(void)       //主函數
{
TMOD=0x01;               //定時器0運行在工作模式1,GATE=0,C/T=0
TH0=(65536-15536)/256;   //設置定時器0高8位初值
TL0=(65536-15536)%256;   //設置定時器0低8位初值
                         //若是機器周期為1μs,則計數50000,相當于50ms。
TR0=1;   //啟動定時器
ET0=1;   //允許定時器0中斷
EA=1;    //允許總中斷
while(1)  //無限循環
{
if(t1>5) P2_0=0; else  P2_0=1;   //根據時間間隔變量值閃爍LED燈
if(t2>10) P2_1=0; else  P2_1=1;
if(t3>20) P2_2=0; else  P2_2=1;
if(t4>40) P2_3=0; else  P2_3=1;
if(t5>80) P2_4=0; else  P2_4=1;
P1=dispcode[t4/10];   //顯示間隔變量t4的十位
P0=dispcode[t4%10];   //顯示間隔變量t4的個位
}}
void t0(void) interrupt 1    //定時器0中斷服務程序
{
TH0=(65536-15536)/256;   //設置定時器0高8位初值(3CH)
TL0=(65536-15536)%256;   //設置定時器0低8位初值(B0H)
tt++;      //每中斷一次,tt加1
if(tt==2)   //如果tt等于2,相當于100ms,執行如下語句
{
tt=0;       //將tt清0,所以tt的計數值為0---1---2(0),每個間隔為50ms
t1++;
if(t1==10){t1=0;}
t2++;
if(t2==20){t2=0;}
t3++;
if(t3==40){t3=0;}
t4++;
if(t4==80){t4=0;}
t5++;
if(t5==160){t5=0;}
P2_6=~P2_6;   //每100ms,P2_6連接的LED燈閃爍一次
} }

關閉窗口
主站蜘蛛池模板: 精品欧美一区二区在线观看欧美熟 | 日韩一区二区在线视频 | 精久久久 | 亚洲国产精品久久久久秋霞不卡 | 农村黄性色生活片 | 美女在线国产 | 99re66在线观看精品热 | 欧美网站一区二区 | 久久国产精品一区 | 99pao成人国产永久免费视频 | 中文字幕高清av | 91视频精选 | 综合五月| 精品国产1区2区3区 在线国产视频 | 亚洲网址在线观看 | 亚洲狠狠丁香婷婷综合久久久 | 久草网免费 | 免费一区 | 久久久久久久国产 | 99精品一级欧美片免费播放 | 日韩一区av| 日韩精品一区二区三区第95 | 久久久久网站 | 成人在线 | 国产一区精品在线 | 欧美一级做a爰片免费视频 国产美女特级嫩嫩嫩bbb片 | 综合久 | 久久大全 | 亚洲欧美一区二区在线观看 | 欧美电影在线观看网站 | 日韩一级欧美一级 | 国产成人在线视频 | 国产精品3区 | 日韩中文一区 | 乱一性一乱一交一视频a∨ 色爱av | 亚洲综合在线视频 | 欧美日韩一区二区电影 | 久久精品免费看 | 精品国产一区二区三区观看不卡 | 美女张开腿露出尿口 | 一区二区成人 |