基于AT89C51的60秒倒计时设计
前 言
在生活和生产的各领域中,凡是有自动控制要求的地方都会有单片机的身影出现;从简单到复杂,从空中、地面到地下,凡是能想像到的地方几乎都有使用单片的需求。现在尽管单片机的应用已经很普遍了,但仍有许多可以用单片机控制而尚未实现的项目,因此,单片机的应用大有想像和拓展空间。 单片机的应用有利于产品的小型化、多功能化和智能化,有助于提高劳动效率,减轻劳动强度,提高产品质量,改善劳动环境,减少能源和材料消耗,保证安全等。 但是,单片机应用的意义绝不仅限于它的广阔范围以及所带来的经济效益上,更重要的意义还在于:单片机的应用正从根本上改变着传统的控制系统设计思想和设计方法。从前必须有模拟电路或数字电路实现的大部分功能,现在已能使用单片机通过软件(编程序)方法实现了。这种以软件取代硬件并提高系统性能的控制系统“软化”技术,称之为微控制技术。微控制技术是一种全新的概念,是对传统控制技术的一次革命。随着单片机应用的推广普及,微控制技术必将不断发展、日益完善和更加充实。
近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。 模拟多通道压力系统是利用压力传感器采集当前压力并反映在显示器上,它可以分析压力过量程,并发出报警。并采用电子秤原理可根据输入单价准确的计算出物体的金额。本篇论文讨论了简单的倒计时器的设计与制作 ,对于倒计时器中的四位LED数码显示器来说,我为了简化线路、降低成本,采用以软件为主的接口方法,即不使用专门的硬件译码器,而采用软件程序进行译码。
基于AT89C51的60秒倒计时设计
目 录
第1章 方案论证
1.1 课程设计的目的和要求??????????????????????????????????????????????1 1.2 总体设计??????????????????????????????????????????????????????????1 第2章 硬件设计?????????????????????????????????????????????????????????2 2.1 AT89S51芯片概述 ?????????????????????????????????????????????????13 2.2 LED数码管显示器概述 ?????????????????????????????????????????????15 2.3 其他元器件介绍及参数选择 ????????????????????????????????????????18 第3章 软件设计 ??????????????????????????????????????????????????????28 3.1 程序框图????????????????????????????????????????????????????????28 3.2 定时/计数器初值计算 ??????????????????????????????????????????????2 3.3 软件程序?????????????????????????????????????????????????????????? 第4章 调试与仿真
4.1 Keil软件介绍及使用???????????????????????????????????????????????30 4.2 Proteus软件介绍及使用????????????????????????????????????????????30 课程设计心得体会??????????????????????????????????????????????????? 参考文献??????????????????????????????????????????????????????????????30
基于AT89C51的60秒倒计时设计
第一章 方案论证
1.1 课程设计的目的和要求 1.目的
课程设计是单片机课程教学的最后一个环节,是对学生进行全面的系统的训练。进行课程设计可以让学生把学过的比较零碎的知识系统化,真正的能够把学过的知识落到实处,能够开发简单的系统,也进一步激发了学生再深一步学习的热情,因此课程设计是必不可少的,是非常必要的。
课程设计是提高学生单片机技术应用能力以及文字总结能力的综合训练环节,是配合单片机课程内容掌握、应用得的专门性实践类课程。通过典型实际问题的实际,训练学生的软硬件的综合设计、调试能力以及文字组织能力,建立系统设计概念,加强工程应用思维方式的训练,同时对教学内容做一定的扩充。 2.要求
单片机控制的60s倒计时
(1)用单片机AT89C51的定时器实现60s倒计时。本例中用两位数码管静态显示倒计时秒值。
(2)用PROTEUS设计,仿真基于AT89c51单片机的60s倒计时实验。 3. 目标
通过课程设计,使自己深刻理解并掌握基本概念,掌握单片机的基本应用程序设计及综合应用程序设计的方法。通过做一个综合性训练题目,达到对内容的消化、理解并提高解决问题的能力的目的。 1.2 总体设计
图1:60秒倒计时总体电路设计
基于AT89C51的60秒倒计时设计
本设计由硬件设计和软件设计两部分组成,总电路如图1所示,硬件设计主要包括单片机芯片选择,数码管选择及晶振,电容,电阻等元器件的选择及其参数的确定;软件设计主要是实现60秒倒计时程序的编写,包括利用中断实现1秒的定时及60秒的倒计时。
具体设计:通过AT89C51型号单片机,由P1和P2两组I/O引脚分别控制两个7SEG–COM –ANODE型号数码管,分十位控制和个位控制,达到显示60秒倒计时的目的。通过复位电路,在仿真过程中点击开关实现60复位。
第二章 硬件设计
2.1 AT89C51的芯片概述
AT89C51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 其工作电压在4.5-5V,一般我们选用+5V电压。外形及引脚排列如图2所示
图2:89C51的核心电路框图
? 主要特性 ·与MCS-51 兼容
基于AT89C51的60秒倒计时设计
·4K字节可编程闪烁存储器 ·寿命:1000写/擦循环 ·数据保留时间:10年 ·全静态工作:0Hz-24MHz ·三级程序存储器锁定 ·128×8位内部RAM ·32可编程I/O线 ·两个16位定时器/计数器 ·5个中断源 ·可编程串行通道 ·低功耗的闲置和掉电模式 ·片内振荡器和时钟电路
? 管脚说明
(1)电源及时钟引脚(4个) Vcc: 电源接入引脚 Vss:接地引脚
XTAL1:晶振震荡器接入的一个引脚(采用外部振荡器时,此引脚接地); XTAL2:晶体振荡器的另一个引脚(采用外部振荡器时,此引脚作为外部振荡器信号的输入端)。
(2)控制线引脚(4个)
RST/Vpd:复位信号输入引脚/备用电源输入引脚; ALE:地址锁存允许信号输出引脚/编程脉冲输入引脚: EA:内外存储器选择引脚/片外EPROM编程电压输入引脚; PSEN:外部程序存储器选通信号输出引脚。 (3)并行I/O引脚
P0.0-P0.7:一般I/O口引脚或数据/低位地址总线复用引脚; P1.0-P1.7:一般I/O口引脚;
P2.0-P2.7:一般I/O口引脚或高位地址总线引脚; P3.0-P3.7:一般I/O口引脚或第二功能引脚
? 振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 2.2 LED数码管显示器概述