AT89C52单片机驱动LED动态电子秒表设计详解

版权申诉
5星 · 超过95%的资源 1 下载量 97 浏览量 更新于2024-06-27 2 收藏 123KB DOC 举报
本文档详细介绍了基于单片机的电子秒表的设计过程。首先,关于控制器的选择,文中提到使用AT89C52单片机,这是因为它具有强大的算术运算能力、灵活的软件编程特性,以及低功耗、小型化、技术成熟和成本效益高等优点,使其在众多领域中广泛应用。 在数码管的选择上,文档明确选择了共阳极LED数码管,因为它们有清晰的显示效果。共阳极数码管的工作原理是,每个段的低电平对应点亮状态,通过组合不同的电平可以显示0到9这十个数字。提供了详细的字形码表,列出了每个数字的二进制编码和其对应字符码。 设计的核心是动态显示部分,利用P0口与数码管连接,通过改变P2口的位控制位来实现逐位显示。P0口的0-7位分别对应数码管的abcdefg,而P2.0-P2.2用于控制数码管的位。通过定时器T1以50ms为周期,每次中断后时间增加100ms,以此实现秒的计数。程序中设有开始和停止键的控制,当按下开始键,电子秒表开始计时,而停止键则暂停计时。 在设计说明中,程序详细描述了启动后的操作流程:首先进入待机状态,显示数字8,然后每隔一秒切换到下一个位置,直到检测到第四位。当达到一定时间间隔后,不仅秒位增加,还会根据预设的字形码显示数字和小数点。计数满10后,会进行相应的计数重置和显示更新。 最后,文档提供了程序流程图和关键代码段,包括初始化、待机画面显示、开始计时、停止计时以及LED动态显示子程序,展示了整个电子秒表设计的结构和工作原理。 总结来说,这份文档涵盖了单片机选型、数码管的驱动技术、程序设计思路以及具体操作步骤,对于理解和实现一个基于单片机的电子秒表项目具有很高的参考价值。
2023-02-27 上传
一、设计任务 (一)基本任务: 1. 应用AT89S51单片机设计单片机实现数字秒表(LED显示0--59秒)电路; 2. 选用2位LED数码显示,实时显示两位秒表,采用按键式实现秒表的走、停和清零。 3. 硬件设计:根据设计的任务选定合适的单片机,根据控制对象设计接口电路。设计的单 元电路必须有工作原理,器件的作用,分析和计算过程; 4. 软件设计:根据电路工作过程,画出软件流程图,根据流程图编写相应的程序,进行调 试并打印程序清单; 5.原理图设计:根据所确定的设计电路,利用Protel或Proteus等有关工具软件绘制 电路原理图、PCB板图、提供元器件清单; 二、设计原理 应用AT89S51单片机设计单片机实现数字秒表(LED显示秒)电路; 选用2位LED数码显示秒表,采用按键式实现 软时钟是利用单片机内部的定时器/计数器来实现的,它的处理过程如下:首先设定 单片机内部的一个定时器/计数器工作于定时方式,对机器周期计数形成基准时间(250 um),然后用系统中断(对250um计数4000次),合计延时一秒钟秒计59清零。然后通过 数码管把它们的内容在相应位置显示出来即可。 在具体处理时,定时器/计数器采用中断方式工作,对时钟的形成在中断服务程序中 实现。在主程序中只需对定时器/计数器初始化、调用显示子程序和控制子程序。 三、方案与论证 模块一:定时器中断服务子程序;可以调用中断来调用子程序。 模块二:主函数的设置 模块二:延时程序;可以有效的利用人们的暂留效应。 模块三:控制LED管的数字的加运算秒表开始加计数 四、设计内容 (一)系统框图和设计原理图 设计框图: 设计原理图: (二)软件设计流程图 五、总结 通过本次设计,对单片机的独立按键,LED的动态显示有了进一步的认识,并能基本掌握 和运用。 六、参考文献 《单片机实验指导书》 刘强 段纯爽主编 附录:设计源程序 #include<regx51.h> #define KEY P1_7 #define CON P2 #define DATA P0 #define unchar unsigned char #define unint unsigned int unchar second=0; unint count=4000; /*51实验箱共阳极笔段码(0123456789)*/ //unchar code table[]={0x84,0xf5,0x46,0x54,0x35,0x1c,0x0c,0xd5,0x04,0x14}; /*标准共阴极笔段码(0123456789)*/ unchar code table[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39, 0x5e,0x79,0x71};//共阴极笔段码(标准) void delay(); void display(); void tmr0_int() interrupt 1 { count--; if(!count) { second++; count=4000; } } void main() { TMOD=0X02;//定时器0工作在方式2 TH0=0X06; TL0=0X06;//定时器0计数初值 IE=0X82;//开总中断和定时器0中断 TR0=1; while(1) { display(); } } void delay() { unchar a,b; for(a=4;a>0;a--) for(b=248;b>0;b--); } void display() { if(second>59) { second=0; } if(second>9) { CON=0XFE; DATA=table[second/10]; delay(); CON=0XFF; CON=0XFD; DATA=table[second%10]; delay(); CON=0XFF; } else { CON=0XFD; DATA=table[second%10]; } } ----------------------- 基于单片机的电子秒表设计全文共6页,当前为第1页。 基于单片机的电子秒表设计全文共6页,当前为第2页。 基于单片机的电子秒表设计全文共6页,当前为第3页。 基于单片机的电子秒表设计全文共6页,当前为第4页。 基于单片机的电子秒表设计全文共6页,当前为第5页。 基于单片机的电子秒表设计全文共6页,当前为第6页。
2023-02-27 上传
题目:基于单片机的秒表设计 姓 名: 学 号: 专业班级: 指导老师:    所在学院: 年 月 日 摘要 本设计是一个利用单片机控制的多功能秒表系统,它是基于51系列的单片机进行的系 统设计。它采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理, 结合显示电路、电源电路、LED数码管以及键盘电路来设计计时器。将软、硬件有机地结 合起来,使得系统能够实现四位LED显示,最大显示时间为9分59.9秒,每毫秒自动加1, 一个开始暂停按键、一个复位按键。其突出的优点:体积小、场外作业、功耗最低、宜用 电池作为电源、硬件结构紧凑、简单和软件设计灵活. 当今时代,是一个新技术层出不穷的时代。在电子领域,尤其是自动化智能控制领域 ,传统的分立元件或数字逻辑电路构成的控制系统正以前所未见的速度被单片机智能控 制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能 控制与自动控制的核心就是单片机。单片机的出现是现代科技发展的一个重要的里程碑 。由于单片机的集成度高、功能强,通用性好,特别是它具有体积下、重量轻、能耗低 、价格便宜等优点,使单片机迅速得到推广应用,目前已成为测量控制应用系统中的优 选机种和新电子产品的关键部件。 目录 1 概述………………………………………………………………………………4 1.1设计任务………………………………………………………………………4 1.2设计要求………………………………………………………………………4 2 系统总体方案及硬件设计…………………………………………………………5 2.1系统总体方案…………………………………………………………………5 2.2硬件电路设计…………………………………………………………………6 3 软件设计…………………………………………………………………………10 3.1软件设计概述………………………………………………………………10 3.2程序流程图…………………………………………………………………10 3.3子程序模块设计……………………………………………………………12 4 Proteus软件真…………………………………………………………………13 4.1软件功能简介………………………………………………………………13 4.2 Proteus运行流程…………………………………………………………14 5课程设计会………………………………………………………………………16 参考文献……………………………………………………………………………16 附1:源程序代码…………………………………………………………………17 附2:系统原理图…………………………………………………………………20 1 概述 1.1 设计任务 设计一个单片机控制的秒表系统。利用单片机的定时器/计数器定时和记数的原理, 结合显示电路、LED数码管以及按键来设计计时器。将软、硬件有机地结合起来,使得系 统能够正确地进行计时,数码管能够正确地显示时间。 1.2设计要求 1)利用单片机内部定时器设计一个秒表,显示最大值为9分59.9秒。 2)使用4位七段显示器来显示现在的时间。显示格式为"分、秒、毫秒"。 3)要求能实现秒表的启动、停止和复位。 2 系统总体方案及硬件设计 2.1系统总体方案 本系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结 合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计 计时器,将软、硬件有机地结合起来。其中软件系统采用汇编语言编写程序,包括显示 程序,计数程序,中断,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在 仿真中就可以观察到实际的工作状态。 系统电路原理图 2.2硬件电路设计 本系统中,硬件电路主要有电源电路,晶振电路,复位电路,显示电路,以及一些按 键电路等,电路图如下 (1)单片机简介 本系统设计采用AT89C51单片机。 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处 理器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS- 51指令集和输出管脚相兼容(由于在微机原理中学过C- 51的具体知识,这里不再详细说明)。由于将多功能8位CPU和闪烁存储器组合在单个芯 片中,ATMEL的AT89C51是一种高效的微控制器。 (2)电源电路 电源电路是系统最基本的部分,任何电路都离不开电源部分,由于三端集成稳压器件 所组成的稳压电源线路简单,性能稳定,工作可靠,调整方便,已逐渐取代分立元件, 在生产中被广泛采用,由于是小系统,我们采用7809电源提供+5V稳压电压。 (3)晶体振荡电路 MCS--51单片机