数码管显示时间及点阵显示字符.doc_第1页
数码管显示时间及点阵显示字符.doc_第2页
数码管显示时间及点阵显示字符.doc_第3页
数码管显示时间及点阵显示字符.doc_第4页
数码管显示时间及点阵显示字符.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/数码管显示时间及点阵显示字符#include #include #define uchar unsigned char#define uint unsigned int/定义Max7219端口#define DUAN P0 /P0口控制段#define WEI P2 /P2口控制位sbit k_hour=P10;/ 更改小时按键sbit k_min=P11;/ 更改分钟按键sbit k_sec=P12;/ 更改秒按键/定义数码管端口sbit Max7219_pinCLK = P12;sbit Max7219_pinCS = P11;sbit Max7219_pinDIN = P10;/Max7219位定义unsigned char key; /P3按键扫描(执行模块控制)code uchar seg7code11= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0XBF; /显示段码 数码管字跟uchar wei8=0XFE,0XFD,0XFB,0XF7,0XEf,0XDf,0XBf,0X7f; /位的控制端uchar numb8; /定义字符串uint sec=0,min,hour;/数码管初始定义uchar code disp278=0x00,0x3E,0x2A,0xFF,0xAA,0xBE,0xC0,0x00,/电0x00,0x08,0x08,0x08,0x08,0x08,0x08,0x00,/一0x00,0x00,0x1E,0x20,0x40,0x20,0x1E,0x00, /V0x00,0x00,0x4E,0x4A,0x4A,0x7A,0x00,0x00, /50x00,0x00,0x42,0x7E,0x42,0x00,0x00,0x00,/I0x00,0x0C,0x1E,0x3C,0x3C,0x1E,0x0C,0x00,/love0x00,0x00,0x3E,0x40,0x40,0x3E,0x00,0x00,/U;char flag;/定义点阵显示字符void Delay_xms(uint x)uint i,j;for(i=0;ix;i+)for(j=0;j=1;i-) Max7219_pinCLK=0; Max7219_pinDIN=DATA&0x80; DATA=DATA=24)hour=0;if(k_min=0)min+;while(!k_min);if(min=60)min=0;if(k_sec=0)sec+;while(!k_sec);if(sec=60) sec=0;/数码管按键函数void timer1(void)interrupt 3/每一秒增加一 uchar i; TH1=0X3c;/定时初值TL1=0Xaf;/定时初值 i+; if(i=20) i=0; sec+;/秒加1 if(sec=60) sec=0;/秒清零 min+;/60秒后分加1 if(min=60) min=0;/分清零 hour+;/60分后时加1 if(hour=24) hour=0;/时清零 /数码管中断函数void InitInterrupt() TMOD=0X10;/定义定时器工作方式TH1=0X3c;TL1=0Xaf;ET1=1;TR1=1;/开定时器EA=1;/开中断/数码管中断初始化void main1()uchar m,n;Delay_xms(500); P2=0xaa; Delay_xms(500); P2=0x55; Delay_xms(500);flag=0;Init_MAX7219(); flag=0; while(1) for(m=0;m7;m+) for(n=0;n9;n+)Write_Max7219(n,disp2mn-1);Delay_xms(500); /点阵Main函数void main2()InitInterrupt(); /中断初始化Display1();Display2();while(1) SetTime();/按键函数 t_to_dis();/确定秒分时值 display();/显示秒分时值/数码管Main函数void ext_int0(void) interrupt 0 using 1if(P3!=0xff)Delay_xms(10);key=P3;while(P3!=0xff);switch(key)case 0xfe:main1();break;case 0xfd:main2();break;default:break;/判断有按键按下,所控制的程序void mai

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论