单片机课程设计---数字钟设计
- 格式:doc
- 大小:516.00 KB
- 文档页数:22
#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar code Dis_code[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//共阴极数码管编码sbit P10=P1^0;sbit P11=P1^1;sbit P12=P1^2;sbit P13=P1^3;uchar cnt,seccnt,mincnt,hourcnt,daycnt,moncnt,yearcnt;ucharseccnt1,seccnt10,mincnt1,mincnt2,hourcnt1,hourcnt10,daycnt1,daycnt10,moncnt1,moncnt10,ye ar1,year10;void delay(unsigned char i) //延时子程序{unsigned char j;while((i--)!=0){for(j=625;j>0;j--);}}void Display(time0,time1,time2,time3){P2=0x07;P0=Dis_code[time0];delay(1);P2=0x0b;P0=Dis_code[time1];delay(1);P2=0x0d;P0=Dis_code[time2]|0x80;delay(1);P2=0x0e;P0=Dis_code[time3];delay(1);}void main(){ucharseccnt1,seccnt10,mincnt1,mincnt10,hourcnt1,hourcnt10,daycnt1,daycnt10,moncnt1,moncnt10,y earcnt1,yearcnt10;uchar m=0,flag;yearcnt=11;moncnt=10;daycnt=12;TMOD=0X01;TH1=0X3C;TL1=0XAE;//定时器设置初值15535,定时50msTR1=1;EA=1;ET1=1;P10=0;while(1){if(cnt==20){cnt=0;seccnt++;if(seccnt==60){ seccnt=0;mincnt++;if(mincnt==60){mincnt=0;hourcnt++;if(hourcnt==24){hourcnt=0;daycnt++;if(daycnt==31){daycnt=1;moncnt++;if(moncnt==13){moncnt=1;yearcnt++;if(yearcnt==100){yearcnt=0;}}}}}}}if(P11==0)//翻页按钮{ //flag=0;delay(100);if(P11==0){m++;//页码控制if(m>2){m=0;}}}while(P11==0);if(P12==0)//调节时间的按钮{delay(100);if(P12==0){ TR1=~TR1;//按下一次停止计时,再按一次开始计时}}while(P12==0);if(TR1==0)//如果计时停止,开始校正时间{if(P13==0){delay(100);if(P13==0){flag++;}}while(P13==0);}else flag=0;switch(m){case 0:if(flag>0){flag--;mincnt++;mincnt=mincnt%60;}seccnt1=seccnt%10;seccnt10=seccnt/10;mincnt1=mincnt%10;mincnt10=mincnt/10;Display(seccnt1,seccnt10,mincnt1,mincnt10);break;case 1:if(flag>0){flag--; hourcnt++; daycnt=(daycnt|(hourcnt/24))%30; hourcnt=hourcnt%24;}// hourcnt=(hourcnt|flag)%24;hourcnt1=hourcnt%10;hourcnt10=hourcnt/10;daycnt1=daycnt%10;daycnt10=daycnt/10;Display(hourcnt1,hourcnt10,daycnt1,daycnt10);break;case 2:if(flag>0){flag--; moncnt++; moncnt=moncnt%13;if(moncnt==0){moncnt++;yearcnt++;}}moncnt1=moncnt%10;moncnt10=moncnt/10;yearcnt1=yearcnt%10;yearcnt10=yearcnt/10;Display(moncnt1,moncnt10,yearcnt1,yearcnt10);break;}}}void Time1() interrupt 3{TH1=0X3C;TL1=0XAE;cnt++;}。
单片机MCS-51数钟课程设计系别:专业:班级:姓名及学号:日期:目录单片机MCS-51数钟 (1)课程设计 (1)一、课程设计的目的 (3)二、课程设计任务 (3)三、硬件结构概述 (4)(一)复位电路 (4)(二)晶振电路 (4)(三)按键电路 (4)(四)显示部分 (5)四、软件结构概述 (5)(一)代码说明 (5)(二)按键处理思路 (10)(三)秒表设计思路 (11)五、调试过程 (12)(一)系统仿真 (12)(二)仿真过程中出现的问题及解决方案 (12)六、心得体会 (13)七、参考文献 (14)一、课程设计的目的(1)巩固、加深和扩大单片机应用的知识面, 提高综合及灵活运用所学知识解决工业控制的能力;二、(2)培养针对课题需要, 选择和查阅有关手册、图表及文献资料的自学能力, 提高组成系统、编程、调试的动手能力;三、(3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程, 软硬件设计的方法、内容及步骤。
四、课程设计任务(1)在ZY15MCU12BD型综合单片机实验箱的硬件结构上编写软件完成设计。
也可以在其它MCS—51单片机硬件板上完成, 或自行设计硬件并制做完成。
(2)程序的首地址应使目标机可以直接运行, 即从0000H开始。
在主程序的开始部分必须设置一个合适的栈底。
程序放置的地址须连续且靠前, 不要在中间留下大量的空闲地址, 以使目标机可以使用较少的硬件资源。
(3)6位LED数码管从左到右分别显示时、分、秒(各占用2位), 采用24小时标准计时制。
开始计时时为000000, 到235959后又变成000000。
(4)在键盘上选定3个键分别作为小时、分、秒的调校键。
每按一次键, 对应的显示值便加1。
分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。
在调校时均不向上一单位进位 (例如分加到59后变为00, 但小时不发生改变)。
(5) 软件设计必须使用MCS-51片内定时器, 采用定时中断结构, 不得使用软件延时法。
51单片机数字钟设计是一种常用的电子设计,它使用51单片机作为控制核心,通过数码管显示时间。
以下是一个简单的51单片机数字钟设计步骤:
1. 硬件设计
首先,需要选择一个合适的51单片机型号,如AT89C51、AT89S52等。
然后,需要选择数码管显示模块,可以选择多个数码管显示小时、分钟和秒。
同时,还需要选择适当的电源模块为数码管和单片机提供电源。
2. 软件设计
在软件设计方面,需要编写程序来控制数码管的显示,并实现时间的计数和更新。
可以使用定时器中断来实现时间的计数和更新。
同时,还需要编写程序来读取按键输入,以便用户可以调整时间。
3. 调试
在完成硬件和软件设计后,需要进行调试。
首先,需要检查硬件连接是否正确,然后通过调试程序来检查数码管的显示是否正确,以及时间计数和更新是否正常。
以上是一个简单的51单片机数字钟设计步骤,实际的设计可能需要根据具体需求进行修改和调整。
单片机数字时钟课程设计一、课程目标单片机数字时钟课程设计旨在让八年级学生在巩固已学电子技术知识的基础上,通过实践操作,实现以下目标:1. 知识目标:(1)理解单片机的基本原理,掌握其编程方法;(2)掌握数字时钟的构成和工作原理;(3)学会使用相关电子元件,如LED显示屏、时钟芯片等。
2. 技能目标:(1)能够运用C语言进行单片机编程,实现数字时钟的基本功能;(2)通过动手实践,提高电路搭建和调试能力;(3)培养团队协作和问题解决能力。
3. 情感态度价值观目标:(1)激发学生对电子技术的兴趣,培养创新精神和动手实践能力;(2)养成严谨的学习态度,提高自主学习能力;(3)培养学生关爱环境、珍惜资源的意识,强化责任感。
本课程针对八年级学生的认知特点,注重理论与实践相结合,以学生为主体,教师为主导。
通过本课程的学习,学生能够将所学知识应用于实际项目中,提高综合运用能力,培养科学精神和创新意识。
课程目标分解为具体学习成果,便于后续教学设计和评估。
二、教学内容依据课程目标,教学内容围绕单片机数字时钟设计与实现展开,包括以下部分:1. 理论知识:(1)单片机原理及编程基础,参考教材第3章;(2)数字时钟工作原理及电路设计,参考教材第5章;(3)C语言编程及应用,参考教材第4章。
2. 实践操作:(1)数字时钟电路搭建,使用LED显示屏、时钟芯片等元件;(2)单片机编程,编写控制程序,实现时钟显示、校时等功能;(3)调试与优化,对搭建的数字时钟进行调试,确保其稳定运行。
3. 教学大纲:第1周:回顾单片机原理及编程基础,学习数字时钟工作原理;第2周:学习C语言编程,编写简单的数字时钟程序;第3周:设计数字时钟电路,进行电路搭建;第4周:编程实现数字时钟功能,进行调试与优化。
教学内容注重科学性和系统性,结合教材章节内容,以实践操作为主,使学生能够将理论知识与实际应用紧密结合,提高综合运用能力。
同时,教学进度安排合理,确保学生在规定时间内完成课程学习。
单片机数字时钟课程设计一、课程目标知识目标:1. 让学生理解单片机的基本原理和编程方法,掌握数字时钟的设计与实现过程。
2. 使学生掌握数字时钟的显示原理,包括时、分、秒的显示和调整方法。
3. 让学生了解单片机与其他硬件设备(如LED显示屏、按键等)的接口技术。
技能目标:1. 培养学生运用单片机编程实现数字时钟功能的能力。
2. 培养学生运用所学知识解决实际问题的能力,如调试程序、排查故障等。
3. 提高学生的动手实践能力,能够独立完成数字时钟的搭建和调试。
情感态度价值观目标:1. 培养学生对单片机及电子制作的兴趣,激发学生的创新意识和探索精神。
2. 培养学生团队协作精神,学会在合作中解决问题,共同完成任务。
3. 培养学生严谨的学习态度和良好的学习习惯,注重实践与理论相结合。
分析课程性质、学生特点和教学要求:1. 课程性质:本课程为单片机应用实践课程,注重理论联系实际,培养学生的动手能力和创新能力。
2. 学生特点:学生已具备一定的单片机基础知识,有一定的编程基础,但实践能力有待提高。
3. 教学要求:以学生为主体,教师为主导,采用项目式教学,引导学生主动探究和解决问题。
二、教学内容1. 理论知识:- 单片机原理及编程基础回顾;- 数字时钟的原理与设计思路;- 单片机与其他硬件设备的接口技术。
2. 实践操作:- 数字时钟的硬件搭建,包括LED显示屏、按键等;- 单片机程序编写,实现时、分、秒的显示与调整;- 程序调试与故障排查。
3. 教学大纲:- 第一阶段(1课时):单片机原理及编程基础回顾;- 第二阶段(2课时):数字时钟原理学习,设计思路讲解;- 第三阶段(2课时):硬件搭建与程序编写;- 第四阶段(1课时):程序调试与故障排查;- 第五阶段(1课时):成果展示与总结。
4. 教材关联:- 教材第3章:单片机原理及编程基础;- 教材第4章:数字时钟设计与实现;- 教材第5章:单片机与其他硬件设备接口技术。
单片机课程设计报告---单片机的电子钟设计单片机课程设计报告---单片机的电子钟设计一、设计简介本课程设计是以单片机为核心,设计一个具有显示时间和闹钟功能的电子钟。
电子钟是人们日常生活中必备的计时工具,其精度和稳定性直接影响到人们的时间安排和生活质量。
因此,本设计的目的是通过学习和实践,掌握单片机的应用和电子钟的设计方法,提高我们的实践能力和理论知识水平。
二、硬件设计1.单片机选择本设计选用AT89C51单片机作为主控制器。
AT89C51是一种低功耗、高性能的8位单片机,具有丰富的I/O口和片内资源,适合用于各种嵌入式系统开发。
2.显示模块显示模块采用LED数码管,用于显示时间、日期和闹钟状态。
为了方便调试和编程,我们选用4位一体式数码管。
3.按键模块按键模块包括功能键和调整键,用于设置时间、日期和闹钟。
我们选用4个独立式按键,分别实现上调、下调、设置和闹钟功能。
4.蜂鸣器模块蜂鸣器模块用于发出闹钟声音。
我们选用一款常见的无源蜂鸣器,通过单片机的一个IO口控制其频率,实现声音提示功能。
三、软件设计1.时钟芯片驱动本设计选用DS1302时钟芯片,用于提供实时时间和日期的信息。
DS1302与单片机通过I2C协议进行通信,需要编写相应的驱动程序。
驱动程序包括时钟芯片的初始化、数据读写和中断处理等。
2.显示驱动显示驱动程序负责控制数码管的显示。
驱动程序包括延时函数、位选函数和段选函数等。
通过调用这些函数,我们可以实现时间、日期和闹钟状态的动态显示。
3.按键驱动按键驱动程序负责识别用户的按键操作。
驱动程序通过检测独立式按键的状态变化,识别出不同的按键操作,并执行相应的功能。
例如,当用户按下上调键时,驱动程序将调用时钟芯片的读秒函数,并将时间的小时数加1。
4.蜂鸣器驱动蜂鸣器驱动程序负责控制蜂鸣器的声音频率。
驱动程序通过设置单片机的定时器寄存器,产生一定频率的方波信号,驱动蜂鸣器发声。
为了实现不同的声音效果,我们可以通过改变方波信号的频率和持续时间来实现。
基于单⽚机的数字电⼦钟设计(含完整程序+PCB图)--课程设计基于单⽚机的数字电⼦钟设计(含完整程序+PCB图)--课程设计1 课题设计任务、功能要求及总体⽅案1.1 课题设计任务本课程设计选题⽬为:数字电⼦钟。
设计⼀个具有特定功能的电⼦钟。
1.2 功能要求设计的数字电⼦钟上电或按键复位后能⾃动显⽰系统提⽰符“P.”,进⼊时钟准备状态;第⼀次按数字电⼦钟启动/调整键,数字电⼦钟从0时0分0秒开始运⾏,进⼊时钟运⾏状态;再次按数字电⼦钟启动/调整键,则数字电⼦钟进⼊时钟调整状态,并且时间停⽌不动,此时可分别利⽤各调整键调整时、分、秒,调整结束后可按启动/调整键再次进⼊时钟运⾏状态。
1.3 设计总体⽅案介绍及⼯作原理说明本课程设计采⽤AT89S52单⽚机设计⼀个数字电⼦钟,通过两个4位LED数码管显⽰时、分、秒,并设有9个按键。
其中⼀个⽤于单⽚机的复位;⼀个为启动/调整键;两个分别为加,减键;其他键本课题暂不⽤。
电路分为5部分,分别为复位电路、键盘电路、时钟电路、显⽰电路和控制电路。
复位电路采⽤按键复位⽅式。
键盘电路采⽤独⽴式键盘。
时钟电路⽤12MHz的晶振产⽣时钟信号。
显⽰电路采⽤8个三极管驱动两个4位LED显⽰。
控制电路采⽤8位的AT89S52单⽚机作为CPU;原理是:时钟⽤T0为时钟秒加1中断,时间常数位50MS,每20次加1S,T0⽤为时间加1中断,时间常数为50MS,中断20次时间加1。
其设计框图如图1.1所⽰:复位电路AT89S52 显⽰时钟电路键盘电路下载电路图1.1 设计⽅案框图42 数字电⼦钟硬件系统的设计2.1 硬件系统各模块功能简要介绍2.1.1 复位电路复位是单⽚机的硬件初始化操作。
经复位操作后,单⽚机系统才能开始正常⼯作。
单⽚机上有复位引脚RST,⽤于外接复位电路,这⾥复位电路采⽤按键电平复位。
2.1.2 时钟电路单⽚机⼯作所需的同步时钟信号由以下两种⽅法获得:由单⽚机⽚内时钟电路结合外部晶振、电容产⽣和直接从单⽚机外部引⼊脉冲信号。
单片机数字钟设计总结第一篇:单片机数字钟设计总结单片机数字钟设计总结经过一周的课程设计,我收获颇多,有深刻的心得体会。
实训让我们受益匪浅。
首先是关于单片机方面的。
我们学到了许多关于单片机系统开发的知识,从最开始选题到最后的结题,更使我们得到了充分的锻炼。
其次,它让我体会到了什么才是teamwork spirit。
一如:团队管理的经验、团队意识的提升和协调能力等等,这些都会让我们终身受益。
通过此次课程设计,使我更加扎实的掌握了有关电子线路单片机方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查我终于找出了问题所在,也暴露出了前期我在这方面的知识欠缺和经验不足。
实践才能出真知,实践才是检验真理的唯一标准,唯有通过亲自动手制作,才能令我们掌握的知识不再是一些纸上谈兵的东西。
在这次的课程设计中,我们遇到了很多困难,过程很艰难,但是我们都克服了,这是对我们自己的肯定。
我们不断发现错误,不断改正,不断领悟,不断获取。
我们也曾灰心,也曾茫然,也曾不知所措,从一开始的自信满满,到最后的紧张繁杂,所有的这些都令我们回味无穷,这已经成为了我们人生的一个宝藏。
我想今后的学习和工作也是这样的,汗水见证着成功,我想十年过后,但我们都已经走入了社会,在某个阳光明媚的夏日,午后醒来,突然想起大学经历的时候,最先映入脑海里的就是这门课程吧,就是这些为了一个共同的目标,相互合作,共同奋斗的日子吧。
不可否认,单片机是一门比较难的专业学科。
但是经过这一学期的学习,我们觉得单片机这门课很好,让我们在设计中掌握课程,具有很强的实用性。
在社会上,单片机也应用极其广泛。
通过这次课程设计,我掌握了常用元件的识别和测试;熟悉了常用仪器、仪表;了解了电路的连线方法;以及如何提高电路的性能等等。
我相信在接下来的日子里,我会更深刻地去研究它,发掘它。
在这次的实训里,我觉得过得很充实。
实训,不仅培养了我们独立思考、动手操作的能力,在各种其它能力上也都有了提高。
单片机课程设计报告-数字钟的设计物理机电学院课程设计报告课程名称:单片机原理专业班级:10电本(2)班学生姓名:王树泉学号:2010041629指导教师:王清辉完成时间:2013.04.07报告成绩:单片机课程设计报告目录一、设计任务与要求 ................................................................................................. - 1 -1.1 设计任务 ................................................................................................. - 1 -1.2 数字时钟的设计..................................................................................... - 1 -二、方案设计与论证 ................................................................................................. - 2 -方案一: ........................................................................................................ - 2 - 方案二: ........................................................................................................ - 2 -三、硬件电路设计 ..................................................................................................... - 4 -3.1最小系统部分。
1 设计概述1.1 设计课题任务设计一个具有特定功能的电子钟。
具有时间显示功能。
并有时间设定,时间调整功能。
1.2 功能要求说明设计一个具有特定功能的电子钟。
该电子钟上电或按键复位后能自动显示系统提示符“P.”,进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,则电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/调整键再次进入时钟运行状态。
2 系统的组成及工作原理2.1 系统的组成数字钟实际上是一个对标准频率(1Hz)进行计数的计数电路。
由于计数的起始时间不可能与标准时间一致,故需要在电路上加一个校时电路,同时标准的1Hz 时间信号必须做到准确稳定。
通常使用石英晶体振荡器电路构成数字电子钟。
(1)晶体振荡器晶体振荡器给数字提供一个频率稳定准确的12MHz的方波信号,可保证数字电子钟的走时准确及稳定。
不管是指针式的电子钟还是数字数字显示的电子钟都使用了晶体振荡器。
(2)复位电路时间计数电路由秒个位和秒十位计数器,分个位和分十位计数器,时个位和时十位计数器构成。
秒个位和秒十位计数器,分个位和分十位计数器为60进制计数器,时个位和时十位计数器为24进制计数器。
(3)数码管数码管通常有发光二极管(LED)数码管和液晶(LCD)数码管,本设计提供的为LED数码管。
(4)键盘键盘是控制和修改时钟的重要输入模块,通过键盘可以修改时间。
(5)控制部分AT89S52提供以下标准功能:8K字节Flash闪速存储器,256字节内部RAM,32I/0口线,看门狗(WDT),两个数据指针,三个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
2.2 系统的工作原理(1):输入/输出口线P0.0-P0.7 P0口8位双向口线P1.0-P1.7 P1口8位双向口线P2.0-P2.7 P2口8位双向口线P3.0-P3.7 P3口8位双向口线(2):地址锁存控制信号ALE在系统扩展时,ALE用于控制把P0口输出地低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。
第 1 页 共 22 页 微型计算机技术 题目名称:多功能数字钟 专业 自动化 班级 10级2班 姓名 苑 红 学号 201028168 学校:青岛理工大学自动化学院 指导教师:史贺男
2012年12月25日 第 2 页 共 22 页
课程设计任务书 课程名称:微型计算机技术
设计题目:多功能数字钟
系统硬件要求: 1、配置单片机的外部程序ROM空间,容量为16K(使用27128芯片)。 2、使用51单片机内部时钟信号为系统提供计时信号。 3、配置LED数码管或液晶显示器显示时间,设置4位操作按键。
系统功能要求: 1、在LED数码显示器或液晶显示器上显示:时:分:秒。 2、按键功能自定义,实现按键调整时间功能。 3、具有闹钟功能(选做)。 4、具有秒表功能(选做)。
其他要求:
1、每位同学独立完成本设计。 2、依据题目要求,提出系统设计方案。 3、设计系统电路原理图。 5、调试系统硬件电路、功能程序。 6、编制课程设计报告书并装订成册,报告书内容(按顺序) (1)报告书封面 (2)课程设计任务书 (3)系统设计方案的提出、分析 (4)系统中典型电路的分析 (5)系统软件结构框图 (6)系统电路原理图 (7)源程序 (8)课设字数不少于2000字
成绩
评语 第 3 页 共 22 页
前言 :目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。 数字钟以成为人们日常生活中数字电子钟一般由振荡器,分频器,译码器,显示器等部分组成。数字钟的应用非常广泛,应用于人家庭以及车站。码头。剧场,办公室等公共场所,给人们的生活,学习,工作,娱乐带来极大的方便,由于数字集成电路技术的发展和采用了先进的石英技术,使数字钟具有走时准确,性能稳定,携带方便等特点,它还用于计时,自动报时及自动控制等各个领域。 尽管目前市场上以有现成数字钟集成电路芯片出售,价格便宜这些都是数字电路中最基本的,应用最广的电路。数字电子钟的基本逻辑功能框图如下:它是一个将“时”,“分”,“秒”显示于人的视觉器官的计时装置。
这次的课程设计主要是采用51单片机内部时钟信号为系统提供计时信号,可以通过按键修改时间,使其在给定的时间上进行刷新,最后在数码管上显示时间,通过初值直接给数码管初始化这次主要是对时分秒的编程。还带有闹钟功能设置好时间在时间到时蜂鸣器发出声音。
1、系统方案与论证 1.1 方案设计 主要利用AT89C51单片机外接8155扩展单片机IO口,B口、C口控制数码管的位显示, A口控制数码管的段显示,P1口与按键和蜂鸣器相接用于时间的校正和声音提醒,使用27128芯片配置单片机的外部程序容量为16K的 ROM空间。本设计采用一节1.5V干电池为整个系统供电,在设计中引入一个升压电路(从1.5V升 第 4 页 共 22 页
至5V),产生+5V电压用于给CPU及显示电路提供工作电压,这是数字时钟正常工作时的总电压。 显示电路将“时”、“分”、“秒”计数器的输出,通过六个八段LED显示器显示出来。校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时”、“分”、“秒”显示数字进行校对调整
51单片机处理
锁存器271282-4译码器
LED数码管时间显示
键盘时间设定与选择
系统初始化
8155 图1 系统结构图 1.2主要模块方案选择比较与论证 1.2.1单片机的选取 选用AT89C51作为控制器,价格低,性价比高,多个定时器和其他外围功能丰富。而且运行速度快工作稳定。 1.2.2模式转换的选择: 键盘按键选择模式,方便易于控制。 1.2.3输入方案的选择 通过独立键盘输入数据,通过数据的加减来确定数据,功能齐全且直接输入方便快捷。 1.2.4显示方案的选择 方案一:使用功能更好的液晶显示,增加显示信息的可读性,看起来更方便。而12864点阵液晶模块有明显的优点:微功耗,尺寸小,超薄轻巧,字迹美观,视觉舒适,显示信息量大,大部分功能用不到,造成浪费。 第 5 页 共 22 页
方案二:时间显示可以用数码管,显示信息少,容易控制。经比较,故选用方案二进行设计。
2、系统硬件模块 2.1 AT89C51单片机 AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器, AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
2.2复位电路 一般情况下单片机的复位电路有两种,即上电复位和手动复位电路。如图所示为手动复位电路。 第 6 页 共 22 页
图2复位电路 2.3晶振电路
图3 晶振电路 2.4按键调整电路
图4 按键调整电路 第 7 页 共 22 页
本系统采用四位按键 S4为功能选择键,S3为时分秒选择键,S2、S1为数字加减键。
2.5蜂鸣器电路 由于51单片机管脚功率限制问题,本系统蜂鸣器电路采用一个NPN晶体管驱动,功率大,安全稳定。
图5蜂鸣器电路 2.6 74LS373芯片电路与管脚图 第 8 页 共 22 页
图6 74LS373管脚电路图
373为三态输出的八 D 透明锁存器,共有 54S373 和 74LS373 两种线路 373 的输出端 O0~O7 可直接与总线相连。 当三态允许控制端 OE 为低电平时,O0~O7 为正常逻辑状态,可用来驱动负载或总线。当 OE 为高电平时,O0~O7 呈高阻态,即不驱动总线,也不为总线的负载,但锁存器内部的逻辑操作不受影响。 当锁存允许端 LE 为高电平时,O 随数据 D 而变。当 LE 为低电平时,O 被锁存在已建立的数据电平。当 LE 端施密特触发器的输入滞后作用,使交流和直流噪声抗扰度被改善 400mV。 引出端符号: D0~D7 数据输入端 OE 三态允许控制端(低电平有效) LE 锁存允许端 O0~O7 输出端 2.7 27128电路与管脚图 第 9 页 共 22 页
图7 27128管脚电路图 27128使用了一片用与扩展外部ROM 27128管脚说明 A0到A13为14条地址信号输入线,说明芯片容量为2的14次方,即16K D0到D7为数据线,表示芯片的每个存储单元存放一个字节(8位二进制数)。对芯片读数时,作为输出线,对芯片编程时,作为输入线。 CE为输入信号,低电平有效。(有称作片选信号) OE为输出允许信号,低电平有效 PGM为编程脉冲输入端,当对芯片编程时,由此端加入编程脉冲信号;读取数据时PMG的值为1 Vcc和Vpp都是接电源的,正常工作时是+5V
2.8外部并行口扩展8155电路图 第 10 页 共 22 页
图8 8155管脚电路图
2、8155的地址编码及工作方式 8155各引脚功能说明如下: RST:复位信号输入端,高电平有效。复位后,3个I/O口均为输入方式。 AD0~AD7:三态的地址/数据总线。与单片机的低8位地址/数据总线(P0口)相连。单片机与8155之间的地址、数据、命令与状态信息都是通过这个总线口传送的。 RD:读选通信号,控制对8155的读操作,低电平有效。 第 11 页 共 22 页
WR:写选通信号,控制对8155的写操作,低电平有效。 CE:片选信号线,低电平有效。 IO/M :8155的RAM存储器或I/O口选择线。当IO/M =0时,则选择8155的片内RAM,AD0~AD7上地址为8155中RAM单元的地址(00H~FFH);当IO/M =1时,选择 8155的I/O口,AD0~AD7上的地址为8155 I/O口的地址。 ALE:地址锁存信号。8155内部设有地址锁存器,在ALE的下降沿将单片机P0口输出的低8位地址信息及 ,IO/ 的状态都锁存到8155内部锁存器。因此,P0口输出的低8位地址信号不需外接锁存器。 PA0~PA7:8位通用I/O口,其输入、输出的流向可由程序控制。 PB0~PB7:8位通用I/O口,功能同A口。 PC0~PC5:有两个作用,既可作为通用的I/O口,也可作为PA口和PB口的控制信号线,这些可通过程序控制。 TIMER IN:定时/计数器脉冲输入端。 TIMER OUT:定时/计数器输出端。 VCC:+5V电源。 在单片机应用系统中,8155是按外部数据存储器统一编址的,为16位地址,其高8位由片选线 提供, CE=0,选中该片。 当 CE=0,IO/M =0时,选中8155片内RAM,这时8155只能作片外RAM使用,其RAM的低8位编址为00H~FFH;当 CE=0,IO/M =1时,选中8155的I/O口,其端口地址的低8位由AD7~AD0确定
2.9 六位8段LED数码管显示电路