基于C51单片机控制的数码管秒表.docx

基于C51单片机控制的数码管秒表.docx

ID:50915976

大小:17.43 KB

页数:7页

时间:2020-03-15

基于C51单片机控制的数码管秒表.docx_第1页
基于C51单片机控制的数码管秒表.docx_第2页
基于C51单片机控制的数码管秒表.docx_第3页
基于C51单片机控制的数码管秒表.docx_第4页
基于C51单片机控制的数码管秒表.docx_第5页
资源描述:

《基于C51单片机控制的数码管秒表.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于C51单片机控制的数码管秒表/*****************************************************************************/说明:下面是通过c语言编写的程序,数码管为共阴数码管使用的芯片有74h138译码器器74HCT573PW芯片。显示效果为:00-00-00分别是分--秒--百分之一秒可用一个键控制:按一下开始计时,再按暂停,再按清零。本代码经测试可以使用/******************************************************************

2、***********/#include#defineENABLE0#defineDISABLE1#defineDATAP0unsignedn=0;unsignedchara,b,count=0,i,j=0,x,u[8];sbithc138s_enable=P1^3;sbithc138s_a=P1^0;sbithc138s_b=P1^1;sbithc138s_c=P1^2;sbitk1=P3^4;unsignedcharcodetable[]=//共阴极0~f数码管编码{0x3f,0x06,0x5b,0x4f,//0~30x66,0x6d

3、,0x7d,0x07,//4~70x7f,0x6f//8~9};voiddelay_ms(unsignedintnms);voidchose7s(unsignedcharnum);voidchose7ss(unsignedcharnumm);voidtimer0_init(void){TMOD=0X01;TH0=(65536-10000)/256;TL0=(65536-10000)%256;ET0=1;EA=1;TR0=1;}/*****************************************************************

4、****//*用作数码管最初显示状态*//*********************************************************************/voids1(){for(j=0;j<8;j++){if(j==2

5、

6、j==5){chose7s(j);//使能某位数码管DATA=0x40;delay_ms(2);}else{chose7s(j);DATA=0x3f;delay_ms(2);}}}voids2(){//timer0_init();for(i=0;i<10;i++)//扫描{for(j=0;j<8;j++){i

7、f(j==2

8、

9、j==5){chose7s(j);DATA=0x40;delay_ms(2);}else{chose7s(j);x=u[j];DATA=table[x];delay_ms(2);}}}}/**************************开关*************************************/voidkey1(){if(k1==0){delay_ms(20);if(k1==0){n++;if(n==3){n=0;count=0;b=0;a=0;}while(!k1);}}}/********************

10、************************************************************函数名:main**函数功能:主函数**输入:无**输出:无********************************************************************************/voidmain(void){while(1){key1();switch(n){case0:s1();break;case1:timer0_init();s2();break;case2:TR0=0;s2();brea

11、k;}}}/********************************************************************************函数名:chose7s**函数功能:使能某个数码管**输入:数码管编号**输出:无********************************************************************************/voidchose7s(unsignedcharnum){hc138s_enable=ENABLE;switch(num){case0://第1个

12、数码管hc138s_a=0;hc138s_b=0;hc138s_c

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

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

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