本科毕业设计论文--proteus仿真动态数码管时钟仿真

合集下载

毕业设计(论文)-基于单片机多功能电子时钟的设计与仿真(含程序仿真)[管理资料]

毕业设计(论文)-基于单片机多功能电子时钟的设计与仿真(含程序仿真)[管理资料]

程序仿真等全套设计,联系153893706第1章绪论二十一世纪的今天,最具代表性的计时产品就是电子万年历,它是近代世界钟表业界的第三次革命。

第一次是摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。

第二次革命是石英晶体振荡器的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。

第三次革命就是单片机数码计时技术的应用(电子万年历),使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期、温度以及其他日常附属信息的显示功能,它更符合消费者的生活需求!因此,电子万年历的出现带来了钟表计时业界跨跃性的进步……我国生产的电子万年历有很多种,总体上来说以研究多功能电子万年历为主,使万年历除了原有的显示时间,日期等基本功能外,还具有闹铃,报警等功能。

商家生产的电子万年历更从质量,价格,实用上考虑,不断的改进电子万年历的设计,使其更加的具有市场。

本设计为软件,硬件相结合的一组设计。

在软件设计过程中,应对硬件部分有相关了解,这样有助于对设计题目的更深了解,有助于软件设计。

基本的要了解一些主要器件的基本功能和作用。

除了采用集成化的时钟芯片外,还有采用MCU的方案,利用AT89系列单片微机制成万年历电路,采用软件和硬件结合的方法,控制LED数码管输出,分别用来显示年、月、日、时、分、秒,其最大特点是:硬件电路简单,安装方便易于实现,软件设计独特,可靠。

AT89C52是由ATMEL公司推出的一种小型单片机。

95年出现在中国市场。

其主要特点为采用Flash存贮器技术,降低了制造成本,其软件、硬件与MCS-51完全兼容,可以很快被中国广大用户接受。

本文介绍了基于AT89C52单片机设计的电子万年历。

选题背景及研究的目的与意义设计的目的电子钟已成为人们日常生活中必不可少的物品,广泛用于个人家庭以及车站码头、剧院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便。

基于Proteus的单片机控制电子时钟电路设计与仿真

基于Proteus的单片机控制电子时钟电路设计与仿真
从节省单片机芯片I/O口和降低能耗的角度出发,本数字电子钟数码管显示选择采用方案二。
3.3
1.电源电路
本数字电子钟设计所需电源电压为直流、电压值大小为5V的电压源。从硬件实物设计简易程度与经费方面考虑,用两节电压值为2.5V干电池与电路电压源引脚相连接即可达到硬件设计要求。即本数字电子钟设计用两节电压值大小2.55V干电池做硬件电路电压源。
由于只需要实现显示时间简单的功能,两个单片机就能很好的实现该功能。我们优先考虑单片机的成本所以选择方案一。
3.2
3
数码管是一种把多个LED显示段集成在一起的显示设备.有两种类型,一种是共阳型,一种是共阴型.共阳型就是把多个LED显示段的阳极接在一起,又称为公共端。共阴型就是把多个LED显示段的阴极接在一起,即为公共商.阳极即为二极管的正极,又称为正极,阴极即为二极管的负极,又称为负极。通常的数码管又分为8段,即8个LED显示段,这是为工程应用方便如设计的,分别为A、B、C、D、E、F、G、DP,其中DP是小数点位段。而多位数码管,除某一位的公共端会连接在一起,不同位的数码管的相同端也会连接在一起。即,所有的A段都会连在一起,其它的段也是如此,这是实际最常用的用法。数码管显示方法可分为静态显示和动态显示两种。静态显示就是数码管的8段输入及其公共端电平一直有效。动态显示的原理是,各个数码管的相同段连接在一起,共同占用8位段引管线;每位数码管的阳极连在一起组成公共端。利用人眼的视觉暂留性,依次给出各个数码管公共端加有效信号,在此同时给出该数码管加有效的数据信号,当全段扫描速度大于视觉暂留速度时,显示就会清晰显示出来。
方案二:AT89S52是一个低消耗,高性能CMOS8为单片机,片内含4kBytes ISP的可反复撰写1000次的Flash只读程序存储器。主要性能有:与MCS-51单片机产品兼容、全静态操作:0Hz~33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器、八个中断源、全双工UART串行通道、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符、易编程。

