完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include
#define uchar unsigned char #define uint unsigned int ***it sda=P2^0; ***it scl=P2^1; ***it deep=P1^6; ***it rs=P2^6; ***it rw=P2^5; ***it lcden=P2^7; //使用LCD1602液晶 ***it k1=P1^1; ***it k2=P1^2; ***it k3=P2^3; uchar code table[]="2017-9-14"; char fen,miao,shi; uchar count,k1num; void init(); void delay(); void delay1(uchar i); void keyscan(); void write_comand(uchar aa); void write_date(uchar bb); void start(); void stop(); void respons(); void write(); uchar read(); void write_add(uchar add,uchar date); char read_add(uchar add); void init_24c02(); void shifenmiao(uchar add,uchar date); void main() { init(); while(1) { keyscan(); } } void delay() { ; ; ; } void delay1(uchar i) { uchar x,y; for(x=i;x>0;x--) for(y=110;y>0;y--); } void di() { deep=0; delay1(100); deep=1; } void write_comand(uchar aa) { rs=0; rw=0; P0=aa; lcden=1; lcden=0; delay1(5); } void write_date(uchar bb) { rs=1; rw=0; P0=bb; lcden=1; lcden=0; delay1(5); } void shifenmiao(uchar add,uchar date) { uchar shi,ge; shi=date/10; ge=date%10; write_comand(0xc0+add); write_date(0x30+shi); write_date(0x30+ge); } void init() { uchar num; shi=0,fen=0,miao=0; //初次化数据 count=0,k1num=0; write_comand(0x38); write_comand(0x0c); write_comand(0x06); //对1602液晶进行初次化 write_comand(0x01); write_comand(0x80+0x04); for(num=0;num<10;num++) { write_date(table[num]); delay1(100); } write_comand(0xc0+6); write_date(':'); delay1(10); write_comand(0xc0+9); write_date(':'); delay1(10); shifenmiao(10,miao); shifenmiao(7,fen); shifenmiao(4,shi); TMOD=0X01; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; } void keyscan() { if(k1==0) { delay1(5); if(k1==0) { k1num++; while(!k1); di(); if(k1num==1) { TR0=0; write_comand(0xc0+10); write_comand(0x0f); } //检测功能键被按次数 if(k1num==2) { TR0=0; write_comand(0xc0+7); } if(k1num==3) { TR0=0; write_comand(0xc0+4); } if(k1num==4) { k1num=0; write_comand(0x0c); TR0=1; } } } // if(k1num!=0) { if(k2==0) { delay1(5); if(k2==0) { while(!k2); di(); if(k1num==1) { miao++; if(miao==60) { miao=0; } shifenmiao(10,miao); write_comand(0xc0+10); } if(k1num==2) { fen++; if(fen==60) { fen=0; //调节时分秒 } shifenmiao(7,fen); write_comand(0xc0+7); } if(k1num==3) { shi++; if(shi==24) { shi=0; } shifenmiao(4,shi); write_comand(0xc0+4); } } //数值增大键 if(k3==0) { delay1(5); if(k3==0) { while(!k3); di(); if(k1num==1) { miao--; if(miao==(-1)) {miao=59;} shifenmiao(10,miao); write_comand(0xc0+10); } if(k1num==2) { fen--; if(fen==(-1)) {fen=59;} shifenmiao(7,fen); write_comand(0xc0+7); } if(k1num==3) { shi--; if(shi==(-1)) {shi=23;} shifenmiao(4,shi); write_comand(0xc0+4); } } } } } } void t0_time() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++; if(count==20) { count=0; miao++; if(miao==60) { fen++; miao=0; if(fen==60) { shi++; fen=0; if(shi==24) { shi=0; } shifenmiao(4,shi); } shifenmiao(7,fen); } shifenmiao(10,miao); } } |
|
相关推荐
2个回答
|
|
if(k3==0) 被嵌套在 if(k2==0)里了,要注意大括号的配对位置
最佳答案
|
|
|
|
k1为功能键,k2为数值增大键,k3为数值减小键,现在是k3不能用
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
524 浏览 0 评论
【每周推荐】采用11代Intel CPU,基于youyeetoo X1开发板搭建少儿AI智能STEAM积木平台
851 浏览 0 评论
2507 浏览 2 评论
【youyeetoo X1 windows 开发板体验】+ 影音处理和AI模型移植
2266 浏览 5 评论
I.MX6ULL-飞凌 ElfBoard ELF1板卡- 移植zbar的方法
1708 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
5776 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-4-24 18:53 , Processed in 0.374363 second(s), Total 38, Slave 32 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号