单片机控制系统设计与调试实训指导说明书单片机倒计时秒表

上传人:m**** 文档编号:553436142 上传时间:2022-12-07 格式:DOC 页数:27 大小:523.03KB
返回 下载 相关 举报
单片机控制系统设计与调试实训指导说明书单片机倒计时秒表_第1页
第1页 / 共27页
单片机控制系统设计与调试实训指导说明书单片机倒计时秒表_第2页
第2页 / 共27页
单片机控制系统设计与调试实训指导说明书单片机倒计时秒表_第3页
第3页 / 共27页
单片机控制系统设计与调试实训指导说明书单片机倒计时秒表_第4页
第4页 / 共27页
单片机控制系统设计与调试实训指导说明书单片机倒计时秒表_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《单片机控制系统设计与调试实训指导说明书单片机倒计时秒表》由会员分享,可在线阅读,更多相关《单片机控制系统设计与调试实训指导说明书单片机倒计时秒表(27页珍藏版)》请在金锄头文库上搜索。

1、 单片机控制系统设计与调试实训指导说明书 单片机倒计时秒表系 、 部: 机电工程学院 学生姓名: 指导教师: 职称 专 业: 班 级: 完成时间: 摘 要本文通过倒计时秒表的设计,阐述了单片机最小系统的概念与设计,对单片机的定时、中断等功能模块的应用有进一步的理解;本文还阐述了单片机编程的一些方法。关键字:单片机、电子秒表、定时、中断目录一、 设计课题1.1课程设计题目41.2课程设计任务41.2课程涉及研究内容4二、 硬件分析设计42.1单片机的选择42.2 LED显示器5 2.2.1 LED显示器结构及分类52.2.2 LED显示原理5 2.3键盘输入6三、 关键技术63.1定时器的使用6

2、3.1.1 作用63.1.2技术方案63.1.3具体程序实现73.2 显示与键盘8 3.2.1显示8 3.2.2键盘93.2.3利用定时中断实现显示与查键11四、 电路134.1复位电路144.2电路元件144.3 I/O口线连接15五、 程序设计165.1程序功能165.2主要变量说明165.3程序流程图165.4程序源代码16六、 设计总结26七、 参考文献26一、 设计课题1.1课程设计题目 本课程设计的课题是单片机倒计时秒表的设计1.2课程设计任务本课题的电子秒表系统需要实现以下的功能:1.用开关控制两种计时模式的选择。分别是单计时模式和连续计8个的计时模式。2.用开关控制电子秒表的启

3、动/停止/复位,七段数码管的高2位显示秒表的秒值,低2位显示秒表的百分秒值。3.可实现设定初值的倒计时功能。其中设计了三种初值调整方式,分别是增1(减1)、连续增(连续减)和快速增(快速减)。上述功能主要是为了讲述单片机定时器、键盘和LED显示器的使用方法。1.3课题涉及研究内容:1.定时器的使用:本实例通过秒表的计时详细说明了定时器的使用方法,可以使读者对单片机定时器的使用有比较深刻的理解。2.键盘的使用:本实例通过秒表的启动/停止/复位、计时模式的选择,以及倒计时初值的设定,讲述了独立式键盘的设计方法和关键技术。3.LED的使用:本实例比较详细地介绍了LED的显示原理和方法,并对其编程方法

4、做了一般性的总结。二、硬件分析设计一个完整的电子秒表电路就是一个单片机的最小系统,该系统由键盘输入电路、单片机、晶振和复位电路和LED显示电路四个方面构成。下面从单片机的选型,LED显示器的选择以及按键功能的设计这几个方面来对该系统进行进一步的分析。2.1 单片机的选择 对于本实例,由于电子秒表系统在数据处理和存储方面要求不高,所以选取片内带RAM和ROM的单片机即可,而并不需要在片外扩展RAM和ROM。在本实例中,选取的是ATMEL公司的AT89S52单片机。AT89S52单片机是ATMEL公司新近推出的高档型AT89S系列单片机中的增强型产品。AT89S52具有以下标准功能: 8k字节Fl

5、ash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。2.2 LED显示器2.2.1 LED显示器的结构及分类。发光二极管芯片的适当连接的光学结构,可构成发

6、光显示器的发光段和发光点,由这些发光段或发光点可以组成数码管、符号管、米字管、矩阵管等。通常把数码管、符号管、米字管共称为笔画显示器;而把笔画显示器和矩阵管统称为字符显示器。 数码管可以按字高、颜色、结构、各发光段的连接方式等进行分类。 按照各发光段的连接方式,数码管可分为共阳极和共阴极两种。 所谓的共阳方式就是笔画显示器各段发光管的阳极是公共的,而阴极是互相隔离的。 所谓的共阴方式就是笔画显示器各段发光管的阴极是公共的,而阳极是互相隔离的。2.2.2 LED显示的原理。如图2-1所示为七段LED数码管的原理图,通过该图可以很容易看出共阳极和共阴极的七段LED的工作原理的不同点。对于共阴极的数

