时钟程序 51单片机 时间可设定

上传人:小*** 文档编号:158301822 上传时间:2022-10-03 格式:DOC 页数:11 大小:54.54KB
收藏 版权申诉 举报 下载
时钟程序 51单片机 时间可设定_第1页
第1页 / 共11页
时钟程序 51单片机 时间可设定_第2页
第2页 / 共11页
时钟程序 51单片机 时间可设定_第3页
第3页 / 共11页
资源描述:

《时钟程序 51单片机 时间可设定》由会员分享,可在线阅读,更多相关《时钟程序 51单片机 时间可设定(11页珍藏版)》请在装配图网上搜索。

1、/* 时钟 设置按键由P2.3口输入 加1按键由P2.2口输入*/#include #define u8 unsigned char#define uchar unsigned char#define u16 unsigned int#define uint unsigned intsbit SCLK=P14;sbit SDIN=P15;sbit DC=P16;sbit SCE=P17;void Wr_LCD_byte(u8 dat,u8 cmd);void Set_LCD_XY(u8 X,u8 Y);void Clr_LCD(void);void Wr_LCD_chr(u8 col,u8 r

2、ow,u8 ch);void LCD_Init(void);void delayms(unsigned int m);uchar keyscan(void);unsigned char code chr= 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 ,/ 0 0x00, 0x7F, 0x7F, 0x7F, 0x7F, 0x7F ,/ 1 0x00, 0x3E, 0x51, 0x49, 0x45, 0x3E ,/ 0 2 0x00, 0x00, 0x42, 0x7F, 0x40, 0x00 ,/ 1 3 0x00, 0x42, 0x61, 0x51, 0x49, 0x4

3、6 ,/ 2 4 0x00, 0x21, 0x41, 0x45, 0x4B, 0x31 ,/ 3 5 0x00, 0x18, 0x14, 0x12, 0x7F, 0x10 ,/ 4 6 0x00, 0x27, 0x45, 0x45, 0x45, 0x39 ,/ 5 7 0x00, 0x3C, 0x4A, 0x49, 0x49, 0x30 ,/ 6 8 0x00, 0x01, 0x71, 0x09, 0x05, 0x03 ,/ 7 9 0x00, 0x36, 0x49, 0x49, 0x49, 0x36 ,/ 8 10 0x00, 0x06, 0x49, 0x49, 0x29, 0x1E ,/

4、9 11 0x00, 0x7C, 0x12, 0x11, 0x12, 0x7C ,/ A 12 0x00, 0x7F, 0x49, 0x49, 0x49, 0x36 ,/ B 13 0x00, 0x3E, 0x41, 0x41, 0x41, 0x22 ,/ C 14 0x00, 0x7F, 0x41, 0x41, 0x22, 0x1C ,/ D 15 0x00, 0x7F, 0x49, 0x49, 0x49, 0x41 ,/ E 16 0x00, 0x7F, 0x09, 0x09, 0x09, 0x01 ,/ F 17 0x00, 0x3E, 0x41, 0x49, 0x49, 0x7A ,/

5、 G 18 0x00, 0x7F, 0x08, 0x08, 0x08, 0x7F ,/ H 19 0x00, 0x00, 0x41, 0x7F, 0x41, 0x00 ,/ I 20 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01 ,/ J 21 0x00, 0x7F, 0x08, 0x14, 0x22, 0x41 ,/ K 22 0x00, 0x7F, 0x40, 0x40, 0x40, 0x40 ,/ L 23 0x00, 0x7F, 0x02, 0x0C, 0x02, 0x7F ,/ M 24 0x00, 0x7F, 0x04, 0x08, 0x10, 0x7F ,

6、/ N 25 0x00, 0x3E, 0x41, 0x41, 0x41, 0x3E ,/ O 26 0x00, 0x7F, 0x09, 0x09, 0x09, 0x06 ,/ P 27 0x00, 0x3E, 0x41, 0x51, 0x21, 0x5E ,/ Q 28 0x00, 0x7F, 0x09, 0x19, 0x29, 0x46 ,/ R 29 0x00, 0x46, 0x49, 0x49, 0x49, 0x31 ,/ S 30 0x00, 0x01, 0x01, 0x7F, 0x01, 0x01 ,/ T 31 0x00, 0x3F, 0x40, 0x40, 0x40, 0x3F

