四位数码管动态显示c语言程序.doc

四位数码管动态显示c语言程序.doc

ID:51846675

大小:32.00 KB

页数:3页

时间:2020-03-16

四位数码管动态显示c语言程序.doc_第1页
四位数码管动态显示c语言程序.doc_第2页
四位数码管动态显示c语言程序.doc_第3页
资源描述:

《四位数码管动态显示c语言程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、//这是一个四位数码管动态显示c语言程序,每隔一秒加一,直至加到9999为止//使用时需采用锁存器#include#include"stdio.h"unsignedcharcodeLED[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsignedcharLEDbuff[]={0xff,0xff,0xff,0xff};//定义数码管的位选段sbitSEG_bit_1=P0^1;sbitSEG_bit_2=P0^2;sbitSEG_bit_3=P0^3;sbitSEG_bit_4=P0^4;unsign

2、edintcnt=0;unsignedintsec=0;unsignedintmini=0;unsignedinthour=0;unsignedchari=0;/*voiddelay(unsignedintz){unsignedintx,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}*/voidinterrupttimer0()interrupt1/*设置中断函数*/{TH0=0xfc;TL0=0x18;cnt++;//P1=0x80;//delay(1);switch(i){case0:SEG_bit_1=0;SEG_bit_4=1;P1=LEDbu

3、ff[0];i++;break;case1:SEG_bit_4=0;SEG_bit_3=1;P1=LEDbuff[1];i++;break;case2:SEG_bit_3=0;SEG_bit_2=1;P1=LEDbuff[2]&;i++;break;case3:SEG_bit_2=0;SEG_bit_1=1;P1=LEDbuff[3];i=0;break;default:break;}}/************************************************voidserial_init(){//TMOD=0x20;//定时器T/C1工作方式2SCON=0

4、x50;//串口工作方式1,允许串口接收(SCON=0x40时禁止串口接收)TH1=0xF3;//定时器初值高8位设置TL1=0xF3;//定时器初值低8位设置PCON=0x80;//波特率倍频(屏蔽本句波特率为2400)TR1=1;//定时器启动}**********************************************/voidmain(){//serial_init();//串口初始化//TMOD=0x21;/*设置定时器*/TMOD=0x01;TH0=0xfc;TL0=0x18;TR0=1;EA=1;/*设置中断*/ET0=1;while(1){if(0=

5、=TF0){if(cnt>=1000){cnt=0;sec++;if(sec>=60){sec=0;mini++;if(mini>=60){mini=0;hour++;if(hour>=24)hour=0;}}LEDbuff[0]=LED[sec%10];//*设置数码管显示位*/LEDbuff[1]=LED[sec/10%10];LEDbuff[2]=LED[mini%10];LEDbuff[3]=LED[mini/10%10];//TI=1;//使用printf函数前须先将发送标志位TI置1//printf("%4d%x,%x%x",sec,LEDbuff[0],LEDbu

6、ff[1],LEDbuff[2]);//TI=0;}}}}

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

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

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