东北大学秦皇岛分校单片机数字时钟课程设计报告.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《东北大学秦皇岛分校单片机数字时钟课程设计报告.doc》由会员分享,可在线阅读,更多相关《东北大学秦皇岛分校单片机数字时钟课程设计报告.doc(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、东北大学秦皇岛分校计算机与通信工程学院单片机课程设计 设计题目 数字钟设计专业名称电子信息工程班级学号4101403学生姓名李凯指导教师陈海宴设计时间2013.01 .012013.01.07目 录1、设计目的12、设计方案13、设计要求24.实验原理25、硬件电路设计及描述35.1位单片机简介35.2 STC89S52单片机主要功能介绍35.3复位电路55.4时钟电路55.5按键电路65.6单片机与8255连接电路图65.7 8255与数码管连接图76、电路的软件设计76.1软件程序主流程图及总体仿真图76.2时间重设流程图76.3正常时间显示流程图87程序主要模块107.1延时子程序107
2、.2中断服务子程序107.3显示子程序127.4调整程序128、程序调试及仿真128.1普通时间显示模式仿真图138.2年月日显示模式仿真图138.3闹钟显示仿真图138.4调节仿真图149、试验箱操作事物图1410.设计总结及感想1510.1操作问题1510.2设计问题1611、参考文献1712、设计时间与安排18附录一:设计原理19附录二:设计总体流程图20附录三:总体仿真图21附录四:设计源程序224101403李凯东北大学秦皇岛分校创新实验室1、设计目的1. 学习8051定时器时间计时处理、按键扫描及LED数码管显示的设计方法。2. 设计任务及要求 利用实验平台上6个LED数码管, 设
3、计带有闹铃功能的数字时钟课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、proteus仿真等方面的知识进一步加深认识,同时在软件编程、排错调试、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。2、设计方案本次设计时钟电路,使用了ATC89S52单片机芯片控制电路,单片机控制电路简单且省去了很多复杂的线路,使得电路简明易懂,使用试验箱上的开关来调整时钟的时、分、秒和年、月、日,用一LED来模拟定时和整点提醒,同时使用C语言程序来控制整个
4、时钟显示,使得编程变得更容易,这样通过四个模块:单片机定时器、中断、开关、芯片、LED灯、数码管显示(显示电路用6个共阴数码管分别显示,小时(年份)、分钟(月份)和秒(日),通过动态扫描进行显示,从而避免了译码器的使用,同时节约了I/0端口,使电路更加简单)即可满足设计要求,来设计一款单片机和简单外设控制的电子时钟。3、设计要求 1) 使用6位数码管,前两位显示小时(24小时制),中间两位显示分钟,后两位显示秒。时钟每走1秒,秒数码管加1显示,60秒后分钟数码管加1显示,60分钟后小时数码管加1显示。2)校正时间功能(即调整时间)3)添加“闹时”功能,通过点亮LED灯来模拟。4)添加“整点闹时
5、”功能。为走时准确性设计解决算法并编程实现。5)掌握使用Proteus 绘制仿真图的过程、方法和技巧。6)掌握单片机开发软件Keil的使用和调试。7)编写并调试单片机定时及其中断程序,以实现电子时钟的功能。8)设计六位八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。9)完成系统硬件电路的设计和制作。10)总结检验电路设计结果11)注:年月日初始值2012年1月1号。数码管显示120101。由于开机时钟为6:00:00,闹钟为6:00:10。开机会报时10秒。4.实验原理附录一5、硬件电路设计及描述5.1位单片机简介 1972年,美国Intel公司首先推出8位微处理器8008
6、,并于1976年9月率先推出MCS-48系列单片机。在这以后,8位单片机纷纷面市。例如,莫斯特克和仙童公司合作生产的3870系列,摩托罗拉公司生产的6801系列等。随着集成电路工艺水平的提高,一些高性能的8位单片机相继问世。例如,1978年摩托罗拉公司的MC6801系列及齐洛格公司的Z8系列,1979年NEC公司的UPD78XX系列。这类单片机的寻址能力达64KB,片内ROM容量达4-8KB,片内除带有并行IO口外,还有串行IO口,甚至还有AD转化器功能。8位单片机由于功能强,被广泛用于自动化装置、智能仪器仪表、智能接口、过程控制、通信、家用电器等各个领域。5.2 STC89S52单片机主要功
7、能介绍STC89S52单片机内部主要包括累加器ACC(有时也简称为A)、程序状态字PSW、地址指示器DPTR、只读存储器ROM、随机存取存储器RAM、寄存器、并行I/O接口P0P3、定时器/计数器、串行I/O接口以及定时控制逻辑电路等。这些部件通过内部总线联接起来,构成一个完整的微型计算机。其管脚图如图所示:VCC:电源。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程 序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出
8、原码,此时P0外部必须被拉高。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作 输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻 拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存 储器进行存取时,P2口
9、输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器 的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1
10、(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。5.3复位电路单片机的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。上电复位:上电复位电路是种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系
11、统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。5.4时钟电路时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是内部时钟方式,另一种为外部时钟方式。本文用的是内部时钟方式。电路图如下:单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反向放大器的输
12、入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成一个稳定的自激振荡器。 按键电路按键的开关状态通过一定的电路转换为高、低电平状态。按键闭合过程在相应的I/O端口形成一个负脉冲。闭合和释放过程都要经过一定的过程才能达到稳定,这一过程是处于高、低电平之间的一种不稳定状态,称为抖动。抖动持续时间的常长短与开关的机械特性有关,一般在5-10ms之间。为了避免CPU多次处理按键的一次闭合,应采用措施消除抖动。本文采用的是独立式按键,直接用I/O口线构成单个按键电路,每个按键占用一条I/O口线,每个按键的工作状态不会产生互相影响。5.5按键电路逻辑电平开关电
13、路如下图所示。实验台上有八个开关K1K8,与之相对应的K1K8个引线孔为逻辑电平输出端。开关想上拨相应插孔输出高电平“1”,向下拨相应插孔输出低电平“0”。5.6单片机与8255连接电路图单片机通过驱动驱动芯片与8255连接,用来传送片选地址信号和数据信息,以实现对8255的控制。5.7 8255与数码管连接图8255通过驱动芯片来对数码管进行显示控制。6、电路的软件设计 6.1软件程序主流程图及总体仿真图附录二、附录三6.2时间重设流程图按键处理是先检测秒按键是否按下,秒按键如果按下,秒就加1;如果没有按下,就检测分按键是否按下,分按键如果按下,分就加1;如果没有按下,就检测时按键是否按下,
14、时按键如果按下,时就加1;如果没有按下,就把时间显示出来。年月日的重设原理相同,不在重复。 6.3正常时间显示流程图定时器中断时是先检测1秒是否到,1秒如果到,秒单元就加1;如果没到,就检测1分钟是否到,1分钟如果到,分单元就加1;如果没到,就检测1小时是否到,1小时如果到,时单元就加1,如果没到,就显示时间。年月日的计时原理相同,不再重复。7程序主要模块7.1延时子程序数码管的闪烁提示,以及整点提醒等模块也用到了延时,只是延时的长短不同罢了,在此不再赘述。7.2中断服务子程序本实验中,计数器T0,T1中断都有运用,标准频率(11.0592KHz),其中T0中断为闹钟定时所用,T1中断为时钟定
15、时所用。T0和T1工作于方式1,计数器计数9216次,进入中断,计数初值为65536-9216,装满定时器需要0.001s的时间,从而1000次中断为一秒,一秒之后,判断是否到60秒,若不到则秒加一,然后返回,若到,则秒赋值为0,分加一,依次类推。包括日期显示的功能也是如此。外部中断0用来实现手动关闭闹钟,P3.2引脚外接一个开关。当闹钟响应(LED灯亮)是,闭合开关(低电平有效),可以关闭闹钟。 NO YES YES NO中断服务程序中日历的实现较为复杂,要考虑平年,闰年,因为有特殊的2月,但是数码管只有六个,不能完全显示年份,所以默认2月份有28天。其中1、3、5、7、8、10、12月是每
16、月31天。4、6、9、11月为每月30天。7.3显示子程序六个数码管轮流进行显示,分别显示1ms,依赖人的视觉暂留效应,给人以数码管持续高亮的错觉。7.4调整程序时钟包括很多调整,如时分秒,年月日等,本程序,设计了相应的调整程序段,通过对应的按键,程序跳入调整模式或功能模式。结合电路图整体思路为:1. 按1键设置模式。显示时分秒(年月日)且可调整,通过闪烁来确定设置时间的哪个位。按三次则重新计时。时分秒(年月日)调整对应键如下:3键调整对应位,按一次该位加14键调整对应位,按一次该位减12. 按2键年月日模式。时间调整对应键如下:1键设置模式,调整年或月或日3键调整对应位,按一次该位加14键调
17、整对应位,按一次该位减15. 按5键关闭闹钟。当闹钟响时,可以人为地手动关闭闹钟。8、程序调试及仿真本程序通过Keil单片机开发平台实现程序的编译,链接,生成HEX文件。程序再编译过程中可以发现错位,并及时改正,在设计时非常重要,使错误被扼杀在摇篮中。通过Keil和硬件仿真平台Proteus的联合,可以将设计效果仿真出来,根据效果,有目的的改变设计,优化程序。在具体的试验箱调试过程中,我们遇到了很多问题,如数码管位选的的问题,我们仿真时是高电平有效,但是在调试时确是低电平有效。开始放真时,我们用了P3.0、P3.1和P3.3口作为普通的I/O口,但是效果很不好,于是我们改用了P1的一些端口才打
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 东北大学 秦皇岛 分校 单片机 数字 时钟 课程设计 报告
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内