7、码管,所有发光二极管的阴极共连后接地,而阳极引出脚用于控制LED是否点亮。若阳极引出脚接地,则LED被熄灭;若阳极引出脚接高电平,则LED被点亮。图2-1 LED数码管原理图共阳极的LED正好相反,所有发光二极管的阳极共连后接高电平,而阳极引出脚用于控制LED是否点亮。若阴极引出脚接高电平,则LED被熄灭;若阴极引出脚接地,则LED被点亮。 因此共阳极和共阴极所需要的字型码正好相反。 单片机对LED管的显示可以分为静态和动态两种。静态显示的特点是各LED管能同时稳定地显示出各自字符;动态显示是指各LED轮流一遍一遍显示各自字符,但由于显示的切换较快,在人的视觉看来是各LED管同时显示不同字符。

8、 静态显示和动态显示各有利弊:静态显示较稳定,占用CPU的时间少,但是每个显示单元都需要单独的显示驱动电路,使用的电路硬件较多;动态显示虽然有闪烁感,战胜CPU时间多,但是使用的硬件少,能节省线路板的空间。相对而言,动态显示在单片机中的应用更加广泛。2.3键盘输入 外部指令对单片机的输入一般是通过按键、键盘等输入器来实现的,而键盘的设计以及编程方法在本例中将会重点介绍。在本例中,是利用键盘来实现秒表的启停控制及功能的选择:1.按键K1。按键K1有两个功能,第一个是在单计时状态下控制秒表的启停;第二个是在倒计时初值设定的时候用于增加初值。2.按键K2。按键K2同样有两个功能,第一个是在连续计8个

9、的计时模式下控制秒表的启停;第二个是在倒计时初值设定的时候用于减少初值。3.按键K3。按键K3的功能是设定秒表的工作方式。在默认状态下,秒表始终处于准备计时的状态,按下K3后秒表进入倒计时的状态,这时通过按键K1和K2可以进行倒计时初值的调整,再按下K3则进入倒计时。4.按键RESET.起程序复位作用。三、关键技术 单片机电子秒表设计需要解决三个主要问题:一是有关单片机定时器的使用;二是如何实现LED的动态扫描显示;三是编写倒计时秒表程序。编程可用汇编,也可使用C语言。3.1 定时器的使用3.1.1 作用电子秒表的计数频率取决于单片机的定时器,而定时器的使用也是单片机应用中的一个关键的技术。在

10、本例中,秒表的计时和倒计时的实现以及键盘的延时消抖都是由单片机中的定时器来实现的。3.1.2 技术方案 单片机中定时器的使用是一项重要的内容,也是一项基本的内容。关于定时器/计数器的基本结构与操作方式,在此不再赘述。此次设计重点主要是想通过电子秒表这一实例来说明单片机中定时器的使用。 为了实现秒表的计时,需要利用单片机实现百分之一秒(10ms)的中断,在中断程序中实现数字的变化,并动态显示出来。该程序的流程图如图3-1图3-1 流程图3.1.3具体程序实现1.定义/定义共阳极字符编码表uchar code TABLE10=0xa0,0xf9,0xc4,0xd0,0x99,0x92,0x82,0

11、xf8,0x80,0x98;uint m; /计数值uint LED0,LED1,LED2,LED3;/各位的数值uchar ms; /用于表示数码管显示位及计算是否10ms到设定定时器T0的工作方式TMOD=0x01; /T0方式1计时1msTL0=0x18;TH0=0xfc; EA=1; /开中断,启动定时器ET0=1;TR0=1;2.动态显示字符的子程序void display(void) switch(ms%4) case 0; P3=0xfe; /点亮百分一秒位的LED数码管 P1=tableLED3; /输出百分一秒位数值 P1_7=1; break; case 1; P3=0xfd; P1=tableLED2; /点亮十分之一秒位的LED数码管 P1_7=1; /输出十分之一秒位数值 break; case 2; P3=0xfb; /点亮秒位的LED数码管 P1=tableLED1; /输出秒位数值 P1_7=0; /点亮小数点位 break; case 3; P3=0xf7; /点亮十秒位的LED数码管 P1=tableLED0; /输出十秒位数值 P1_7=1; break; default

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号