基于PROTEUS仿真的数字电子钟设计

基于PROTEUS仿真的数字电子钟设计

基于PROTEUS仿真的数字电子钟设计单片机技术是现代电子工程领域一门迅速发展的技术,它的应用已经渗透到各种嵌入式系统中。

随着计算机技术的普及,采用Proteus软件与Keil软件整合构建单片机虚拟实验平台。

可以使教师在讲述理论的同时,利用Proteus软件进行仿真、演示,使学生消除“抽象感”增加学习的兴趣。

使课堂教学更生动、直观使单片机课程中一些基本理论和基本概念更加容易理解。

标签:虚拟模拟仿真0 引言Proteus软件是英国Labcenter electronice公司开发的电路分析与实物仿真软件。

它不仅具有其他EDA工具软件的仿真功能。

还能仿真单片机及外围器件。

它是目前最好的仿真单片机及外围器件工具。

该软件的特点是:①实现了单片机仿真和SPICE电路仿真相结合。

具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。

②支持主流单片机系统的仿真。

目前支持的单片机类型有:8051系列、A VR系列、ARM系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。

③提供软件调试功能。

在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。

总之,该软件是一款集单片机和SPICE 分析于一身的仿真软件,功能极其强大。

1 数字钟电路设计数字钟的原理框图如图1所示。

它由以下几个部件组成:单片机AT89S52、电源、时分显示部件。

时分显示采用动态扫描,可以降低对单片机I/O口数的要求,同时也降低系统的功耗。

时分显示模块以及显示驱动都通过AT89S52的I/O口控制。

电源部分:两种方法:一种是由220V的市电通过变压、整流稳压(主要用7805稳压块)来得到+5V电压,维持系统的正常工作。

基于-proteus数字时钟制作毕业设计论文

基于-proteus数字时钟制作毕业设计论文

毕业设计(论文)说明书数字时钟制作毕业设计(论文)任务书摘要时钟是人们日常生活中必不可少的生活用品。

随着人类科技文明的发展,人们对于时钟的要求在不断地提高。

时钟已不仅仅被看成一种用来显示时间的工具,在很多实际应用中它还需要能够实现更多其它的功能。

高精度、多功能、小体积、低功耗,是现代时钟发展的趋势。

在这种趋势下,时钟的数字化、多功能化已经成为现代时钟生产研究的主导设计方向。

本次数字时钟电路采用AT89C51单片机作为控制核心,使用按钮设计控制电路,结合LED数码管、74LS373和排阻实现时、分、秒的显示,采用扬声器实现闹钟功能。

硬件电路设计主要包括中央处理单元电路、键盘扫描电路以及闹钟电路。

软件程序设计则采用汇编语言实现。

本设计实现了显示时间、调整时间、闹钟定时等功能,达到了设计的要求和目的。

并在Proteus软件上进行了仿真和调试。

