位数字显示频率计数器电路及51单片机源程序

位数字显示频率计数器电路及51单片机源程序

ID:23725933

大小:229.00 KB

页数:12页

时间:2018-11-10

位数字显示频率计数器电路及51单片机源程序_第1页
位数字显示频率计数器电路及51单片机源程序_第2页
位数字显示频率计数器电路及51单片机源程序_第3页
位数字显示频率计数器电路及51单片机源程序_第4页
位数字显示频率计数器电路及51单片机源程序_第5页
资源描述:

《位数字显示频率计数器电路及51单片机源程序》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、6位数字显示频率计数器电路及51单片机源程序1.频率计算器功能利用AT89S51单片机的T0、T1的定时计数器功能,来完成对输入的信号进行频率计数,计数的频率结果通过8位动态数码管显示出来。要求能够对0-250KHZ的信号频率进行准确计数,计数误差不超过±1HZ。2.电路原理图3.程序设计内容(1).定时/计数器T0和T1的工作方式设置,由图可知,T0是工作在计数状态下,对输入的频率信号进行计数,但对工作在计数状态下的T0,最大计数值为fOSC/24,由于fOSC=12MHz,因此:T0的最大计数频率为250KHz。对于频率的概念就是在一秒只数脉冲的个数,即为频率值。所以T1工作在定时

2、状态下,每定时1秒中到,就停止T0的计数,而从T0的计数单元中读取计数的数值,然后进行数据处理。送到数码管显示出来。(2).T1工作在定时状态下,最大定时时间为65ms,达不到1秒的定时,所以采用定时50ms,共定时20次,即可完成1秒的定时功能。5.C语言源程序C程序#includeunsignedCHARcodedispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsignedCHARcodedispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0

3、x6f,0x00,0x40};unsignedCHARdispbuf[8]={0,0,0,0,0,0,10,10};unsignedCHARtemp[8];unsignedCHARdispcount;unsignedCHART0count;unsignedCHARtimecount;bitflag;unsignedlongx;voidmain(void){unsignedCHARi;TMOD=0x15;TH0=0;TL0=0;TH1=(6553*000)/256;TL1=(6553*000)%6;TR1=1;TR0=1;ET0=1;ET1=1;EA=1;while(1){if(flag

4、==1){flag=0;x=T0count*65536+TH0*256+TL0;for(i=0;i<8;i++){temp[i]=0;}i=0;while(x/10){temp[i]=x;x=x/10;i++;}temp[i]=x;for(i=0;i<6;i++){dispbuf[i]=temp[i];}timecount=0;T0count=0;TH0=0;TL0=0;TR0=1;}}}voidt0(void)interrupt1using0{T0count++;}voidt1(void)interrupt3using0{TH1=(6553*000)/256;TL1=(6553*00

5、0)%6;timecount++;if(timecount==250){TR0=0;timecount=0;flag=1;}P0=dispcode[dispbuf[dispcount]];P2=dispbit[dispcount];dispcount++;if(dispcount==8){dispcount=0;}}51单片机系列教程十二:可预置可逆4位计数器一、 实验任务      利用AT89S51单片机的P1.0-P1.3接四个发光二极管L1-L4,用二进制形式表示当前计数的数据;用P1.4-P1.7作为预置数据的输入端,接四个拨动开关K1-K4,用P3.6/WR和P3.7/RD

6、端口接两个轻触开关,用来作加计数和减计数开关。具体的电路原理图如下图所示二、电路原理图 图12.1 三、硬件连线1.将51单片机的P1.0-P1.3端口用连接4只发光二极管L1-L4;要求:P1.0对应着L1,P1.1对应着L2,P1.2对应着L3,P1.3对应着L4;2.单片机的P3.0,P3.1,P3.2,P3.3用导线连接四只拨动开关K1-K4;3.单片机端口P3.6,P3.7接两只按键开关SP1和SP2。四、程序框图 图12.2 五、汇编源程序COUNT  EQU30H   ORG00HSTART:  MOVA,P3 ANLA,#0FH   MOVCOUNT,A   MOVP1

7、,ASK2:  JBP3.6,SK1 LCALLDELY10MS   JBP3.6,SK1   INCCOUNT MOVA,COUNT   CJNEA,#16,NEXT MOVA,P3   ANLA,#0FH   MOVCOUNT,ANEXT:  MOVP1,AWAIT:  JNBP3.6,WAIT LJMPSK2SK1: JBP3.7,SK2   LCALLDELY10MS   JBP3.7,SK2 DECCOUNT   MOVA,COUNT

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

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

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