基于定时器计数器的秒表仿真和C语言开发

合集下载

51单片机c语言的秒表设计

51单片机c语言的秒表设计

学号:1108421065课程设计报告基于AT89C51单片机的秒表设计院系电子信息工程学院专业电子信息工程班级 1姓名张远远摘要本设计是设计一个单片机控制的多功能秒表系统。

近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动着传统控制检测日新月异的更新。

在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面的知识是不够的,还要根据具体的硬件结构,以及针对具体的应用对象的软件结合,加以完善。

秒表的出现,解决了传统的由于人为因素造成的误差和不公平性。

本设计的秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、电源电路、LED数码管以及按键电路来设计计时器。

将软、硬件有机地结合起来,使得系统能够正确地进行计数,并且结合相应的显示驱动程序,使数码管能够正确地显示时间,暂停和中断。

可谓功能强大。

其中软件系统采用c语言编写程序,包括显示程序,计数程序,中断,延时程序,按键消抖程序等,硬件系统利用PROTEUS强大的功能来实现,简单且易于观察,在仿真中就可以观察到实际的工作状态。

关键字:单片机秒表目录摘要 (I)目录 (II)引言 (III)1.课程设计目的 (1)2.课程设计题目描述和要求 (1)3.课程设计报告内容 (1)3.1设计思路(方案) (1)3.2系统总体方案及硬件设计(方案论证、设计、调试) (1)3.2.1系统总体方案 (1)3.2.2硬件电路设计 (2)3.3 软件设计 (5)3.3.1软件设计概述 (5)3.3.2程序流程图 (5)3.3.3子程序模块设计 (6)4.Protues软件仿真 (7)5.秒表c语言程序 (9)6.焊接实物图 (11)7.总结(设计后的体会和建议) (11)8.参考文献: (12)引言中国使用单片机的历史只有短短的30年,在初始的短短五年时间里发展极为迅速。

纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。

基于89C51单片机的秒表课程设计(论文)

基于89C51单片机的秒表课程设计(论文)

摘要随着电子技术的发展,电子技术在各个领域的运用也越来越广泛,人对它的认识也逐步加深。

秒表计时器秒表计时器常常用于体育竞赛及各种其他要求有较精确时间的各领域中。

其中启/停开关的使用方法与传统的机械计时器相同,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关计时终止。

而复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时应立即终止,并对计时器清零。

本设计就是利用所学到的电子元器件将脉冲源用数码管显示出来,以制承诺简易的秒表。

以单片机为核心,设计一个秒表,具有计时功能,按键有启动计时、数据清零、停止、时间显示。

采用3个LED数码管显示时间,计时范围设置为0~99.9秒,即精确到0.1秒,用按键控制秒表的“开始”、“暂停”、“复位”,按“开始”按键,开始计时;按“暂停”按键,系统暂停计时;再按“开始”键,系统继续计时;数码管显示当前计时值;按“复位”按键,系统清零。

毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。

据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。

对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。

作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。

有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。

学校可以公布论文(设计)的全部或部分内容。

保密的论文(设计)在解密后适用本规定。

作者签名:指导教师签名:日期:日期:注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。

基于AT89C51单片机控制的数字秒表的设计

基于AT89C51单片机控制的数字秒表的设计

HEBEINONGJI摘要:秒表是一种常用的测时仪器,数字秒表是一种准确度比较高的计时仪器。

数字秒表在现代社会生活的各个领域里应用越来越多,如文体比赛、各种活动计时等。

本文主要研究如何用AT89C51单片机控制一块2片的七段数码管,数码管自动显示从00~99,然后反复循环,也可以99~00进行倒计时。

用C语言在Keil软件上编制程序代码,用Proteus软件对系统进行仿真。

关键词:七段数码管;AT89C51;C语言程序基于AT89C51单片雌制的数字秒表的设计苏州健雄职业技术学院赵素玲1控制要求使用AT89C51单片机控制一个2片的七段数码管,循环从00〜99进行自动显示。

在此时间是可以根据要求进行调整的,并不一定是间隔时间为1秒。

程序中延时子函数的延时时间的改变很容易就能进行时间长短的调整。

该程序还很容易实现从99〜00的倒计时,这种功能可以通过按钮开关的选择来实现,但是加上了按钮程序,程序就变得更复杂、更长。