关键词:数字时钟;AT89C51; LED数码管AbstractThe clock is the people daily life absolutely necessary supplies. Along with the development of human civilization, people for clock's demands are rising steadily. The clock has not only been considered a used to show time tools, but also need to be able to achieve more other function. High precision, multi-function, small volume, and low power consumptionis the trend of the development of the modern clock. In light of the trend, the clock's digital change and multifunction change has bee the leading modern clock production research design direction.This digital clock circuit design use the AT89C51 single-chip microcontroller as control core, use the button design control circuit, bined with LED nixie tube, 74LS373 and resistance to realize the clock display, use the speaker realize alarm clock function. Hardware circuit design includes the central processing unit circuit, keypad scanning circuit and the alarm clock circuit. Software program design is realized by assembly language. This design realizes display the time, adjust the time, alarm clock time function and meet the design requirements and purpose. And the software program in the Proteus software simulation and debugging.Keywords: Digital clock; AT89C51; 74LS37目录摘要IAbstractII第一章诸论11.1设计背景11.2 数字温度计设计方案论证11.2.1 方案一11.2.2 方案二11.2.3 方案三21.3 方案三的总体设计框图2第二章主要元器件介绍32.1 AT89C51的性能介绍32.1.1 AT89C51的主要特性32.1.2 AT89C51的管脚说明42.1.3 振荡器特性62.1.4 芯片擦除62.2 74LS373芯片62.2.1 74LS373的基本情况62.2.2 74LS373的内部结构和性能参数72.3七段数码管的引脚图及使用92.3.1七段数码管的引脚图92.3.2 数码管使用条件10第三章硬件设计113.1振荡电路和复位电路111.使用晶振CRYSTAL和瓷片电容构成振荡电路。

数字钟设计 proteus仿真

数字钟设计 proteus仿真

数字钟设计Digital clock design1.实验目的1.掌握数字钟的设计方法。

2.熟悉集成电路的使用方法。

2.实验内容及要求时钟显示功能,能够以十进制显示“时”、“分”、“秒”。

其中时为24进制,分秒为60进。

3.设计思路、芯片选择及单元电路功能简介1.设计思路:数字钟的设计可以分为4个单元电路来设计,分别为1Hz脉冲产生电路、数码管显示电路、60进制计数器电路、24进制计数器电路这四个单元电路。

2.芯片的选择:BCD——七段译码器74LS47十进制可逆计数器74192555定时器集成与门芯片74LS113.单元电路功能简介:①1Hz脉冲产生电路:图1 1Hz脉冲产生电路该单元电路是用由555定时器构成的多谐振荡器来产生的1HZ方波的电路,其中考虑到电路的“延时”效应,该电路产生的方波的频率并不是标准的1HZ方波,而是频率稍大于1Hz的方波。

它是为整个电路提供时钟源的,它的输出脉冲提供给秒单元电路的低位计数芯片。

②数码管显示电路:图2数码管显示电路该单元电路是用来显示一位数字的电路,它由一块数码管和一块数码管驱动芯片组成,它的输入信号由计数器提供。

③60进制计数器电路:图3 60进制计数器电路该单元电路由两片74LS192可逆计数器芯片、一个三输入与非门和一个非门构成的60进制计数器电路,它是为秒显示和分显示电路提供驱动信号的单元电路。

④24进制计数器电路:图4 24进制计数器电路该单元电路是由两片74LS192可逆计数器芯片和一个与门构成的24进制计数器电路,它的低位脉冲信号由分钟计数器单元电路的进位信号提供,它为小时显示电路提供驱动信号。

4.总电路图图5 总电路图5.仿真效果1.在接通电源之前,应保持开关SW1断开且SW2闭合,如下图所示:图6 SW1和SW2状态(1)2.接通电源后应先断开开关SW2,保持开关SW1断开状态不变,如下图所示:图7 SW1和SW2状态(2)3.在做完第二步之后,应保持开关SW2断开状态不变,闭合开关SW1,如下图所示:图8 SW1和SW2状态(3)在执行完以上三步之后,就是仿真的正确结果了,如下图所示:图9 总的运行效果6.实验结论在本次实验中,对于74LS192可逆计数器芯片来说,它本是十进制计数器,若用它构成六进制计数器,据理论知识,仅需要将它的输出端Q1和Q2端通过一个与门后反馈到清零端CR即可。

基于Proteus的数字电子钟的设计与仿真

基于Proteus的数字电子钟的设计与仿真

