倒计时秒表的设计.docx
- 文档编号:2200212
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:11
- 大小:163.20KB
倒计时秒表的设计.docx
《倒计时秒表的设计.docx》由会员分享,可在线阅读,更多相关《倒计时秒表的设计.docx(11页珍藏版)》请在冰豆网上搜索。
倒计时秒表的设计
一、引言……………………………………………………………………2
1.1秒表的概述………………………………………………………2
1.2本次设计任务………………………………………………2
1.3系统主要功能…………………………………………………2
二、设计目的………………………………………………………………3
三、设计要求………………………………………………………………3
四、总体设计………………………………………………………………3
4.1设计方案……………………………………………………………3
4.2硬件电路设计……………………………………………………4
(1)晶振电路部分………………………………………………………4
(2)总体电路构成及功能…………………………………………4
(3)系统板硬件连接…………………………………………………5
4.3软件程序设计……………………………………………………6
五、方案实施…………………………………………………………………6
5.1单片机简介……………………………………………………………7
5.2静态数码管显示……………………………………………………10
5.3软件调试及调试方法…………………………………………11
六、课程设计总结…………………………………………………………12
七、参考文献…………………………………………………………………13
八、附件(源程序)…………………………………………………………14
一、引言
单片机具有体积小,成本低,抗干扰能力强,面向控制,可以实现分机各分布式控制等优点。
本秒表/时钟设计就是利用单片机的上述优点,采用目前市场上性能价格比较高的MCS-51单片机设计而成的最小系统。
它在实际生活中具有广泛的应用。
例如:
工业生产中的定时启停自动化设备、学校中上下课铃定时控制、农村广播站每天早中晚广播的自动定时控制均可采用本仪器。
1.1秒表的概述
秒表是电器制造,电国,工业自动化控制、国防、实验室及科研单位理想的计时仪器,它广泛应用于各种继电器、电磁开关,控制器、廷时器、定时器等的时间测试。
目前所使用的电秒表大多是指针式或集成电路型的,结构相对复杂、测试功能单一。
但我们这次设计的秒表比较简单,所以使用很简单。
1.2本次设计任务
(1)开始时,显示“00”,第1次按下SP1后就开始计时。
(2)第2次按SP1后,计时停止。
(3)第3次按SP1后,计时归零。
1.3系统主要功能
99秒计时器主要是用在精确计间方面。
比如:
学校里的校运会、答题倒计时等方面。
它通过一个按键来控制它的开和停,它能及时有效的记录瞬间时间。
而且它在我们生活中运用很广泛,希望我们做的这个计时器对以上方面有所帮助。
它也许比较简单,而且有可能达不到很多人的要求,但我相信通过我们过一步的学习,我们一定会制造出更好的系统,为社会大众服务。
二、设计目的
1熟悉整个项目的流程即单片机系统设计过程
2学会使用各种仿真软件
3掌握系统的调试与安装
4提高学生的自学能力和动手能力
三、设计要求
1可以实现正常秒表的所有功能,包括启动,暂停,复位等
2可以自由设定倒计时时间
3显示方式自选
4任选一款51单片机
四、总体设计
4.1设计方案
(1)方案讨论和设计:
倒计时数字秒表的设计主要考虑以下几个问题:
一,数码管如何显示数字0—9;二,如何用单片机来控制数码管的显示;三,单片机最小模式下的设计。
处理好这些问题此设计才能完整,为此必须先了解数码管的显示原理和接线方法,再了解单片机的组成原理和控制方法。
硬件电路的绘制和软件程序的编写是此次设计的关键和基础,只有硬件电路的设计是正确的、合理的,软件设计才可以根据硬件电路编程,以下的设计才能够进行。
(2)主要任务:
软件的调试和记录
4.2硬件电路设计
(1)晶振电路部分
时钟振荡电路用于产生单片机正常工作时所需要的时钟信号,电路由两个30pF的瓷片电容和一个12MHz的晶振组成,并接入到单片机的XTAL1和XTAL2引脚处,使单片机工作于内部振荡模式。
此电路在加电后延迟大约10ms振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率决定。
电路中两个电容C4、C5的作用使电路快速起振,提高电路的运行速度。
图1晶振电路模块
(2)总体电路构成及功能
99秒计时器的原理框图如图1所示。
它由以下几个部件组成:
单片机AT89C51、两个静态数码显示、一个按钮等其它组件。
图2倒计时秒表系统原理框图
(3)系统板硬件连线
1、把“单片机系统”区域中的P0.0/AD0-P0.6/AD6端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-e端口上;要求:
P0.0/AD0对应着a,P0.1/AD1对应着b,……,P0.6/AD6对应着e。
2、把“单片机系统”区域中的P2.0/A8-P2.6/A14端口用8芯排线连接到“四路静态数码显示模块”区域中的任一个a-e端口上;要求:
P2.0/A8对应着a,P2.1/A9对应着b,……,P2.6/A14对应着e。
3、把“单片机系统“区域中的P3.7/RD用导线连接到”独立式键盘“区域中的SP1端口上;
4.3软件程序设计
本系统的软件系统主要可分为主程序、定时计数中断程序二大模块。
下面对部分模块作介绍。
系统主程序设计:
图3系统主流程图
五、方案实施
5.1单片机简介
单片机是把中央处理器(CPU),存储器和输入输出接口电路等主要微型机部件集成在一块芯片上,因此称为单片机,主要用于测控领域。
自从1976年Intel公司推出第一代8位的MCS—48系列单片机,它以体积小、控制功能全、价格低等优点为单片机的发展打下了坚实的基础。
随后单片机发生了深刻的变革,目前市面上最常用的51系列单片机也是8位的,因为其品种全、兼容性强、软硬件资料丰富的特点,因此历经几十年仍然是最常用的单片机系列。
随着技术的进步和发展,16位单片机32位单片机相继产生,其性能也有了长足的提高,但是其基本组成仍然没有改变。
设计中应用到的AT89C51是Atmel公司生产的51系列单片机中的一个典型代表
图4AT89C51引脚图
AT89C51具有如下特点:
40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
此外,AT89C51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
(1)主要特性
· 8031CPU与MCS-51兼容
·4K字节可编程FLASH存储器(寿命:
1000写/擦循环)
·全静态工作:
0Hz-24KHz
·三级程序存储器保密锁定
·128*8位内部RAM
·32条可编程I/O线
·两个16位定时器/计数器
· 6个中断源
·可编程串行通道
·低功耗的闲置和掉电模式
·片内振荡器和时钟电路
(2)管脚说明
VCC:
供电电压
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时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口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表1所示:
P3口引脚
特殊功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(定时器0外部输入)
P3.5
T1(定时器1外部输入)
P3.6
WR(外部数据存储器写选通)
P3.7
RD(外部数据存储器读先通)
表1P3口功能说明
P3口同时为闪烁编程和编程校验接收一些控制信号。
5.2静态数码管显示
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;
按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。
共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。
当某一字段的阳极为低电平时,相应字段就不亮。
静态驱动也称直流驱动。
静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。
静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:
),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。
5.3软件调试及调试方法
1)启动keiluVision,编写倒计时汇编语言程序,然后点击Project菜单——〉Newproject,新建一个工程,接着选择CPU类型,我们选择最常用的AT89C51。
2)在工程中加入文件。
新建一个文件倒计时.C保存,汇编语言文件建好后把文件加入到工程中。
3)编译工程及文件,发现错误更改后再重新编译文件,直到没有错误并且产生了xxx.hex的文件。
4)用单片机仿真软件Protues来仿真此次设计的单片机是否能够完成设计的要求。
图5仿真显示电路图
六、课程设计总结
(1)在本次课程设计中,我加深了对51系列单片机的认识,尤其是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 倒计时 秒表 设计