由于篇幅限制在本文中没有使用按钮程序,所以倒计时的程序是单独给出的。

系统的具体要求有以下四点:(1)以AT89C51芯片为核心控制器,加上外围辅助电路,设计出系统仿真电路图;(2)根据要求用Keil软件编写出C语言程序代码;(3)用一个2位的七段数码管自动的从00-99正计时循环显示;(4)用一个2位的七段数码管自动的从99-00倒计时循环显示。

2系统硬件电路设计2.1系统仿真电路图设计图1电路仿真图系统仿真电路图主要由AT89C51单片机芯片、电源、地、石英晶体振荡电路、复位电路、两片七段共阴极数码管组成。

两个电容C2、C3(30PF)与Xl(石英晶体)组成了石英晶体振荡电路。

电阻R1(1K)、电容C1(22UF)构成复位电路。

P1口控制2位七段数码管,P1口输出字形码,由于P1口作为输出口必须接上拉电阻。

若是选用其他的三个口作为输出口则不需要接上拉电阻,这是由AT89C51单片机自身的特点决定的。

非常好的资料-秒表时钟程序-c语言-51单片机-Proteus仿真-均包括

非常好的资料-秒表时钟程序-c语言-51单片机-Proteus仿真-均包括

电子工程训练实验报告题目:秒表系统的设计和工程实现系班:学号:姓名:大连理工大学电工电子实验中心电子安装实验室一.单片机系统设计方案描述系统设计基本指标:1.实现最大时间长度超过5分钟的正常倒计时2.可以在5分钟范围内自由方面设置秒表的开始时间3.进入最后一分钟时,三声蜂鸣器响提示4.秒表计时到,五声蜂鸣器响,同时小灯亮提示电子工程训练是一个综合性实验。

秒表系统设计总体上分为硬件设计和软件设计两个部分,并要充分考虑它们的匹配设计。

硬件设计特别是引脚的配置要充分考虑软件实现的需要,反过来,软件设计也要建立在硬件的基础上,并且充分利用硬件提供的资源。

硬件电路大体上可分为最小系统板电路、数码管显示电路和按键电路。

最小系统板电路和数码管显示电路在老师指导下很快得以完成。

按键电路为充分考虑以后软件设计的灵活性和可扩展形,采用了排线将引脚引出。

软件设计上,为方便秒表的操作使用,设置了“修改”、“增加”、“移位”和“开始/暂停”四个按键功能。

“修改”键按下,进入修改状态,相应的修改位闪烁,提示按“增加”键修改该位时间参数,操作“移位“按键可以移动修改位。

“开始暂停”则用于秒表的开始运行和暂停运行。

按键处理通常有查询和中断两种方式处理,查询占用较多的单片机运行资源,而且延迟防抖效果较差,容易多次触发,而中断方式消抖则操作更为灵敏。

同时考虑到A T89S52只有两个外部中断,将使用较多的“增加”和“开始/暂停”两个按键处理分配给两个外部中断。

另外两个按键则采用查询方式检测处理。

软件设计整体上利用了“有限状态机”的思想,按键控制状态的转换,并在相应的状态下执行相应的操作。

一共设置了3个状态:state=0(暂停状态),state=1(开始运行状态),state=2(修改状态),它们的相互转化如下:由于本人之前接触过一些仿真软件Proteus的知识,而本系统设计所需要的单片机、按键、数码管、蜂鸣器等硬件均可在Proteus得到仿真。

51单片机秒表计时器课程设计报告(含C语言程序).

51单片机秒表计时器课程设计报告(含C语言程序).

XXXXXX学院51单片机系统设计课程设计报告题目:秒表系统设计专业、班级:学生姓名:学号:指导教师:分数:[摘要]本设计是一个秒表计时器,采用51单片机实现。

电路包括以下几部分:单片机最小系统部分,数码管显示部分,摁键开关部分部分。

电路选用共阴型4位数码管组成时钟显示电路;时钟的增减控制以及清零部分主要由轻触开关构成的摁键系统组成;信号接收和处理部分主要由单片机来执行。

接通电源后,秒表计时器处于初始状态,4位数码管显示000.0。

当摁下“开始”开关时,秒表开始计时,数码管显示当前状态的时间。

当再次摁下开关时,数码管停止计时。

摁下“清零”键后,系统重新回到初始状态。

