单片机课程设计报告-单片机的电子钟设计_第1页
单片机课程设计报告-单片机的电子钟设计_第2页
单片机课程设计报告-单片机的电子钟设计_第3页
单片机课程设计报告-单片机的电子钟设计_第4页
单片机课程设计报告-单片机的电子钟设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

烟台南山学院单片机课程设计报告题目单片机的电子钟设计姓名:0.0所在学院:计算机与电气自动化学院所学专业:电气工程及其自动化班级:电气工程1003学号:202102140221指导教师:。。。完成时间:2021年9月4日目录一设计任务与要求 31.1设计目的 31.2设计指标 31.3设计要求 3二总体设计方案 42.1系统总体设计 42.2各模块的选择 42.3软件系统功能模块及功能介绍 5三单元电路分析与软件设计 63.1使用单片机资源情况 63.2电子钟软件系统程序流程图 63.3电子钟软件系统程序 8四总原理图与元器件清单 114.1电子钟总原理图 114.2元器件清单 12五仿真 12六心得体会 13七参考文献 14基于单片机的电子钟课程设计一设计任务与要求1.1设计目的本电路应用了AT89C51芯片作为译码器实现了LED动静态显示的根本原理,电路原理简单,价格低廉,可用于多位LED显示,从而提高设计能力和实践动手能力,为以后从事电子电路设计、研发电子产品打下良好的根底。1.2设计指标设计一个具有特定功能的电子钟。该电子钟上电或按键复位后能自动显示系统提示符“P.〞,进入时钟准备状态;第一次按电子钟启动/调整键,电子钟从0时0分0秒开始运行,进入时钟运行状态;再次按电子钟启动/调整键,那么电子钟进入时钟调整状态,此时可利用各调整键调整时间,调整结束后可按启动/调整键再次进入时钟运行状态。1.3设计要求采用单片机内部定时器,用软件对其进行秒、分、时的计数,单片机无法产生1s的定时时间,但是可以用硬件定时和软件计数相结合的方法实现,采用中断方式,即通过中断效劳程序进行计数器溢出次数的累计,把定时器/计数器设定为62.5ms,计数溢出16次就可以得到1s,计60次为1分,60分计60次那么为1小时,然后通过数码管动态刷新显示出来,再设四个按键进行时间的调整,一个键用作启动/调整键,其余三个分别用于时、分、秒的调整。方案二不需要外部扩展芯片,电路较简单,本钱较低。二总体设计方案2.1系统总体设计1.用AT89C51单片机及接口电(1)系统硬件设计:根据任务要求,完成单片机最小系统及其扩展设计,组成功能完整的系统。(2)系统软件设计:根据数字电子计时器功能,完成控制软件的编写与调试,并对数码显示进行控制。2.2各模块的选择2.2.1主模块的选择AT89C2051单片机,带有2KBFlash可编程、可擦除只读存储器〔E2PROM〕的低压、高性能8位CMOS微型计算机。拥有15条可编程I/O引脚,2个16位定时器/计数器,6个中断源,可编程串行UART通道,并能直接驱动LED输出。为了完成时钟设计,应用AT89C2051单片机完全可以实现。2.2.2时钟芯片的选择DS12887与DS1216芯片都有内嵌式锂电池作为备用电池;X1203引脚少,没有嵌入式锂电池,跟DS1302芯片功能相似,只是相比拟之下,X1203与STC89C52搭配使用时占用I/O口较多。DS1643为带有全功能实时时钟的8K×8非易失性SRAM,集成了非易失性SRAM、实时时钟、晶振、电源掉电控制电路和锂电池电源,BCD码表示的年、月、日、星期、时、分、秒,带闰年补偿。同样,DS1643拥有28只管脚,硬件连接起来占用微处理器I/O口较多,不方便系统功能拓展和维护。故而从性价比和货源上考虑,本设计采用实时时钟日历芯片DS1302。2.2.3显示模块的选择本实验中要显示的信息比拟多,选择数码管显示的话需要的数码管数量将会很多,将是线路复杂,PCB布线混乱,因此选择7SE-MPX4-CA作为显示模块。单片机芯片图2.3软件系统功能模块及功能介绍〔1〕主程序:主程序的主要功能是进行定时器/计数器,显示缓冲区的初始化,显示,以及判断是否有功能键按下,判断按下的键并调相应的键功能程序。〔2〕键功能程序:键功能程序的主要功能是执行对应的功能,Menu键为启动/调整键,第一次按下那么由待机状态进入运行状态启动时钟,从00-00-00开始显示,然后按下为奇数那么暂停,进入调时状态,按下Sec键那么秒加1,按下Min键那么分加1,按下Hour键那么时加1;假设按下为偶数那么进入时钟运行状态。〔3〕中断效劳程序:中断效劳程序的主要功能是进行计时操作,程序开始先判断计数溢出是否满了16次,假设不满16次那么说明没有到达最小计时单位秒,那么中断返回;假设满16次说明已到达最小计时单位秒,那么程序断续向下执行,进行分和时的计时。〔4〕显示子程序:显示程序的主要功能是将显示缓冲区的段控码正确的显示在数码管上,采用动态显示,从右向左循环点亮每一位数码管。〔5〕键扫子程序:键扫子程序的主要功能是判断是否有键按下,是哪个键按下,并将键值保存在20H中。三单元电路分析与软件设计3.1使用单片机资源情况〔1〕时钟的时分秒在片内RAM存储地址如表3.1所示表3.1时钟存储地址名称时分秒十位78H7BH7EH个位79H7CH7FH3.2电子钟软件系统程序流程图〔1〕主程序流程框图如图3.1所示。〔2〕计时1秒子程序流程框图如图3.2所示〔3〕显示子程序流程框图如图3.3所示。图3.1主程序流程框图图3.2计时1秒子程序流程框图图3.3显示子程序流程框图3.3电子钟软件系统程序伪指令定义 SEC EQU30H MIN EQU31H HOUR EQU 32H SECGE EQU 7FH SECSHI EQU 7EH MINGE EQU 7CH MINSHI EQU 7BH HOURGE EQU79H HOURSHI EQU 78H;系统起始程序区 ORG0000HSTART:LJMPMAINORG 000BH LJMP TC0;显示子程序;入口: 77H,78H,79H,7AH,7BH,7CH,7DH,7EH,7FH,DISP:PUSH DPH PUSH DPL PUSH ACC PUSH PSWCLRRS1;改变当前存放器组为组1SETBRS0MOVR1,#78H;显示缓冲存储单元首地址MOVR2,#0FEH;从右至左显示,共阳极DISP1:MOV A,@R1 MOV DPTR,#TAB MOVC A,@A+DPTR MOV P0,A ;送段控MOV P2,R2;送位控 LCALL DL;延时2毫秒为什么这里要延时 MOV A,R2 JNB ACC.7,DISP2 ;为0转移; RL A INC R1 MOV R2,A LJMP DISP1DISP2: POP PSW;恢复当前存放器组的组号 POP ACC POP DPL POP DPH RET加1子程序SEC_: INC SEC MOV A, SEC MOV B, #10 DIV AB MOV SECSHI, A MOV SECGE, B MOV A, SEC CJNE A, #60, EXI MOV SEC, #0 MOV SECGE, #0 MOV SECSHI, #0 LJMP EXIMIN_: INC MIN MOV A, MIN MOV B, #10 DIV AB MOV MINSHI, A MOV MINGE, B MOV A, MIN CJNE A, #60, EXI MOV MIN, #0 MOV MINGE, #0 MOV MINSHI, #0 LJMP EXIHOUR_: INC HOUR MOV A, HOUR MOV B, #10 DIV AB MOV HOURSHI,A MOV HOURGE, B MOV A, HOUR CJNE A, #24, EXI MOV HOUR, #0 MOV HOURGE, #0 MOV HOURSHI,#0EXI: RET四总原理图与元器件清单4.1电子钟总原理图4.2元器件清单五仿真本次设计的数字电子钟有三种状态:待机显示“P.〞状态,时钟运行状态,时钟调整状态。待机显示“P.〞状态时钟运行状态时钟调整状态六心得体会本次的设计使我从中学到了一些很重要的东西,那就是如何从理论到实践的转化,怎样将我所学到的知识运用到我以后的工作中去。在大学的课堂的学习只是在给我们灌输专业知识,而我们应把所学的用到我们现实的生活中去

温馨提示

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

评论

0/150

提交评论