收藏 分销(赏)

基于单片机的电子数字钟仿真.docx

上传人:xrp****65 文档编号:5929870 上传时间:2024-11-23 格式:DOCX 页数:11 大小:271.77KB
下载 相关 举报
基于单片机的电子数字钟仿真.docx_第1页
第1页 / 共11页
基于单片机的电子数字钟仿真.docx_第2页
第2页 / 共11页
基于单片机的电子数字钟仿真.docx_第3页
第3页 / 共11页
基于单片机的电子数字钟仿真.docx_第4页
第4页 / 共11页
基于单片机的电子数字钟仿真.docx_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、基于单片机的电子数字钟课程设计报告专 业: 电子信息工程 班 级: 姓 名: 学 号: 指导教师: 2010年6月一、课程设计的目的本课程设计是自动化专业、电子信息技术专业学生在学完单片机原理及课程之后必修课程,它的教学目的和任务是综合利用所学单片机知识完成一个单片机应用系统设计并在实验室实现,从而加深对单片机软硬知识的理解,获得初步的应用经验,为走出校门从事单片机应用的相关工作打下基础。二、设计内容利用单片机的定时计数器,中断系统,以及阵列键盘和LED显示器进行设计。在数码管显示器上实现电子时钟,并且能进行设置时间和暂停、启动控制。用定时计数器T0,工作于定时,采用方式1,对12MHZ的系统

2、时钟进行定时计数,初值设为XXYY(自己计算)。形成定时时间为50ms。用片内RAM的7BH单元对50ms计数,计20次产生秒计数器7BH单元加1,秒计数器加到60则分计数器79H单元加1,分计数器加到60则时计数器7AH单元加1,时计数器加到24则时计数器清0。然后把秒、分、时计数器分成十位和个位放到8个数码管的显示缓冲区,通过数码管显示出来。显示格式为小时十位、小时个位-分十位、分个位-秒十位、秒个位。在处理过程中加上了按键判断程序,能对按键处理。三、设计要求1、在PROTEUS中设计硬件,在KEIL51中编写软件,在PROTEUS中运行程序仿真实现。2、写课程设计报告,给出设计思想,原理

3、,硬件电路图,给出相应程序,并写出设计过程。课程设计报告格式: 1、课程设计的目的2、课程设计具体要求3、MCS-51单片机系统简介4、MCS-51单片机内部定时器/计数器简介5、键盘和LED数码管显示器简介6、基本原理7、硬件电路8、软件程序流程及代码9、设计制作过程10、总结四、MCS-51单片机系统简介MCS-51系列单片机是美国Intel公司在1980年推出的高性能8位单片机,它包含51和52 两个子系列。-2-对于51子系列,主要有8031、8051、8751 三种机型,它们的指令系统与芯片引脚完全兼容,仅片内程序存储器有所不同,8031芯片不带ROM,8051芯片带4KROM,87

4、51芯片带4KEPROM。51子系列的主要特点为:8位CPU。片内带振荡器,频率范围1212MHZ。片内带128字节的数据存储器。片内带4K的程序存储器。程序存储器的寻址空间为64K字节。片外数据存储器的寻址空间为64K字节。128个用户位寻址空间。 21个字节特殊功能寄存器。4个8位的并行I/O接口:P0、P1、P2、P3。2个16位定时器/计数器2个优先级别的5个中断源。1个全双工的串行I/O接口,可多机通信。111条指令,含乘法指令和除法指令。片内采用单总线结构。有较强的位处理能力。采用单一+5V电源。图一、MCS-51系列单片机的内部结构五、MCS-51单片机内部定时器/计数器中断系统

5、简介定时/计数器的主要特性:1MCS-51系列中51子系列有两个16位的可编程定时/计数器:定时/计数器T0和定时/计数器T1,52子系列有三个,还有一个定时/计数器T2。2每个定时/计数器既可以对系统时钟计数实现定时,也可以对外部信号计数实现计数功能,通过编程设定来实现。-3-3每个定时/计数器都有多种工作方式,其中T0有四种工作方式;T1有三种工作方式,T2有三种工作方式。通过编程可设定工作于某种方式。4每一个定时/计数器定时计数时间到时产生溢出,使相应的溢出位置位,溢出可通过查询或中断方式处理。图二、定时/计数器T0、T1的结构及工作原理定时/计数器的工作方式:方式0是13位的定时/计数