[关键词]单片机最小系统秒表计时摁键控制1、任务设计一个秒表计时器,在51单片机的控制作用下,采用4个LED数码管显示时间,计时范围设置为00.0~60.0秒,即精确到0.1秒,用按键控制秒表的“开始”、“暂停”、“复位”,按“开始”按键,开始计时;按“暂停”按键,系统暂停计时;再按“开始”键,系统继续计时;数码管显示当前计时值;按“复位”按键,系统清零。

2、设计要求(1)开始时显示00.0。

每按下S1键一次,数值加1s;(2)每按下S2键一次,数值减1s;(3)每按下S3键一次,数值清零;(4)每按下S4键一次,启动定时器使数值开始自动每秒加1,再次按下S4键,数值停止自动加1,保持显示原数。

3、发挥部分(1)开关按键3:“复位60.0”按键(用来60秒倒计时)。

按键按下去时数码管复位为“60.0”(用于倒计时)。

(2)开关按键4:倒计时“逐渐自减”按键。

按键按下去则是数码管开始“逐渐自减”倒计时。

(3)开关按键5:倒计时初始值“增加”按键。

(4)开关按键6:倒计时初始值“减小”按键。

4、课程设计的难点单片机电子秒表需要解决三个主要问题,一是有关单片机定时器(一个控制顺序计时,一个控制倒计时)的使用;二是如何实现LED 的动态扫描显示;三是如何对键盘输入进行编程。

用定时器计数器设计一个简单的秒表

用定时器计数器设计一个简单的秒表

用定时器计数器设计一个简单的秒表目录摘要 (I)1 Proteus简介 (1)2 主要相关硬件介绍 (2)2.1 AT89C52简介 (2)2.2 四位数码管 (4)2.3 74LS139芯片介绍 (5)3 设计原理 (6)4 电路设计 (7)4.1 电路框图设计 (7)4.2 电路模块介绍 (7)4.2.1 控制电路 (7)4.2.2 译码电路 (8)4.2.3 数码管显示电路 (8)4.3 仿真电路图 (8)5 设计代码 (9)6 仿真图 (13)7 仿真结果分析 (16)8 实物图 (16)9 心得体会 (17)参考文献 (18)摘要现在单片机的运用越来越宽泛,大到导弹的导航装置、飞机上各种仪表的控制、计算机的网络通讯与数据传输、工业自动化过程的实时控制和数据处理,小到广泛使用的各种智能IC卡、各种计时和计数器等等。

本次课设我们要设计一个能显示计时状态和结果的秒表,它是基于定时器/计数器设计一个简单的秒表。

本次设计的数字电子秒表系统采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

将软、硬件有机地结合起来,使得系统能够实现四位LED显示,显示时间为0~99.99秒,计时精度为0.01秒,能正确地进行计时,并显示计时状态和结果。

其中软件系统采用汇编或者C语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,并在keil中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。

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

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

基于c语言单片机秒表课程设计

基于c语言单片机秒表课程设计

课程设计报告课程名称:单片机原理及应用报告题目:秒表学生姓名:所在学院:信息科学与工程学院专业班级:学生学号:指导教师:2013 年12 月25 日课程设计任务书摘要近年来随着科技的飞速发展,单片机的应用正在不断的走向深入,秒表计时器是电器制造,工业自动化控制、国防、实验室以及科研单位理想的计时仪器,它广泛应用于各种继电器、电磁开关,控制器、延时器、定时器等时间测试。

本文阐述了基于单片机的数字电子秒表设计。

本设计主要特点是计时从00到99秒秒表系统,方便了在计时精度要求不高的情况下计时。

因为计时精度为1,所以系统电路比较简单。

另外硬件部分设置了开始、暂停、清零、复位按键,可以对秒表系统进行计时控制。

本设计的数字电子秒表系统采用AT89C51单片机位中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

将软、硬件有机的相结合起来,使得系统能够实现两位LED显示,显示时间为00-99秒,计时精度为1秒,能正确地进行计时,同时能记录一次时间,其中软件系统采用C语言编写程序,包括显示程序,定时中断服务,延时程序等,并用KeiL中调试运行,硬件系统利用Proteus强大的功能来实现,简单且易于观察,在仿真中就可以观察到实际的工作状态。