基于Proteus的数字电子钟的设计与仿真一、设计目的与要求 (1)二、设计内容与方案制定 (1)三、芯片简介 (1)1、AT89C52 (1)2、AT24C02 (2)四、设计步骤 (3)1、硬件电路设计 (3)1.1.硬件电路组成框图 (3)1.2.各单元电路及工作原理 (3)1.3.绘制原理图 (5)1.4.元件清单列表 (6)2、程序设计 (7)2.1程序流程 (7)2.2主程序 (9)2.2.源程序 (10)五、调试与仿真 (22)六、心得体会 (23)七、参考文献 (23)一、设计目的与要求设计目的:通过课程设计,培养学生运用已学知识解决实际问题的能力、查阅资料的能力、自学能力和独立分析问题、解决问题的能力和能通过独立思考。

设计要求:设计一个时、分可调的数字电子钟、断电后将数据保存,开启后时间将从断电后时间继续行走。

二、设计内容与方案制定具有校时功能,按键控制电路其中时键、分键六个键分别控制时、分时间的调整。

按下小时数实现对小时数加减,按下分钟数实现对分钟数进行加减,并设置有复位键,启始键。

以AT89C51单片机进行实现秒、分、时上的正常显示和进位,其中显示功能由单片机控制共阴极数码管来实现,数码管进行动态显示。

通过AT24C02分别写入时、分、秒数据在断电后实现保存,在下次通电后将数据读出保持为断电前数据。

三、芯片简介1、AT89C52AT89C52是一个低电压,高性能CMOS8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系2、AT24C02AT24C02支持I2C,总线数据传送协议I2C,总线协议规定任何将数据传件为接收器。

数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。

主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,由于A0、A1和A2可以组成000~111八种情况,即通过器件地址输入端A0、A1和A2可以实现将最多8个AT24C02器件连接到总线上,通过进行不同的配置进行选择器件。

基于Proteus的多功能数字电子钟的设计【毕业作品】

基于Proteus的多功能数字电子钟的设计【毕业作品】

任务书设计题目:基于Proteus的多功能数字电子钟的设计1.设计的主要任务及目标设计多功能数字电子钟,能显示时,分,秒,具备时间调整、定时、延时、计数功能;选定各元器件,完成系统整体设计、硬件设计;并通过Proteus软件的学习完成程序编制及调试。

2.设计的基本要求和内容(1) 查阅相关文献资料,进行设计构思并撰写开题报告(2) 进行框架设计,熟悉开发环境(3) 系统硬件设计(4) 系统软件设计(5) 完成毕业设计说明书3.主要参考文献[1] 卢毅,赖杰.VHDL与数字电路设计[M].北京:科学出版社,2002.[2]刘丽华.专用集成电路设计方法[M].北京:北京邮电大学出版社,2000.[3]张靖武,周灵彬.单片机系统的PROTEUS设计与仿真[M].北京:电子工业出版社,2007.基于Proteus的多功能数字电子钟的设计摘要:本设计采取单片机ATC89C51、按键开关与数码显示管、译码驱动器和一些简单的辅助电路相结合实现多功能数字电子钟的设计,此次设计主要主要实现了数字电子钟的时间显示功能、闹钟功能、计时功能、计数功能,并通过Proteus软件的学习,完成程序编制及调试。

