单片机定时器计数器应用.docx

单片机定时器计数器应用.docx

ID:55770845

大小:17.74 KB

页数:2页

时间:2020-06-03

单片机定时器计数器应用.docx_第1页
单片机定时器计数器应用.docx_第2页
资源描述:

《单片机定时器计数器应用.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、#defineLEDLen3#includesbitP1_0=P1^0;dataunsignedcharm=10;//m用于定时器dataunsignedchara;//定时器开关dataunsignedcharb;//计数器开关dataunsignedcharg,s,h;//i的个十百位dataunsignedcharL=0;//i表示脉冲的累计数xdataunsignedcharOUTBIT_at_0x8002;//位控制口xdataunsignedcharOUTSEG_at_0x8004;//段控制口xdataunsignedcharIN_a

2、t_0x8001;//键盘读入口unsignedcharLEDBuf[LEDLen];//显示缓冲codeunsignedcharLEDMAP[]={//八段管显示码0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};voidDisplayLED(){unsignedchari=0;unsignedcharPos;unsignedcharLED;Pos=0x20;//从左边开始显示for(i=0;i

3、LED=LEDBuf[i];OUTSEG=LED;TH1=0xff;TL1=0xff;OUTBIT=Pos;//显示一位八段管Pos>>=1;//显示下一位}OUTBIT=0;//关所有八段管}voidmain(){TMOD=0x51;//高位5表示其中一个中断为计数器模式,1表示中断为计数器模式TH0=0x0c;//中断0,定时器初值TL0=0xb0;TH1=0xff;//中断1,计数器初值TL1=0xff;P1=0xff;EA=1//中断总开关ET0=1;//允许中断T0ET1=1;//允许中断T1TR0=0;//中断0不打开TR1=0;//中断1不打开whil

4、e(1){P1=P1

5、0x06;//单片机P1口在读取外部信号时,先要出一a=P1&0x02;//a为P1^1读到的开关信号(高电平表示开关打开,低关)b=P1&0x04;//b为P1^2if(a)//如果a为高电平,打开T0中断{TR0=1;}else{TR0=0}if(b)//如果b为高电平,打开T1中断{TR1=1;}else{TR1=0}LEDBuf[0]=LEDMAP[g&0x0f];//取i的个位LEDBuf[1]=LEDMAP[s&0x0f];//取i的十位LEDBuf[2]=LEDMAP[h&0x0f];//取i的百位DisplayLED();}}v

6、oidtimer()interrupt1//实验5定时器{TH0=0x0c;TL0=0xb0;m--;if(m==0){P1_0=!P1_0;m=10;}}voidjishu()interrupt3//每一脉冲,进入计数中断{L++;//L表示脉冲个数加一g=L%100;//L的个位s=(L%10)/10;//L的十位h=L/100;//L的百位if(L>256)//如果L大于256,重新赋L值为0{L=0;}TH1=0xff;TL1=0xff;}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。