关键词:单片机;数字电子秒表;仿真目录一、概述 (1)1.1设计目的 (1)1.2设计要求 (1)1.3设计意义 (1)二、系统总体方案及硬件设计 (1)2.1系统总体方案 (2)2.2硬件设计 (2)2.21晶体振荡电路 (2)2.22复位电路 (3)2.23按键电路 (3)2.24 显示电路 (4)2.25系统电路 (4)三、软件设计 (5)1.设计特点 (5)2.秒表设计源程序 (9)3.程序流程图 (10)四、结论与心得 (11)五、参考文献 (11)一、概述1.1设计目的设计一个单片机控制的秒表系统。

利用单片机的定时器/计数器定时和记数的原理,结合显示电路、LED数码以及按键来设计秒表。

基于定时器计数器的单片机仿真和C语言开发

基于定时器计数器的单片机仿真和C语言开发

摘要本次能力拓展的要求是要求实现利用定时器中断方式或查询定时器溢出标志方式从P 口输出给定周期的方波。

在此基础上,我决定进行一些拓展,使其能实现输出方波的频率和占空比可调。

如果以调节变阻器的阻值来实现频率的调节相对来说要麻烦些,所以我们决定用按键来调节频率和占空比,而以键盘扫描来实现各键的不同功能。

关键字:定时器;中断;方波1.概述单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。

单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。

单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。

另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。

本课题讨论的方波发生器的核心是目前应用极为广泛的51系列单片机。

其内部包括:(1)一个8位的CPU;(2)4KB程序存储器ROM;(3)128字节RAM数据存储器;(4)两个16位定时/计数器;(5)可寻址64KB外部数据存储器和64KB外部存储空间的控制电路;(6)32条可编程的I/O线(4个8位并行I/O端口);(7)一个可编程全双工串行口;(8)具有两个优先级嵌套接口的5个中断源;2.总体设计方案2.1 方案介绍在电子技术领域中,实现方波发生器的方法有很多种,可以采用不同的原理及器件构成不同的电路,但可以实现相同的功能。

在此次课设中,微处理器模块使用AT89C51。

本设计中用到两个定时器,定时器0和定时器1,其中定时器0工作在定时方式下,决定方波的频率;定时器1同样工作在定时方式下,用于设定占空比。

键盘的操作是通过外中断与单片机共同来控制的,键盘操作来完成按要求对频率与占空比进行调节。

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

目录1软件简介 (1)1.1PROTEUS (1)1.2KEIL (2)2 MCS-51芯片简介 (3)3硬件电路及主要模块设计及其原理 (5)3.1单片机最小系统 (5)3.2震荡电路模块和原理 (5)3.3复位电路模块和原理 (5)3.4按键电路及原理 (6)3.5LED模块和显示原理 (6)3.6蜂鸣器电路和原理 (7)3.7设计总电路和原理 (8)4程序框图 (10)5资源分配 (10)6源程序 (11)6.1主程序: (11)6.2按键控制程序: (16)7性能分析 (20)7.1系统调试工具KEIL UVISION4 (20)7.2系统调试工具PROTEUS (20)7.3仿真与分析 (21)8心得体会 (22)9参考文献 (23)1软件简介1.1 PROTEUSProteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。

它运行于Windows 操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:(1)实现了单片机仿真和SPICE电路仿真相结合。

具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。

(2)支持主流单片机系统的仿真。

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

(3) 提供软件调试功能。

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

(4) 具有强大的原理图绘制功能。

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

本章介绍Proteus ISIS软件的工作环境和一些基本操作。

特点:支持ARM7,PIC,A VR,HC11以及8051系列的微处理器CPU模型,更多模型正在开发中:交互外设模型有LCD显示、RS232终端、通用键盘、开关、按钮、LED等;强大的调试功能,如访问寄存器与内存,设置断点和单步运行模式;支持如IAR、Keil和Hitech等开发工具的源码C和汇编的调试;一键“make”特性:一个键完成编译与仿真操作;内置超过6000标准SPICE模型,完全兼容制造商提供的SPICE模型;DLL界面为应用提供特定的模式;基于工业标准的SPICE3F5混合模型电路仿真器14种虚拟仪器:示波器、逻辑分析仪、信号发生器、规程分析仪等;高级仿真包含强大的基于图形的分析功能:模拟、数字和混合瞬时图形;频率;转换;噪声;失真;付立叶;交流、直流和音频曲线;模拟信号发生器包括直流、正旋、脉冲、分段线性、音频、指数、单频FM;数字信号发生器包括尖脉冲、脉冲、时钟和码流;集成PROTEUS PCB设计形成完整的电子设计系统。