7、,/ U 32 0x00, 0x1F, 0x20, 0x40, 0x20, 0x1F ,/ V 33 0x00, 0x3F, 0x40, 0x38, 0x40, 0x3F ,/ W 34 0x00, 0x63, 0x14, 0x08, 0x14, 0x63 ,/ X 35 0x00, 0x07, 0x08, 0x70, 0x08, 0x07 ,/ Y 36 0x00, 0x61, 0x51, 0x49, 0x45, 0x43 ,/ Z 37 0x00, 0x20, 0x54, 0x54, 0x54, 0x78 ,/ a 38 0x00, 0x7F, 0x48, 0x44, 0x44, 0x38

8、 ,/ b 39 0x00, 0x38, 0x44, 0x44, 0x44, 0x20 ,/ c 40 0x00, 0x38, 0x44, 0x44, 0x48, 0x7F ,/ d 41 0x00, 0x38, 0x54, 0x54, 0x54, 0x18 ,/ e 42 0x00, 0x08, 0x7E, 0x09, 0x01, 0x02 ,/ f 43 0x00, 0x18, 0xA4, 0xA4, 0xA4, 0x7C ,/ g 44 0x00, 0x7F, 0x08, 0x04, 0x04, 0x78 ,/ h 45 0x00, 0x00, 0x44, 0x7D, 0x40, 0x0

9、0 ,/ i 46 0x00, 0x40, 0x80, 0x84, 0x7D, 0x00 ,/ j 47 0x00, 0x7F, 0x10, 0x28, 0x44, 0x00 ,/ k 48 0x00, 0x00, 0x41, 0x7F, 0x40, 0x00 ,/ l 49 0x00, 0x7C, 0x04, 0x18, 0x04, 0x78 ,/ m 50 0x00, 0x7C, 0x08, 0x04, 0x04, 0x78 ,/ n 51 0x00, 0x38, 0x44, 0x44, 0x44, 0x38 ,/ o 52 0x00, 0xFC, 0x24, 0x24, 0x24, 0x

10、18 ,/ p 53 0x00, 0x18, 0x24, 0x24, 0x18, 0xFC ,/ q 54 0x00, 0x7C, 0x08, 0x04, 0x04, 0x08 ,/ r 55 0x00, 0x48, 0x54, 0x54, 0x54, 0x20 ,/ s 56 0x00, 0x04, 0x3F, 0x44, 0x40, 0x20 ,/ t 57 0x00, 0x3C, 0x40, 0x40, 0x20, 0x7C ,/ u 58 0x00, 0x1C, 0x20, 0x40, 0x20, 0x1C ,/ v 59 0x00, 0x3C, 0x40, 0x30, 0x40, 0

11、x3C ,/ w 60 0x00, 0x44, 0x28, 0x10, 0x28, 0x44 ,/ x 61 0x00, 0x1C, 0xA0, 0xA0, 0xA0, 0x7C ,/ y 62 0x00, 0x44, 0x64, 0x54, 0x4C, 0x44 ,/ z 63 0x00, 0x00, 0x60, 0x60, 0x00, 0x00 ,/ . 64 0x00, 0x00, 0x36, 0x36, 0x00, 0x00 ,/ : 65 0x00, 0x00, 0x41, 0x22, 0x14, 0x08 ,/ 66 0x00, 0x00, 0x00, 0x2f, 0x00, 0x

12、00 ,/ ! 67 0x00, 0x00, 0x07, 0x00, 0x07, 0x00 ,/ 68 0x00, 0x14, 0x7f, 0x14, 0x7f, 0x14 ,/ # 69 0x00, 0x24, 0x2a, 0x7f, 0x2a, 0x12 ,/ $ 70 0x00, 0x62, 0x64, 0x08, 0x13, 0x23 ,/ % 71 0x00, 0x36, 0x49, 0x55, 0x22, 0x50 ,/ & 72 0x00, 0x00, 0x05, 0x03, 0x00, 0x00 ,/ 73 0x00, 0x00, 0x1c, 0x22, 0x41, 0x00

13、,/ ( 74 0x00, 0x00, 0x41, 0x22, 0x1c, 0x00 ,/ ) 75 0x00, 0x14, 0x08, 0x3E, 0x08, 0x14 ,/ * 76 0x00, 0x08, 0x08, 0x3E, 0x08, 0x08 ,/ + 77 0x00, 0x00, 0x00, 0xA0, 0x60, 0x00 ,/ , 78 0x00, 0x08, 0x08, 0x08, 0x08, 0x08 ,/ - 79 0x00, 0x40, 0x40, 0x40, 0x40, 0x40 ,/ _ 80 0x00, 0x20, 0x10, 0x08, 0x04, 0x02