关键词:多功能数字电子钟,AT89C51单片机,ProteusThe design of the multi-function digital electronic clock based onProteusAbstract:This design adopts single-chip microcomputer ATC89C51 switches, buttons and digital display tube, decoding drive and some simple auxiliary circuit to realize the combination of the design of the multi-function digital electronic clock, this design is mainly mainly realize the time display function of digital electronic clock, alarm clock, timing, counting functions, and through the study of Proteus software, complete the programming and debugging.Key words: multi-function digital electronic clock, AT89C51, Proteus目录1 前言 (1)1.1 课题产生的背景 (1)1.2 数字电子钟简介 (4)1.3 数字电子钟的基本特点 (5)1.4 数字电子钟的发展史 (5)1.5 数字电子钟的意义 (5)1.6 数字电子钟的应用 (5)1.7 数字电子钟的工作原理 (6)2 系统总体设计 (7)2.1 设计方案 (7)2.1.1 核心控制部分方案 (7)2.1.2 单片机选型 (7)2.1.3 显示部分方案 (10)2.1.4 键盘部分方案 (10)2.1.5 驱动部分选择方案 (10)2.2 方案选择 (11)3 系统硬件设计 (12)3.1 系统主要功能 (12)3.1.1 系统的硬件构成及功能 (12)3.2 硬件电路说明 (12)3.2.1 按键模块设计 (12)3.2.2 复位模块设计 (13)3.2.3 晶振模块设计 (14)3.2.4 发声指示模块设计 (15)3.2.5 时间显示模块设计 (16)4 系统软件设计 (21)4.1 主程序设计 (21)4.2 中断程序设计 (21)4.3 延时程序设计 (23)4.4 按键程序设计 (24)5 仿真与调试 (25)结论 (26)参考文献 (27)致谢 (29)附录一、系统硬件原理图 (30)附录二、源程序清单 (31)1 前言单片机技术被广泛应用于各种嵌入式系统中,单片机的发展极大地推动了电子技术和自动化技术的发展和应用。

基于proteus仿真的数字钟

基于proteus仿真的数字钟

摘要数字钟是一个对1Hz频率进行计数的电路。

振荡器产生的时钟信号经过分频器形成秒脉冲信号,秒脉冲信号输入计数器进行计数,显示出时间。

秒计数器电路计满60后触发分计数器电路,分计数器电路计满60后触发时计数器电路,当计满24小时后重零开始计数。

一般由振荡器、分频器、计数器、译码器、数码显示器等几部分组成。

振荡电路:主要用来产生时间标准信号。

石英晶体振荡器可以提高时间信号的稳定度。

分频器:振荡器产生的标准信号频率很高,要得到“秒”信号,需一定级数的分频器进行分频。

计数器:有了“秒”信号,则可以根据60秒为1分,24小时为1天的进制,分别设定“时”、“分”、“秒”的计数器,分别为60进制,60进制,24进制计数器,并输出一分,一小时,一天的进位信号。

译码显示:将“时”“分”“秒”显示出来。

将计数器输入状态,输入到译码器,产生驱动数码显示器信号,呈现出对应的进位数字字型。

关键词数字钟振荡计数校正目录1.前言 ......................................................................................................... 错误!未定义书签。

2.系统总体方案设计 .................................................................................. 错误!未定义书签。

2.1方案比较 .......................................................................................................... 错误!未定义书签。

2.2方案选择 .......................................................................................................... 错误!未定义书签。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Proteus仿真论文题目:动态数码管时钟仿真院系内蒙古大学鄂尔多斯学院专业名称自动化学生姓名吴启民学号 01351241802016年6月30日摘要AT89C52是一个低电压,高性能CMOS 8位单片机,在proteus 仿真中,单片机采用定时器中断方法,制作一个简易时钟,要求用定时器实现精确定时,使用数码管动态显示,完成时钟的秒走时显示。

本课程设计是利用两位共阴极数码管显示数字59,然后每隔1s顺序-1,减到00时,再循环从59-00。

关键词单片机仿真数码管目录1、绪论 (4)1.1背景介绍 (4)1.2 AT89C52单片机 (4)1.3 Proteus使用介绍 (6)1.4 动态数码管设计任务与要求 (7)2、硬件设计 (8)2.1 单片机最小系统 (8)2.2 数码管显示部分 (8)2.3 数码管驱动部分 (9)3、软件设计 (10)3.1 仿真原理图 (11)3.2 仿真参数设置 (11)3.3 仿真结果 (12)4. 总结 (13)5.参考文献 (14)6.附录 (16)附录1 程序代码 (16)1、绪论1.1背景介绍随着半导体技术的飞速发展,以及移动通信、网络技术、多媒体技术在嵌入式系统设计中的应用,单片机从4位、8位、16位到32位,其发展历程一直受到广大电子爱好者的极大关注。