6、方式,因而最大计数值(满值)为2的13次幂,等于8192。如计数值为N,则置入的初值X为: X=8192-N 方式1的结构与方式0结构相同,只是把13位变成16位, 16位的加法计数器被全部用上。由于是16位的定时/计数方式,因而最大计数值(满值)为2的16次幂,等于65536。如计数值为N,则置入的初值X为: X=65536-N方式2下,16位的计数器只用了8位来计数,用的是TL0(或TL1)的8位来进行计数,而TH0(或TH1)用于保存初值。当TL0(或TL1)计满时则溢出,一方面使TF0(或TF1)置位,另一方面溢出信号又会触发图6.5上的三态门,使三态门导通,TH0(或TH1)的值就自

7、动装入TL0(或TL1)。由于是8位的定时/计数方式,因而最大计数值(满值)为2的8次幂,等于256。如计数值为N,则置入的初值X为: X=256-N方式3只有定时/计数器T0才有,当M1M0两位为11时,定时/计数器T0工作于方式3。方式3下,定时/计数器T0被分为两个部分TL0和TH0,其中,TL0可作为定时/计数器使用,占用T0的全部控制位:GATE、C/T、TR0和TF0;而TH0固定只能作定时器使用,对机器周期进行计数,这时它占用定时/计数器T1的TR1位、TF1位和T1的中断资源。 -4-六、键盘简介1、键盘的工作原理键盘实际上是一组按键开关的集合,平时按键开关总是处于断开状态,当

8、按下键时它才闭合。它的结构和产生的波形如图所示。图三、键盘开关及波形示意图2、键盘抖动的消除消除按键盘抖动通常有两种方法:硬件消抖和软件消抖。图四、硬件消抖电路硬件消抖可以采用RS触发器或单稳态电路。软件消抖是利用延时来跳过抖动过程 3、键盘的结构形式键盘的结构形式一般有两种:独立式键盘与矩阵式键盘。 独立式键盘就是各按键相互独立,每个按键各接一根I/O口线,每根I/O口线上的按键都不会影响其它的I/O口线。 -5-矩阵式键盘又叫行列式键盘。用I/O口线组成行、列结构,键位设置在行列的交点上。例如44的行、列结构可组成16个键的键盘,比一个键位用一根I/O口线的独立式键盘少了一半的I/O口线。

9、 七、LED数码管显示器简介图五、LED显示器的结构LED数码管的显示方式:LED静态显示时,其公共端直接接地(共阴极)或接电源(共阳极),各段选线分别与I/O口线相连。要显示字符,直接在I/O线送相应的字段码。 LED动态显示是将所有的数码管的段选线并接在一起,用一个I/O口控制,公共端不是直接接地(共阴极)或电源(共阳极),而是通过相应的I/O口线控制。 LED显示器从译码方式上有硬件译码方式和软件译码方式。从显示方式上有静态显示方式和动态显示方式。在使用时可以把它们组合起来。在实际应用时,如果数码管个数较少,通常用硬件译码静态显示,在数码管个数较多时,则通常用软件译码动态显示。 -6-八

10、、基本原理本设计考虑到仅仅是数字钟,就用内部的定时计数器来技术,并过中断来处理。在硬件的设计上采用C51单片机作为核心部件。在按键上,只用到位选择、位加和位减,就采用独立式的键盘。显示上采用数码管的动态显示。译码采用软件译码。显示码通过P0口输出,为选择通过口输出。软件设计流程图如下:开始中断返回保护现场,重置初值启动下一个50MS50MS计数器加1秒单元加1,50ms计数器清0分单元加1,秒单元清0时单元加1,分单元清0时单元清050ms计数器=20?秒单元=60?分单元=60?时单元=24?是是是是否否否否开始显示单元清零0、T1设为16位计数模式允许T0中断调用显示子程序进入功能程序按下

11、键否?是否图六、主程序流程图 图七、定时计数器T0中断服务程序流程图-7-九、硬件电路对应元器件如下:单 片 机: 80C52按 键:BUTTON电 阻:RES电 容:CAP晶 振:CRYSTAL地: GRAND电 源:POWER LED数码管:7SEG-MPX8-CA-BLUE(CA:共阳,CC:共阴)-8-运行效果如下:十、软件程序流程及代码;采用8位LED软件译码动态显示程序;使用AT89C51单片机,12MHZ晶振,P0输出字段码,P2口输出位选码,用共阳;LED数码管,P1.0为调时位选择按键,P1.1为加1键,P1.2为减1键。;片内RAM的70H到77H单元为LED数码管的显示缓

