完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
2个回答
|
|
#include
#include #define uint unsigned int #define uchar unsigned char #define duan P0 ***it LSA=P2^2; ***it LSB=P2^3; ***it LSC=P2^4; uint displaydate[8] = {0x3f,0x3f,0x3f,0x3f,0x3f,0x3f,0x3f,0x3f}; uchar code GPIO_DIG_CODE[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; ***it key1=P3^0; ***it key2=P3^1; ***it key3=P3^2; uchar time=0,miao=0,NUM=0; void delayms(uint xms) { uint i,j; for(i=xms;i>0;i--) for(j=110;j>0;j--); } void TimerConfiguration() { TMOD = 0x11; //打开两个中断方式1和3 TH0 = 0x3C; //设置初始值, TL0 = 0xB0; TH1=0Xf6; //打开终端1 TL1=0Xf6; ET1=1; TR1=1; //打开定时器0中断 TR0 = 1; //启动定时器0 EA = 1; //打开总中断 } void Timer0() interrupt 1 { TH0 = 0x3C; //设置初始值 TL0 = 0xB0; time++; if(time==20) { time=0; miao++; if(miao==60) miao=0; } } void display() interrupt 3 { TH1=0Xf6; TL1=0Xf6; duan=0x00; switch(NUM) { case(0): LSA=0;LSB=0;LSC=0; break;//显示第0位 case(1): LSA=1;LSB=0;LSC=0; break;//显示第1位 } duan=displaydate[NUM]; NUM++; if(NUM>1) { NUM=0; } } void main() { TimerConfiguration(); while(1) { if(key1==0) { delayms(100); if(key1==0); ET0 = 1; } if(key2==0) { delayms(100); if(key2==0) ET0 = 0; } if(key3==0) { delayms(100); if(key3==0) miao=0; } displaydate[0]=GPIO_DIG_CODE[miao/10]; displaydate[1]=GPIO_DIG_CODE[miao%10]; } } |
|
|
|
感谢你的热心帮助! |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
4607 浏览 3 评论
5890 浏览 1 评论
6164 浏览 0 评论
Protues中自己封装的芯片元件无Program File、Clock Frequency选项怎么解决,求求大神了!
7901 浏览 1 评论
基于51单片机的车辆倒车雷达报警系统,HC-SR04超声波测距,全套资料
1226 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 16:13 , Processed in 0.499065 second(s), Total 46, Slave 39 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号