14、 ,/ / 81 0x00, 0x00, 0x7F, 0x41, 0x41, 0x00 ,/ 82 0x00, 0x00, 0x41, 0x41, 0x7F, 0x00 ,/ 82 0x00, 0x04, 0x02, 0x01, 0x02, 0x04 ,/ 84;/*-wr_LCD_byte:通过SPI端口向LCD5110写入数据 输入参数:dat(byte):写入的数据 cmd(0、1):指令0,数据1-*/void Wr_LCD_byte(u8 dat,u8 cmd)unsigned char i; SCE=0; DC=cmd; for(i=0;i8;i+) if(dat&0x80)SDI

15、N=1; elseSDIN=0; dat=dat1; SCLK=0; SCLK=1; DC=1; SCE=1; SDIN=1;/*-set_LCD_XY:设置光标位置输入参数:X(0-83)、Y(0-5) -*/void Set_LCD_XY(u8 X,u8 Y) Wr_LCD_byte(0x40|Y,0); Wr_LCD_byte(0x80|X,0);/*-clr_LCD: LCD5110清屏-*/void Clr_LCD(void) unsigned char c,r; Set_LCD_XY(0,0); for(r=0;r6;r+) for(c=0;c84;c+) Wr_LCD_byte(

16、0x00,1); /*-wr_LCD_chr:显示8*16大小的半角字符输入函数:col(0- 9):显示位置 - 列 row(0- 5):显示位置 - 行 ch:(0-39):字符位置(位于数组chr中) -*/void Wr_LCD_chr(u8 col,u8 row,u8 ch) unsigned char i; Set_LCD_XY(col*6,row); for(i=0;i6;i+) Wr_LCD_byte(chrch*6+i,1); /*-LCD_init: LCD5110初始化-*/void LCD_Init(void)Wr_LCD_byte(0x21,0);/初始化LCD,功能

17、设定使用扩充指令Wr_LCD_byte(0xc8,0);/设定液晶偏置电压Wr_LCD_byte(0x20,0);/使用基本指令 Wr_LCD_byte(0x0C,0);/设定显示模式,正常显示void delayms(unsigned int m) /延时程序 unsigned int i; while(-m) for(i=0;i 23) hour %= 10; break; case 6: /小时个位处 hourH = hour/10; hourL = hour%10; hourL+; if (2 = hourH) if (4=hourL) hourL = 0; else if (10=h

18、ourL) hourL = 0; hour = hourH*10 + hourL; break; case 8: /分钟十位处 minute += 10; if (minute 59) minute %= 10; break; case 9: /分钟个位处 minuteH = minute/10; minuteL = minute%10; minuteL+; if (10=minuteL) minuteL = 0; minute = minuteH*10 + minuteL; break; default: break; break; case NONE: LED1 = 0; break; c

19、ase MENUCTRL: LED0 = 0; break; default: break; screenrow5 = hour/10 + 2; /更新小时显示内容 screenrow6 = hour%10 + 2; screenrow8 = minute/10 + 2; /更新分钟显示内容 screenrow9 = minute%10 + 2; while (!(0xFF=ctrl) /等待按键释放 ctrl = P2;void main()uchar r,c;Init_Timer1(); /初始化定时器1EX0 = 1; /开外部中断0IT0 = 0; /设置低电平可引起外部中断0LCD_

20、Init(); /LCD初始化Clr_LCD(); /LCD清屏screenrow0 = 31; /Tscreenrow1 = 46; /iscreenrow2 = 50; /mscreenrow3 = 42; /escreenrow7 = 65; /:screenrow10 = 65; /:screenrow5 = hour/10 + 2; /计算小时显示的内容 screenrow6 = hour%10 + 2; screenrow8 = minute/10 + 2; /计算分钟显示的内容 screenrow9 = minute%10 + 2;screenrow11 = second/10

21、+ 2; /计算秒显示的内容screenrow12 = second%10 + 2;while(1)if (0=setupFlag) /不处于设置状态 for(r=0; r6; r+) /6行 for(c=0; c14; c+) /14列 /:闪烁 if (r=row)&(7=c)|(10=c) /0.5秒闪烁一次 if (time1Counter 10) Wr_LCD_chr(c,row,65); /: continue; else Wr_LCD_chr(c,row,0); /显示为空 continue; /正常显示屏幕其他内容 Wr_LCD_chr(c,r,screenrc); elsefor(r=0; r6; r+) /6行 for(c=0; c14; c+) /14列 dpyCounter +; if (r=row)&(c=col) /在光标处,闪烁 if (dpyCounter= 4000) dpyCounter = 0; continue; /非光标处,正常显示内容 Wr_LCD_chr(c,r,screenrc);

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!