12、冲区;78H,79H,7AH分别为秒、分、小时计数单元;7BH为50ms计数器,7CH为调时按键计数器ORG 0000HLJMP STARTORG 000BH ;定时器/计数器T0中断程序入口LJMP INTT0;主程序START:MOV R0,#70HMOV R7,#0CHINIT: MOV R0,#00HINC R0DJNZ R7,INITMOV 72H,#10MOV 75H,#10MOV TMOD,#01HMOV TL0,#0B0HMOV TH0,#03CHSETB EASETB ET0SETB TR0START1:LCALL SCANLCALL KEYSCANSJMP START1;延

13、时1MS子程序DL1MS:MOV R6,#14HDL1:MOV R7,#19HDL2:DJNZ R7,DL2DJNZ R6,DL1RET;延时20MS子程序DL20MS:ACALL SCANACALL SCANACALL SCANRET-9-;数码管显示程序SCAN:MOV A,78H ;时间存入显示缓冲区相应位置MOV B,#0AHDIV ABMOV 71H,AMOV 70H,BMOV A,79HMOV B,#0AHDIV ABMOV 74H,AMOV 73H,BMOV A,7AHMOV B,#0AHDIV ABMOV 77H,AMOV 76H,BMOV R1,#70H ;循环扫描显示MOV

14、 R5,#80HMOV R3,#08HSCAN1:MOV A,R5MOV P2,AMOV A,R1MOV DPTR,#TABMOVC A,A+DPTRMOV P0,AMOV A,R5LCALL DL1MSINC R1MOV A,R5RR AMOV R5,ADJNZ R3,SCAN1MOV P2,#00HMOV P0,#0FFHRETTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0BFH;“09”,“-”的共阳极字段码;定时器/计数器T0中断服务程序INTT0:PUSH ACCPUSH PSWCLR ET0CLR TR0MOV TL0,#

15、0B0HMOV TH0,#03CHSETB TR0INC 7BHMOV A,7BHCJNE A,#14H,OUTT0MOV 7BH,#00INC 78HMOV A,78HCJNE A,#3CH,OUTT0MOV 78H,#00INC 79HMOV A,79HCJNE A,#3CH,OUTT0MOV 79H,#00INC 7AHMOV A,7AHCJNE A,#18H,OUTT0MOV 7AH,#00OUTT0:SETB ET0pop pswpop accRETI;按键处理程序KEYSCAN:CLR EAJNB P1.0,KEYSCAN0JNB P1.1,KEYSCAN1JNB P1.2,KEY

16、SCAN2KEYOUT:SETB EARETKEYSCAN0:LCALL DL20MSJB P1.0,KEYOUTWAIT0:JNB P1.0,WAIT0INC 7CHMOV A,7CHCLR TR0CLR ET0CJNE A,#03H,KEYOUTMOV 7CH,#00SETB TR0SETB ET0SJMP KEYOUTKEYSCAN1:LCALL DL20MSJB P1.1,KEYOUTWAIT1:JNB P1.1,WAIT1MOV A,7CHCJNE A,#02H,KSCAN11INC 79HMOV A,79HCJNE A,#3CH,KEYOUTMOV 79H,#00SJMP KEYO

17、UTKSCAN11:INC 7AHMOV A,7AHCJNE A,#18H,KEYOUTMOV 7AH,#00SJMP KEYOUTKEYSCAN2:LCALL DL20MSJB P1.2,KEYOUTWAIT2:JNB P1.2,WAIT2MOV A,7CHCJNE A,#02H,KSCAN21DEC 79HMOV A,79HCJNE A,#0FFH,KEYOUTMOV 79H,#3BHSJMP KEYOUTKSCAN21:DEC 7AHMOV A,7AHCJNE A,#0FFH,KEYOUTMOV 7AH,#17HSJMP KEYOUTEND-10-十一、总结课程设计是培养学生综合运用所学

18、知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。-11-回顾起此次单片机课程设计,我仍感慨颇多。的确,从拿到课程设计题目后,从理论到实践,在接近一个星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂一些元器件的使用方法,对单片机汇编语言掌握得不好通过这次课程设计之后,一定把以前所学过的知识重新温故。-11-

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服