单片机课程设计89C51数字时钟_第1页
单片机课程设计89C51数字时钟_第2页
单片机课程设计89C51数字时钟_第3页
单片机课程设计89C51数字时钟_第4页
单片机课程设计89C51数字时钟_第5页
已阅读5页,还剩13页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

- 1 -单片机课程设计报告课题:基于 89C51 的数字时钟学 院: 理学院专 业: 光信息科学与技术姓 名: 丁明星学 号: 090831101指导教师: 薛 清淮海工学院2010 年 12 月 23 日- 2 -摘要单片机自 20 世纪 70 年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。而 51 单片机是各单片机中最为典型和最有代表性的一种。本实验是基于MCS51 系列单片机所设计的,可以实现键盘按键与数字动态显示并可以用音乐倒数的计数器。本设计基于单片机技术原理,以单片机芯片AT89C51 作为核心控制器,通过硬件电路的制作以及软件程序的编制,设计制作出一个计数器,包括以下功能:输出时间。- 3 -一、设计目的1、学会掌握 KeilC51 汇编语言程序的设计和调试。2、学会将所学的单片机原理的有关知识应用于实践,提高单片机应用于技术的实践操作技能,掌握单片机应用系统设计、研制的方法,培养理论联系实际的学习作风,提高动手能力、分析并解决实际问题的能力。3、使我们进一步了解掌握所学的专业知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、定时/控制、程序设计、应用开发、等基本理论知识的理解。4、通过设计、分析、调试,培养我们工程意识,激发大家对产品开发的兴趣,及培养对科技革新、开发和创新的基本能力。二、设计要求1开机时,显示 12:00:00 的时间开始计时;2P3.0/ AD0 控制”秒”的调整,每按一次加 1 秒;3P3.1/ AD0 控制”分”的调整,每按一次加 1 分;4P3.2/ AD0 控制”时”的调整,每按一次加 1 小时;5用 protues 画出原理图并仿真实现,写出源程序;6在万用板上焊接元件调试;7写出详细的实验报告。三、所需电子元器件单片机89C51. 1个- 4 -非门74LS04. 1个缓冲器74 LS373. 1个LG3611AH数码管. 6个 电阻1(1K). 8个电阻2(10K). 1个电阻3(510). 3个电容.(33pf) 2个电解电容. 1个四 设计原理及其框图1.数字钟的构成数字钟实际上是一个对标准频率(1HZ)进行计数的计数电路 .由于计数的起始时间不可能与标准时间一致,故需要在电路上加一个校时电路,同时标准的 1HZ 时间信号必须做到准确稳定. 通常使用石英晶体振荡器电路构成数字钟.晶体振荡器电路 晶体振荡器电路给数字钟提供一个频率稳定准确的 32768Hz 的方波信号, 可保证数字钟的走时准确及稳定.不管是指针式的电子钟还是数字显示的电子钟都使用了晶体振荡器电路.分频器电路 分频器电路将 32768Hz 的高频方波信号经 32768()次分频后得到 1Hz 的方波信号供秒计数器进行计数.分频器实际上也就是计数器.时间计数器电路 时间计数电路由秒个位和秒十位计数器,分个位和分十位计数器及时个位和时十位计数器电路构成, 其中秒个位和秒十位计数器,分个位和分十位计数器为 60 进制计数器 ,而根据设计要求, 时个位和时十位计数器为 24 进制计数器.- 5 -译码驱动电路 译码驱动电路将计数器输出的 8421BCD 码转换为数码管需要的逻辑状态,并且为保证数码管正常工作提供足够的工作电流.数码管 数码管通常有发光二极管(LED)数码管和液晶(LCD)数码管,本设计提供的为 LED 数码管.2.数字钟的工作原理设计原理主要利用 AT89C51 单片机,由单片机的 p2 口控制数码管的位显示,p1 口控制数码管的段显示,p3.0p3.2 与按键相接用于时间校正。整个系统工作时,秒信号产生器是整个系统的时基信号,他直接决定计时系统的精度,将标准信号送入计数器的时钟脉冲。分计数器也采用 60 进制计数器,每累计 60 分钟,发出一个“分脉冲”信号,该信号将被送到时计数器。时计数器采用 24 进制计数器,可以实现对一天 24 小时的累计。显示电路将“时” “分” “秒”计数器的输出,通过六个八段 led 显示器现出来。校时电路是直接加一个脉冲信号到时计数器或者分计数器或者秒计数器来对“时” “分” “秒”显示数字进行校对调整。五、各部分电路分析此实时时钟的设计与实现,主要采用了6只LED数码管, 89C51内部二进制16位定时器/计数器,可编程中断控制器89C51 等芯片,包括显示模块,运算模块和校时模块三大功能模块。1、显示模块:用89C51控制,用数码管的显示功能来设计。显示部分硬件用六只LED为显示管,这些LED发光二极管的阴极是互相连接在一起的,所以称为共阴极数码管。通过在这8只发光二极管的阳极加+5 V或0 V的电压使不同的二极管发光,形成不同的数字。该模块主要是将运算模- 6 -块和校时模块运算出来并存放在内存单元里的十六进制表示的时位、分位和秒位数值转化为十进制,并通过8只数码管显示出来。CPU直接往LED输出八段代码,省去了硬件译码器。P1口作为8段数据输出口,经74LS04驱动后到达各LED。只要做到每送一次段选码时也送一次位扫描码,并且每送一次位扫描码后,位码中的0右移一位作为下一次的位扫描码,即可实现由左向右使6只LED依次出现数字显示。2、运算模块:该模块的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟的内存单元里,以便显示模块即时地显示出来。该模块可以细分为秒定时模块和运算模块。秒定时模块负责提供中断信号,由于CPU运算模块中的指令消耗一定的时间,所以中断信号最好通过硬件来实现。本实验中用89C51 定时器/ 计数器,但因为 89C51供的信号的周期是毫秒级的,因此必须通过软件的方法在运算模块中设置一个统计中断次数的变量,并且这一变量必须事先在内存里开辟存储单元。中断信号是89C51 工作方式为方式1,产生一个50ms的脉冲信号。运算模块负责时、分、秒的计算,该模块主要通过89C51的IR1号中断来实现,但由于每50ms一次中断请求,所以在中断服务程序必须利用已申请内存单元35H来统计中断请求的次数,只有当35H 的值为20时,才能让秒单元内的数值加1 。在中断服务程序里,必须对秒、分和时的单元内的数值进行判断,当秒加到60时,分必须加1 、秒清零;当分加到60时,时加1、分清零。当时加到24时,直接清零。然后转到调用处。3、校时模块:该模块主要功能是修改时、分、秒内存单元的数值。每按一次键,对应的显示值便加1。分、 秒加到59 后变为00; 小时加到 23后再按键即变为00.再调校时均不向上一单位进位(例如分加到59后变为00 ;但小时不发生改变)。注意:在主程序中对时间进行调校前应关闭中断,- 7 -以防在调校过程中定时中断服务程序也对时间进行修改而造成混淆。4. 整体功能:在6块LED数码管上能实现数字时钟的时、分、秒显示,并能对时、分、秒进行加1 校对、减1校对和清零。本实验中陪。P3.0键、P3.1键、P3.2键是分别对时、分、秒的加1 校对。并且开机时时钟时从120000开始计时的,到235959 时在回到000000.六 流程图图 2 定时器中断程序流程图开始初始化( 定时器、显示区、中断系统、计数单元等) 开中断调用显示子程序调用键盘扫描子程序- 8 -有键按下? N关中断秒键? N秒加 1 处理分键? N分加 1 处理小时键? N小时加 1 处理图 1 主程序流程图定时器中断处理重送初值保护现场计数单元加 1到 1 秒? N秒加 1- 9 -秒到 60? N秒清 0、分加 1分到 60? N分清 0、小时加 1小时到 24? N小时清 0恢复现场中断返回七 仿真程序和仿真电路图SECOND EQU 30HMINITE EQU 31HHOUR EQU 32HJHOUR BIT P3.0JMINITE BIT P3.1JSECOND BIT P3.2DAT EQU 40HCISHU EQU 35HORG 0000HAJMP MAINORG 0BHAJMP SEVERORG 50HMAIN:MOV SECOND,#00HMOV MINITE,#00HMOV HOUR,#0CH- 10 -MOV CISHU,#00HLCALL DISPLAYMOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HSETB TR0SETB ET0SETB EAJB SECOND ,LOOP1LOOP1:JB MINITE,LOOP2LOOP2:SETB P0LECALL DELAYCLK P0A1:LCALL DISP

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论