单片机功能越来越强大,价格却不断下降的优势无疑成为嵌入式系统方案设计的首选,同时单片机应用领域的扩大也使得更多人加入到基于单片机系统的开发行列中,推动着单片机技术的创新进步。

然而传统的单片机系统开发除了需要购置诸如仿真器、编程器、示波器等价格不菲的电子设备外,开发过程也较繁琐。

来自英国Labcenter Electronics公司的Proteus软件很好地诠释了利用现代EDA工具方便快捷开发单片机系统的优势。

它包括PROTEUS VSM(Virtual System Modelling)、PROTEUS PCB DESIGN两大组成部分,在PC机上就能实现原理图电路设计、电路分析与仿真、单片机代码级调试与仿真、系统测试与功能验证以及形成PCB文件的完整嵌入式系统设计与研发过程。

本文讲述PROTEUS VSM单片机系统的PROTEUS设计与仿真功能,图1-2为基于PROTEUS仿真软件的单片机系统设计流程,它极大地简化了设计工作,得到众多设计师的青睐1.2 AT89C52单片机下图分别为PDIP封装的AT89C52引脚图和实物图图1.1 引脚图图1.2 实物图AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。

AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2 个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。

其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。

AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。

本课程设计中使用的是PDIP封装的AT89C52单片机。

1.3 Proteus使用介绍如图1.3为Proteus7.0的工作界面图图1.3Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件。

它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

它是目前比较好的仿真单片机及外围器件的工具。

虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。

是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、A VR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。

在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。

Proteus软件具有其它EDA工具软件(例:multisim)的功能。

这些功能是:1.原理布图2.PCB自动或人工布线3.SPICE电路仿真革命性的特点1.互动的电路仿真用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。

2.仿真处理器及其外围电路可以仿真51系列、A VR、PIC、ARM、等常用主流单片机。

还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。

配合系统配置的虚拟逻辑分析仪、示波器等,Proteus建立了完备的电子设计开发环境.在学习单片机的过程中Proteus软件可以很好地代替开发板进行仿真实验,可以使学生比较灵活多样化的学习单片机。

1.4 动态数码管设计任务与要求课程设计功能:单片机采用定时器中断方法,制作一个简易时钟,要求用定时器实现精确定时,使用数码管动态显示,完成时钟的秒走时显示。

本课程设计是利用两位共阴极数码管显示数字59,然后每隔1s顺序-1,减到00时,再循环从59-00.2、硬件设计2.1 单片机最小系统图2.1单片机的最小系统是指使单片机能运行程序、正常工作的最简单电路系统,是保证单片正常启动、开始工作的必须电路,缺一不可。

单片机最小系统一般由单片机、程序存储器、时钟电路和复位电路组成,它是单片机开发板中的核心部分。

时钟电路:其核心部分是晶振,晶振的作用是为系统提供基本的时钟信号。

简单地说,没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。

这里选用12MHZ晶振,便于产生精确的uS级时歇,方便定时操作。

复位电路:当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行(这里不加也可以)。

2.2 数码管显示部分如图2.2所示图2.2数码管有共阴极数码管和共阳极数码管两种(这里选用两位共阴极数码管),如图2.2(b)所示,根据数码管的驱动方式的不同,可以分为静态式和动态式两类,这里只介绍动态方式。

动态显示:将所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。

通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。

在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

2.3 数码管驱动部分这里使用74HC573来控制数码管的显示,如图2.3所示74HC573是拥有八路输出的透明锁存器,输出为三态门,是一种高性能硅栅CMOS器件。

当锁存使能端LE为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)。

当锁存使能变低时,符合建立时间和保持时间的数据会被锁存。

它是数码管显示时通常是采用段选、片选共用同一组并口的驱动方式。

驱动数码管需要两个信号,一个是段选信号,一个是片选信号。

段选信号是固定的8个(对于普通7段数码管),而片选信号数量是与数码管位数相同的。

