




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
可调时时钟单片机系统设计摘要 要求走时准确,显示直观,并能够进行时、分的设置。当需要重置时间时按下重置键,此时可通过加、减按键调整分,重置键再次按下则可调整时,第三次按下重置键时钟从新设置的时间开始计数。关键词 时钟 单片机近年来随着计算机技术在社会领域的渗透和大规模集成电路的发展,单片机的应用正不断走向深入。单片机具有体积小、功能强、应用面广能优点,目前正以前所未有的速度取代传统电子线路构成的经典系统。现在,单片机的应用领域以十分广泛。智能仪表、家用电器、工业控制、计算机网络和通信和医疗设备等无处不见单片机的影子。数字钟作为最常见的电子产品,应用也最为广泛。一、 系统功能电子钟是一种利用数字电路实现时、分、秒的计时装置。要求走时准确,显示直观,并能够进行时、分的设置。当需要重置时间时按下重置键,此时可通过加、减按键调整分,重置键再次按下则可调整时,第三次按下重置键时钟从新设置的时间开始计数。二、 系统设计1、 硬件设计所需设备:装有Keil uVision2和Medwin的计算机一台,亚龙YL-236型单片机控制功能实训考核装置一台。本程序用到得实验模块为:MCU22电源模块、MCU21单片机主机模块、MCU17单片机显示模块、MCU15单片机指令模块。电源模块:提供5V、12V和24V电源主机模块:主机采用AT89C51芯片,该芯片提供四个8位通用的并行I/O口(P0P3),四个口均为准双向口,均可通过程序定义为输入或输出口显示模块:8位数码管采用共阳极方式,并将数据口共用,分别采用CS1、CS2进行段选和位选。指令模块:提供SP2键盘接口,8只独立按键总体接线:2、 软件设计本系统软件设计主要分为主程序、显示子程序、独立按键子程序、中断子程序。通过主程序对各子程序的调用实现时钟的功能。主程序:初始化I/O口,开50HZ定时中断,进行数码管显示和按键扫描,判断按键功能并进行相应处理。如果设置键按下,时钟停止,加、减按键可对时钟进行分调整,再次按下设置键,则可进行时调整,第三次按下重置键时钟从新设置时间开始计时。主程序代码:#define SET P1_0#define ADD P1_1#define SUB P1_2#define CS1 P2_6#define CS2 P2_7#define DATA P0 /定义各端口unsigned int key2=25; /设置按键标识,有设置键按下,25表示无按键信号unsigned int WORK; /定义工作方式,WORK=0为计时、WORK=1为调整分、 /WORK=2为调整时unsigned char min,hour; /定义分钟和小时void main()TMOD=1; /设置定时器工作方式EA=1;ET0=1; /开定时中断TH0=0XB0;TL0=0X00; /设置定时时间TR0=1; /开启定时器while(1)if(key2!=25) /若无按键值则返回25,不进行处理if(key2=1) /若按下设置键,则进行工作方式选择WORK+;if(WORK=3)WORK=0;else if(key2=2) /若按下加,则时间加1if(WORK=1) /若为分调整,则分钟加1min+;if(min=60) /若到60,则分归零min=0;else if(WORK=2) /若为时调整,则小时加1hour+;if(hour=24) /若到24,则小时归零hour=0;key2=25;else if(key2=3) /若按下减,则时间减1if(WORK=1) /若为分调整,则分钟减1min-;if(min=255) /若到0,则分置59min=59;else if(WORK=2) /若为时调整,则小时加1hour-;if(hour=255) /若到24,则小时归零hour=23;key2=25;显示子程序:若要各位LED能够显示出与本位相应的显示字符,就必须采用扫描显示方式,即在某一时刻,只让某一位的位选线处于选通状态,而其它各位的位选线处于关闭状态,同时,段选线上输出相应位要显示字符的字型码,这样,同一时刻,8位LED中只有选通的那一位显示出字符,而其它7位则是熄灭的。同样,在下一时刻,只让下一位的位选线处于选通状态,而其它各位的位选线处于关闭状态,同时,在段选线上输出相应位将要显示字符的字型码,则同一时刻,只有选通位显示出相应的字符,而其它各位则是熄灭的。如此循环下去,就可以使各位显示出将要显示的字符,虽然这些字符是在不同时刻出现的,而且同一时刻,只有一位显示,其它各位都熄灭,但由于人眼有视觉暂留现象,只要每位显示间隔足够短,则可造成多位同时亮的假象,以达到显示的目的。显示程序代码:void disp ()unsigned int FBIT; /定义显示初始位置unsigned int NUM; /定义数码管显示个数unsigned char code M7G=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff,0xbf; /定义数码管显示代码unsigned char TIMER8=0,0,11,0,0,11,0,0; /定义数码管初始显示内容 FBIT=0xfe; for (NUM=0;NUM8;NUM+) DATA=M7GTIMERNUM; /取段码 CS1=0; CS2=1; WR=0; WR=1; DATA=FBIT; /取位码 CS1=1; CS2=0; WR=0; WR=1; delay(200); /消隐 DATA=0xff; CS1=1; CS2=0; WR=0; WR=1; FBIT=_crol_(FBIT,1);/显示下一位 时钟数据处理子程序:主要针对时、分、秒进行处理,当秒计数满六十后分加一、分计数满六十后时加一,并将时、分、秒分为单个数字通过数码管显示。为实现定时精确,采用定时中断方式进行计时。定时中断可在设定时间065.536ms,所以,需在进入定时中断后再通过计数组合实现1秒钟的计时。时钟数据处理程序代码:void TIMER() interrupt 1TH0=0XB0;TL0=0X00;/重置定时时间TIME_NUM+; if(TIME_NUM=50) /计数50次表示到1秒TIME_NUM=0; /计数值清零重新开始计下一秒sec+; /秒加一if(sec=60) /到六十秒秒清零分加一sec=0;min+;if(min=60) /到六十分分清零小时加一min=0;hour+;if(hour=24) /到二十四小时小时清零hour=0;TIMER0=sec%10; TIMER1=sec/10;TIMER3=min%10;TIMER4=min/10;TIMER6=hour%10;TIMER7=hour/10; /将时、分、秒个位、十位分开供数码管显示三、 设计总结本课题设计利用YL-236设备提供资源,实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 20.剪纸画教学设计-2025-2026学年小学美术五年级上册人美版(常锐伦、欧京海)
- 8.身边的设计艺术说课稿-2025-2026学年小学美术三年级上册人美版(常锐伦、欧京海)
- 幼儿安全保障知识培训总结课件
- 礼券秒杀活动方案
- 幼儿园食品安全知识培训课件
- 电站一站一品牌活动方案
- 礼服品牌营销活动方案
- 幼儿园集中就餐安全培训课件
- 社团藏宝活动方案
- 策划工会活动方案
- 2022年新兴县事业单位考试真题及答案
- 工商银行全国地区码
- DB44T 269-2005城市绿地养护质量标准
- 小学数独游戏校本课程教材
- 第三章 俄国十月社会主义革命及其影响下的欧洲革命风暴
- 完美奖金制度课件
- 大项目销售之如何测量控单力
- DB37-T 5026-2022《居住建筑节能设计标准》
- 医生岗位月度绩效考核表(KPI)
- 小学数学苏教版六年级上册《长方体和正方体整理与复习》课件(公开课)
- 深基坑开挖危险源辨识及控制措施
评论
0/150
提交评论