1.2 KEILKeil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。

运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。

如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。

Keil C51开发系统基本知识Keil C51开发系统基本知识(1)系统概述Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

下面详细介绍Keil C51开发系统各部分功能和使用。

(2)Keil C51单片机软件开发系统的整体结构C51工具包的整体结构,uVision与Ishell分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。

然后分别由C51及C51编译器编译生成目标文件(.OBJ)。

目标文件可由LIB51创建生成库文件,也可以与库文件一起经L51连接定位生成绝对目标文件(.ABS)。

ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。

Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

2MCS-51芯片简介单片机它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

作为嵌入式系统控制核心的单片机具有其体积小、功能全、性价比高等诸多优点。

51系列单片机是国内目前应用最广泛的单片机之一,随着嵌入式系统、片上系统等概念的提出和普遍接受及应用,51系列单片机的发展又进入了一个新的阶段。

在今后很长一段时间内51系列单片机仍将占据嵌入式系统产品的中低端市场。

C语言是本设计的程序设计语言,它比低级语言更通俗易懂,设计更为方便,故采用它来设计程序。

单片机全称为单片微型计算机(Single Chip Microcomputer)。

因为单片机主要用于控制系统中,所以又称微控制器(Microcontroller Unit,MCU)或嵌入式控制器(Embedded Controller)。

它具有嵌入式应用系统所要求的体系结构,微处理器,指令系统,总线方式,管理模式等。

他把计算机的基本部件都微型化集成到一块芯片上了,通常片内部都含有中央处理部件(CPU),数据存储器(RAM),程序存储器(ROM,EPROM,Flsh ROM),定时器/计数器和各种输入/输出(I/O)接口他们之间的相互连接结构如图1-1所示。

图1-1单片机结构8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。

8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:1)中央处理器:中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。

2)数据存储器(RAM):8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。

3)程序存储器(ROM):8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。

4)定时/计数器(ROM):8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程序转向。

5)并行输入输出(I/O)口:8051共有4组8位I/O口(P0、P1、P2或P3),用于对外部数据的传输。

6)全双工串行口:8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。

7)中断系统:8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。

8)时钟电路:8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。

单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。

INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。

3硬件电路及主要模块设计及其原理3.1单片机最小系统最小系统就是单片机在发挥具体测控功能时所必须的组成部分。

图2-1 最小系统方框图3.2震荡电路模块和原理本次设计要使用到AT89C51单片机的时钟振荡功能。

AT89C51中有一个用于构成内部震荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入和输出端。

这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自激振荡器。

3.3复位电路模块和原理8051的复位方式可以是自动复位,也可以是手动复位,见下图2-2。

此外,RESET/Vpd 还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。

图2-2 复位电路图复位电路虽然简单,但其作用非常重要。

一个单片机系统能复正常运行,首先要检查是否能复位成功,其中手动复位开关比较常用,手动开关未按下之前,电容正极处于充电状态,当按键按下去后,VCC与GND导通,电容放电,从而实现放电。

3.4按键电路及原理采用矩阵键盘方式输入设计键盘控制电路部分,其中用到5个按键,分别是时分秒的置数控制位,启动和报警控制位。

其键盘结构图如下所示:图2-3键盘结构图2-4上拉电阻结构上拉电阻阻值的选择原则包括:(1)从节约功耗及芯片的灌电流能力考虑应当足够大;电阻大,电流小。

(2)从确保足够的驱动电流考虑应当足够小;电阻小,电流大。

(3)对于高速电路,过大的上拉电阻可能边沿变平缓。

上拉电阻阻值通常在1k到10k之间选取。

故选择的是10K的电阻。

3.5 LED模块和显示原理LED显示器又称为数码管,LED显示器由8个发光二极管组成。

中7个长条形的发光管排列成“日”字形,另一个贺点形的发光管在显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。

LED显示器有两种不同的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极LED显示器;另一种是8个发光二极管的阴极都连在一起的,称之为共阴极LED显示器本次电路设计采用的是共阴极数码管,通过动态扫描方式驱动,其电路模块如下:图2-5 数码管结构3.6蜂鸣器电路和原理蜂鸣器部分采用IO口输出,单片机P1端口驱动蜂鸣器。

相关文档
最新文档