对于8位数码管的动态扫描来说,片选信号要8根线,这样仅仅驱动数码管就占用了2组共16个IO口,非常浪费使用573锁存器后,只占用8+2=10个IO口,其中2个用于控制锁存器使能,另外8个输出信号。

先关闭控制片选信号的573芯片的锁存功能,然后单片机输出片选信号,随后开启锁存,此时无论573的输入端如何变化,输出端都是不变的,也就是原来输入的信号被锁住了。

然后,再关闭控制段选的573的锁存功能,输出段选信号,再锁存,这样就巧妙的实现了数据线的复用,让一组IO口既输出段选又输出片选3、软件设计3.1 仿真原理图如图3.1所示图3.1由51单片机P0口接上拉电阻通过锁存器74HC573控制共阴极数码管段选,P1口控制数码管位选,P2^1控制74HC573使能端。

3.2 仿真参数设置如下列表格3.2所示表3.2两位共阴极数码管动态扫描显示实验电路元器件及参数值3.3 仿真结果如图3.3图3.3经过多次试验,调试后现象正常,实现功能为:数码管从59秒开始-1,减到0后,重新开始从59循环-1.4. 总结通过这次课程设计,我真的学到了很多,接触到了平时难以接触或者常常忽视的东西。

在编辑好程序后,我在用Proteus仿真之前用拥有相同性质和原理的开发箱检验过,结果正常,可是在我用Proteus进行仿真时,发现延时较长数码管会一个一个数码管的显示,情况不正常;缩短延时时间后,数码管却显示的是乱码,围绕这个问题我调试了原理图,程序都换过,可就是行不通,后来通过查阅资料才知道原来软件仿真与硬件试验是有一定差别的,这里一定要进行延时,消隐才可以,终于经过一个多星期的奋战顺利完成了本次课程设计。

在此,我非常的感谢我的指导老师,感谢他在整个课程设计中给予我的无私帮助,同时也感谢同学在使用proteus软件时给予的帮助,正是由于老师和同学的热心帮助,我才知道自己的不足,才知道怎么才能及时发现问题并更好的去解决问题,相信通过这次课程设计中,在今后的学习,我会更加注重理论知识与实践的结合,团队合作等。

5.参考文献[1] 吴杰.基于ISP 技术的电子公告牌系统[J].科技资讯2008.NO.14:83-87.[2] 万光毅.单片机实验与实践教程[M].北京航空航天大学出版社.2005.1.[3] 张毅刚.单片机原理及应用[M].高等教育出版社.2003:160-190.[4] 马忠梅.单片机的 C 语言应用程序设计[M].北京:北京航空航天大学出版社.2006[5] 周润景.基于Proteus的电路与单片机仿真系统设计与仿真[M].北京航空航天大学出版社. 2005.[6] 金炯泰,金奎焕. 如何使用KEIL8051C编译器[M ]. 北京航空航天大学出版社.2002.6.附录附录1 程序代码#include<AT89X51.H>#define uint unsigned int#define uchar unsigned charsbit LE=P2^0; //定义使能端uchar num,shi,ge,t0;bit flag;uchar code table[ ]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};void display();void delay(uint z) //延时函数{uint i,j;for(i=z;i>0;i--)for(j=50;j>0;j--);}void main(){num=60;TMOD=0x01;TH0=(65536-50000)/256;//定时器赋初值TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;while(1){if(flag==1){flag=0;num--;if(num==-1){num=59;}shi=num/10;ge=num%10;}display();}}void timer0() interrupt 1{uchar t0;TH0=(65536-50000)/256;//定时器重装初值TL0=(65536-50000)%256;t0++;if(t0==20){t0=0;flag=1;}}void display()//显示函数{LE=0;P0=table[shi];LE=1;LE=0;P1=0x7f;LE=1;delay(10);P0=0x00; //消隐(至关重要,否则会显示乱码)LE=0;P0=table[ge];LE=1;LE=0;P1=0xbf;LE=1;delay(10);P0=0x00; //消隐(至关重要,否则会显示乱码)}。

相关文档
最新文档