当前位置: 首页 > wzjs >正文

货源之家官网宁波谷歌seo推广公司

货源之家官网,宁波谷歌seo推广公司,电商运营培训机构排名,商业网站建设案例设计要求: 基本任务: 用单片机和数码管设计可调式电子钟,采用24小时制计时方式,要求能够稳定准确计时,并能调整时间。发光二极管每秒亮灭一次。电子钟显示格式为:时、分、秒各两位,中间有分隔…

设计要求:

基本任务:

用单片机和数码管设计可调式电子钟,采用24小时制计时方式,要求能够稳定准确计时,并能调整时间。发光二极管每秒亮灭一次。电子钟显示格式为:时、分、秒各两位,中间有分隔符,格式为xx-xx-xx,共8位。采用三个按键调整时间,具体任务如下:

  1. 发光二极管每秒钟亮灭一次(亮500ms,灭500ms)。
  2. 上电自动显示初始时间 12-00-00。
  3. 实现时钟走时和显示时、分、秒。
  4. 当第一次按下第一个按键时进入时间调节状态,实现对显示时间的分钟调节,按下第二个按键时实现分钟的加1调节,按下第三个按键时实现分钟的减1调节。
  5. 当第二次按下第一个按键时进入显示时间的小时调节状态,按下第二个按键时实现小时的加1调节,按下第三个按键时实现小时的减1调节。

当第三次按下第一个按键时数字时钟恢复正常时间显示。

内容及步骤:

一、电路原理图

二、源代码(包括注释)
#include<reg51.h>
#define uChar unsigned char
#define uInt unsigned int
uChar a[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};    //单个数码管字模
uChar b[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};              //选通数码管位数
uChar second=00,minute=00,hour=12,count;                          //赋初始值
sbit one = P3^0;                                                  // 调节位
sbit two = P3^1;                                                  //加一位
sbit three = P3^2;                                                //减一位
sbit four= P3^3;                                                  //暂停位
sbit five= P1^0;                                                  //LED状态位
void Delay(unsigned int t)                            //时间延时函数
{int i,x;for(i=1;i<=x;x++);
while(t){t--;}
}
void Dispaly1(uChar second,uChar minute,uChar hour)   //数码管显示函数
{P2=b[0];              //小时的显示P0=a[hour/10];        //小时的十位显示Delay(10);P2=b[1];P0=a[hour%10];        //小时的个位显示Delay(10);P2=b[2];              //--显示P0=0x40; Delay(10);P2=b[3];              //分钟显示P0=a[minute/10];   Delay(10);P2=b[4];P0=a[minute%10]; Delay(10);P2=b[5]; P0=0x40; Delay(10);P2=b[6];             //秒钟显示P0=a[second/10];    Delay(10);P2=b[7];; P0=a[second%10]; Delay(10);
}void Keyscan1()      //调节函数
{static uChar i=0,j=0;   //定义初始值,以I,J分别实现暂停和调节功能 i是暂停位次数,j是调节标志位if(four==0)        //暂停键按下{while(!four);i++;}if(i%2==1){TR0=0;     //关中断  停止计时}if(i%2==0){TR0=1;  //开中断}if(one==0){     //当按下第一个键位while(!one);j++; }if(j%3==1)    //j+1使进入到分钟的调节{if(two==0){while(!two);minute++;if(minute==60)        //判断进位minute=0; }if(three==0){while(!three);if(minute==0)          //判断退位标志minute=60; minute--;}}if(j%3==2)  //进入到小时的调节{if(two==0){ while(!two);hour++;if(hour==24)hour=0; }if(three==0){ while(!three);hour--;if(hour==0)hour=24; }}
}void main()   //主函数
{	void delay(int);int time = 50;TMOD=0x01; 	  //TO定时方式一TH0=(65536-10000)/256;  //高位值  定义10msTL0=(65536-10000)%256;  //低位值EA=1;    //开总中断ET0=1;   //开TO中断TR0=1;   //启动TOwhile(1){static uChar h=0;five=!five;delay(time);Dispaly1(second,minute,hour);  //函数初始化Keyscan1();    //函数初始化}
}void time0_int(void) interrupt 1   //中断函数 循环进位
{TH0=(65536-10000)/256;TL0=(65536-10000)%256;count++;if(count==100)                // 一秒{count=0;second++;if(second==60)            //一分钟{second=0;minute++;if(minute==60)        //一小时{minute=0;hour++;if(hour==24)      //24小时{hour=0;}}}}
}

三、流程图

四、仿真运行结果及分析

初始值状态:

第一次按下K1并按下一次K2(分加)

第一次按下K1并按下两次K3(分减)

第二次按下K1并按下一次K2(时加)

第二次按下K1并按下两次K3(时减)

第三次按下K1(恢复正常计时)

 

http://www.dtcms.com/wzjs/8170.html

相关文章:

  • 访问网站 流程图营销网站建设软件下载
  • ui是做网站的吗东莞seo网站优化排名
  • 怎么把网站上线长沙网红打卡景点排行榜
  • 衢州企业网站建设公司广州今天新闻
  • 网站建设合同定义域名查询
  • 网络推广及网站建设合作协议seo程序
  • 郑州网站建设案例长春百度快速优化
  • 贵金属网站模板东莞seo项目优化方法
  • 软路由系统如何做网站腾讯企点官网下载
  • 各大网站的软文怎么做站长
  • 怎么做国际网站首页seo推广一年要多少钱
  • 网站建设物美价廉千万别手贱在百度上搜这些词
  • 永嘉网站制作哪家好深圳网络推广的公司
  • 葡萄牙语网站设计哪家好软文范例大全
  • 商业网站建设软件seo搜索引擎优化课程总结
  • 济宁市精神文明建设委员会网站百度推广销售员好做吗
  • 盐山做网站价格惠州优化怎么做seo
  • 网站建设与管理案例教程在线阅读账号权重查询入口
  • php编程软件中文seo零基础教学
  • 天津网站建设方案外包营销活动策划方案
  • 地方网站做相亲赢利点在哪里百度的网址是什么呢
  • 外贸网站推广服务seo网络推广员招聘
  • 成都活动策划公司百家港 seo服务
  • 做地方网站需要什么部门批准营销推广策划及渠道
  • seo网站排名优化软件酒店网络营销方式有哪些
  • wordpress中文 插件下载湖北seo服务
  • 南阳移动端网站制作网站怎么优化搜索
  • 新衡阳网站郑州厉害的seo顾问
  • 校园网网站分页党群建设百度投放广告怎么收费
  • 高端的镇江网站建设公司网站页面设计