电子时钟系统的设计与实现.doc_第1页
电子时钟系统的设计与实现.doc_第2页
电子时钟系统的设计与实现.doc_第3页
电子时钟系统的设计与实现.doc_第4页
电子时钟系统的设计与实现.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程名称:自动控制课程设计课程名称:自动控制课程设计 设计题目:设计题目:电子时钟系统的设计与实现电子时钟系统的设计与实现 院院 系:系: 专专 业:业: 年年 级:级: 姓姓 名:名: 指导教师:指导教师: 西南交通大学峨眉校区西南交通大学峨眉校区 2010 年年 7 月月 22 日日 西南交通大学峨眉校区自动控制课程设计(论文) 第 I 页 课课 程程 设设 计计 任任 务务 书书 专专 业业 姓姓 名名 学学 号号 开题日期开题日期:2010 年 7 月月 13 日日 完成日期:完成日期: 2010 年年 7 月月 22 日日 题题 目目 电子时钟系统的设计与实现 一、设计的目的一、设计的目的 通过课程设计,使学生巩固和加深对单片机基本知识的理解,学会查 询资料、方案设计、方案比较,以及单元电路设计计算等环节,进一步提 高学生综合运用所学知识的能力,提高分析解决实际问题的能力。锻炼分 析、解决电子电路问题的实际本领,通过此综合训练,为以后毕业设计打 下一定的基础。 二、设计的内容及要求二、设计的内容及要求 1、设计一个基于单片机的电子时钟,并且能够实现时分秒的显示和调 节。 2、系统显示器由6位数字型数码管组成,分别显示时间值的小时、分和 秒。 3、能够随时对当前时间进行调整。 4、能够随时输入定时(闹钟)时间。 5、定时(闹钟)时间到,发出闹钟提醒信号。 6、闹钟提醒信号的声音为断续形式,最长不超过 1min。 三、指导教师评语三、指导教师评语 四、成四、成 绩绩 指导教师指导教师 (签章签章) 年年 月月 日日 西南交通大学峨眉校区自动控制课程设计(论文) 第 II 页 摘 要 随着电子技术的发展,计算机在现代科学技术的发展中起着越来越重 要的作用。多媒体技术、网络技术、智能信息处理技术、自适用控制技术、 数据挖掘与处理技术等都离不开计算机。本课程设计是基单片机原理与接 口技术的简单应用。运用所学的单片机原理和接口技术知识完成电子时钟 系统的设计与实现。 电子时钟已成为人们日常生活中必不可少的必需品,广泛用于个人家 庭以及办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的 方便。由于数字集成电路技术的发展和采用了先进的石英技术,使电子时 钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报时 及自动控制等各个领域。尽管目前市场上已有现成的电子表集成电路芯片 出售,价格便宜、使用也方便,但鉴于电子时钟电路的基本组成包含了数 字电路的主要组成部分,因此进行电子时钟的设计是必要的,用汇编语言 设计电子时钟显示程序,要求根据输入程序显示电子时钟画面。研究电子 时钟及扩大其应用,有着非常现实的意义。 关键词: LED,定时/计器数, 汇编语言,调试,运行 西南交通大学峨眉校区自动控制课程设计(论文) 第 III 页 ABSTRACT With the development of electronic technology, computers in the development of modern science and technology play an increasingly important role in. Multimedia technology, network technology, intelligent information processing, since the application of control technology, data mining and processing and so can not do without a computer. The course design is based SCM theory and simple application interface technology. Learned the use of SCM principles and interface of technical knowledge to complete electronic clock system design and implementation. Electronic clock has become essential daily necessities, are widely used in personal home and office and other public places, to peoples lives, study, work, entertainment brought great convenience. As digital integrated circuit technology and uses advanced quartz technology to enable electronic clock has accurate time and stable performance, portable and easy, it also used for timing, automatic timekeeping and control fields. Although the market has been ready to sell electronic form integrated circuit chip, cheap, easy to use also, but in view of the basic components of electronic clock circuit includes the main components of digital circuits, so the design of the electronic clock is necessary, use electronic clock display of assembly language programs designed to require electronic clock program displays the input screen. Of electronic clock and extend its application, has a very practical significance. Keyword:LED, timer / total number of devices, assembly language, debugging, running 西南交通大学峨眉校区自动控制课程设计(论文) 第 IV 页 目录目录 摘 要.II ABSTRACT.III 第一章 绪论.1 1.1 电子时钟课程设计的背景和意义.1 1.2 电子时钟的功能.2 第二章 设计思路与方案确定.3 2.1 电子时钟的设计思路 .3 2.2 硬件电路的设计方案及框图 .3 2.2.1 计时方案.4 2.2.2 显示方案.4 第三章 硬件电路设计与器件选择.5 3.1 单片机简介.5 3.1.1 单片机的特点.5 3.1.2 8051 单片机介绍.5 3.2 时钟与复位电路介绍.8 3.2.1 时钟电路的介绍.8 3.2.2 复位电路的介绍.9 3.3 LED 显示电路介绍.10 3.3.1 LED 数码管介绍.10 3.3.2 LED 驱动电路与单片机的连接介绍.11 3.4 按键电路设计与器件介绍 .12 3.4.1 键盘结构介绍.12 3.4.2 键盘与单片机的接口电路介绍.12 3.5 蜂鸣器电路介绍.13 第四章 电子时钟软件的设计方案.14 4.1 电子时钟系统软件设计方案及框图.14 第五章 电子时钟应用程序设计.15 5.1 主程序的设计.15 5.1.1 程序的起始地址.15 5.1.2 主程序的初始化内容.15 5.1.3 主程序清单.16 西南交通大学峨眉校区自动控制课程设计(论文) 第 V 页 5.2 LED 动态显示程序模块的设计.18 5.2.1 T0 定时器中断服务程序的功能.19 5.2.2 定时器 T0 的计数初值.19 5.2.3 T0 定时器中断服务程序流程及程序清单.19 5.3 时钟计时程序模块的设计.21 5.3.1 24h 时间的产生.22 5.3.2 计算定时器 T1 的技术初值.22 5.3.3 程序设计框图及程序清单.22 5.4 键盘接收子程序的设计.25 5.4.1 程序设计框图.25 5.4.2 设置当前时间程序清单.25 5.4.3 设置定时(闹钟)时间程序清单.28 第六章 心得体会.31 参考文献.32 西南交通大学峨眉校区自动控制课程设计(论文) 第 1 页 第一章 绪论 1.1 电子时钟课程设计的背景和意义 在电子技术飞速发展的现今,电子产品几乎渗透到了社会的各个领域, 有力的推动和提高了社会生产力的发展和信息化程度,同时也使现代电子 产品性能进一步提升,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂容易使人忘记当 前的时间,然后压倒重大事情的时候,一旦忘记时间,就会给自己或他人 造成很大麻烦。平时我们要求上班准时,约会或召开会议必然要提及时间, 火车要准点到达,航班要准点起飞,工业生产中,很多环节都需要时间来 确定工序替换时刻。所以说随时准确的知道时间并利用时间,是我们生活 和工作中必不可少的。 电子时钟是采用电子电路实现对时、分、秒进行数字显示的计时装置, 广泛应用于个人、家庭、车站、办公等公共场所,成为人们日常生活中不 可或缺的必需品。 现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子 钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使 用方便,不需要经常调校,数字式电子钟用集成电路计时,译码代替机械 式传动,用 LED 显示器代替显示器代替指针显示进而显示时间,减小了计 时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校 对,片选的灵活性好。 为了实现电子时钟时间设置,时间显示,以及能够正确无误的运行, 本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计 由单片机 AT89S51 芯片和 LED 数码管为核心,辅以必要的电路,构成了一 个单片机电子时钟。 西南交通大学峨眉校区自动控制课程设计(论文) 第 2 页 1.2 电子时钟的功能 电子时钟主要是利用电子技术将时钟电子化、数字化、拥有时间精确、 体积小、界面友好、可扩展性能强等特点、被广泛应用与生活和工作当中。 当今市场上的电子时钟品类繁多,外形小巧别致,也有体型较大的,诸如 公共场所的大型电子报时器等。电子时钟首先是数字化的时间显示或报时 器,在此基础上,人们可以根据不同场合的要求,在时钟上加置其他功能, 比如定时闹铃,音乐等。 本设计电子时钟主要功能为: 1、具有时间显示和手动校对功能,24 小时制; 2、具有闹钟功能 西南交通大学峨眉校区自动控制课程设计(论文) 第 3 页 第二章 设计思路与方案确定 2.1 电子时钟的设计思路 根据设计要求,初步思路如下: (1) 计时单元由单片机内部的定时器/计数器 1 来实现。 (2) 时间显示采用 8 段 LED 数码管,动态扫描方式。动态扫描的定 时时间,由单片机内部的定时器/计数器 0 来实现。 (3) LED 数码管的段码输入,由并行端口 P0八位产生。 (4) LED 数码管的位码输入,由并行端口 P3后六位产生。 (5) 时间调整与定时时间的输入,通过接入键盘电路实现。系统共 设计 4 个按键,分别定义为: KB1 键(时间调整设置键):其功能是当该键按下时,进入时间调整输 入功能; KB2 键(定时时间设置键):其功能是当该键按下时,进入定时(闹钟) 时间输入功能; KB3 键:其功能是当该键按下时,被调整位加 1; KB4 键:其功能是当该键按下时,指向下一个调整的位。 (6) 按键的接入方式: KB1 键:通过 P3口 INT0引脚接入,中断工作方式; KB2 键:通过 P3口 INT1引脚接入,中断工作方式; KB3 键:通过 P3口 P3.4引脚接入,查询工作方式; KB4 键:通过 P3口 P3.5引脚接入,查询工作方式。 (7) 报警声响用蜂鸣器产生,蜂鸣器接入 P2口的 P2.6引脚 2.2 硬件电路的设计方案及框图 根据设计要求与设计思路,确定该系统的设计方案,下图 1 为该系统 设计方案的硬件电路设计框图。硬件电路由 8 部分组成,即按键输入电路、 西南交通大学峨眉校区自动控制课程设计(论文) 第 4 页 单片机、时钟电路、复位电路、LED 显示器段码驱动电路、LED 显示器位码 驱动电路、8 位显示器电路和蜂鸣器电路。 图 1 2.2.1 计时方案 利用 8051 单片机内部的定时/计数器进行中断定时,配合软件延时实 现时、分、秒的计时。该方案节省硬件成本,且能使读者在定时/计数器的 使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更 深入的了解,从而对学好单片机技术这门课程起到一定的作用。 2.2.2 显示方案 8051 的 P0口和 P2口外接由 8 个 LED 数码管(LED7LED0)构成的显示器, 用 P0口作 LED 的段码输出口,P2口作 LED 数码管的位控输出线,P3口外接 四个按键 KB1、KB2、KB3、KB4 构成键盘电路。 简易电子钟的功能不复杂,采用其现有的 I/O 便可完成 西南交通大学峨眉校区自动控制课程设计(论文) 第 5 页 第三章 硬件电路设计与器件选择 3.1 单片机简介 单片微型计算机简称为单片机,又称为微型控制器,是微型计算机的 一个重要分支。单片机是 70 年代中期发展起来的一种大规模集成电路芯片, 是 CPU、RAM、ROM、I/O 接口和中断系统于同一硅片的器件。80 年代以来, 单片机发展迅速,各类新产品不断涌现,出现了许多高性能新型机种,现 已逐渐成为工厂自动化和各控制领域的支柱产业之一。 3.1.1 单片机的特点 (1)单片机的存储器 ROM 和 RAM 时严格区分的。ROM 称为程序存储器, 只存放程序,固定常数,及数据表格。RAM 则为数据存储器,用作工作区及 存放用户数据。 (2)采用面向控制的指令系统。为满足控制需要,单片机有更强的逻 辑控制能力,特别是单片机具有很强的位处理能力。 (3)单片机的 I/O 口通常时多功能的。由于单片机芯片上引脚数目有 限,为了解决实际引脚数和需要的信号线的矛盾,采用了引脚功能复用的 方法,引脚处于何种功能,可由指令来设置或由机器状态来区分。 (4) 单片机的外部扩展能力很强。在内部的各种功能部件不能满足 应用的需求时,均可在外部进行扩展,与许多通用的微机接口芯片兼容, 给应用系统设计带来了很大的方便。 3.1.2 8051 单片机介绍 根据初步的设计方案的分析,设计这样一个简单的应用系统,可以选 择带有 EPROM 的单片机,应用程序直接存储在片内,不用在外部扩展程序 存储器,电路可以简化。INTEL 公司的 8051 和 8751 芯片均可以选用。 西南交通大学峨眉校区自动控制课程设计(论文) 第 6 页 MCS-51 是标准的 40 引脚双列直插式集成电路芯片,引脚分布请参照单 片机引脚图: 图 2 (1)主电源引脚 VCC 和 VSS VCC(40 脚)接+5V 电压; VSS(20 脚)接地。 (2)外接晶体引脚 XTAL1 和 XTAL2 XTAL1(19 脚)接外部晶体的一个引脚。在单片机内部,它是一个反相 放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时, 对 HMOS 单片机,此引脚应接地;对 CHMOS 单片机,此引脚作为驱动端。 XTAL2(18 脚)接外晶体的另一端。在单片机内部,接至上述振荡器的 反相放大器的输出端。采用外部振荡器时,对 HMOS 单片机,该引脚接外部 振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端; 对 XHMOS,此引脚应悬浮。 (3)控制或与其它电源复用引脚 RST/VPD、ALE/PROG、PSEN 和 EA/VPP RST/VPD(9 脚)当振荡器运行时,在此脚上出现两个机器周期的高 西南交通大学峨眉校区自动控制课程设计(论文) 第 7 页 电平将使单片机复位。推荐在此引脚与 VSS 引脚之间连接一个约 8.2k 的下 拉电阻,与 VCC 引脚之间连接一个约 10F 的电容,以保证可靠地复位。 VCC 掉电期间,此引脚可接上备用电源,以保证内部 RAM 的数据不丢失。 当 VCC 主电源下掉到低于规定的电平,而 VPD 在其规定的电压范围 (50.5V)内,VPD 就向内部 RAM 提供备用电源。 ALE/PROG(30 脚):当访问外部存贮器时,ALE(允许地址锁存)的 输出用于锁存地址的低位字节。即使不访问外部存储器,ALE 端仍以不变的 频率周期性地出现正脉冲信号,此频率为振荡器频率的 1/6。因此,它可用 作对外输出的时钟,或用于定时目的。然而要注意的是,每当访问外部数 据存储器时,将跳过一个 ALE 脉冲。ALE 端可以驱动(吸收或输出电流)8 个 LS 型的 TTL 输入电路。 对于 EPROM 单片机(如 8751) ,在 EPROM 编程期间,此引脚用于输入编 程脉冲(PROG) 。 PSEN(29 脚):此脚的输出是外部程序存储器的读选通信号。在从 外部程序存储器取指令(或常数)期间,每个机器周期两次 PSEN 有效。但 在此期间,每当访问外部数据存储器时,这两次有效的 PSEN 信号将不出现。 PSEN 同样可以驱动(吸收或输出)8 个 LS 型的 TTL 输入。 EA/VPP(引脚):当 EA 端保持高电平时,访问内部程序存储器, 但在 PC(程序计数器)值超过 0FFFH(对 851/8751/80C51)或 1FFFH(对 8052)时,将自动转向执行外部程序存储器内的程序。当 EA 保持低电平时, 则只访问外部程序存储器,不管是否有内部程序存储器。对于常用的 8031 来说,无内部程序存储器,所以 EA 脚必须常接地,这样才能只选择外部程 序存储器。 对于 EPROM 型的单片机(如 8751) ,在 EPROM 编程期间,此引脚也用于 施加 21V 的编程电源(VPP) 。 (4)输入/输出(I/O)引脚 P0、P1、P2、P3(共 32 根) P0口(39 脚至 32 脚):是双向 8 位三态 I/O 口,在外接存储器时, 与地址总线的低 8 位及数据总线复用,能以吸收电流的方式驱动 8 个 LS 型 的 TTL 负载。 P1口(1 脚至 8 脚):是准双向 8 位 I/O 口。由于这种接口输出没有 高阻状态,输入也不能锁存,故不是真正的双向 I/O 口。P1口能驱动(吸 西南交通大学峨眉校区自动控制课程设计(论文) 第 8 页 收或输出电流)4 个 LS 型的 TTL 负载。对 8052、8032,P1.0引脚的第二功 能为 T2定时/计数器的外部输入,P1.1引脚的第二功能为 T2EX 捕捉、重装 触发,即 T2的外部控制端。对 EPROM 编程和程序验证时,它接收低 8 位地 址。 P2口(21 脚至 28 脚):是准双向 8 位 I/O 口。在访问外部存储器时, 它可以作为扩展电路高 8 位地址总线送出高 8 位地址。在对 EPROM 编程和 程序验证期间,它接收高 8 位地址。P2可以驱动(吸收或输出电流)4 个 LS 型的 TTL 负载。 P3口(10 脚至 17 脚):是准双向 8 位 I/O 口,在 MCS-51 中,这 8 个引脚还用于专门功能,是复用双功能口。P3能驱动(吸收或输出电流)4 个 LS 型的 TTL 负载。 作为第一功能使用时,就作为普通 I/O 口用,功能和操作方法与 P1口 相同。 P3口也可作为 8051 的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断 0) P3.3 /INT1(外部中断 1) P3.4 T0(记时器 0 外部输入) P3.5 T1(记时器 1 外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口同时为闪烁编程和编程校验接收一些控制信号。 值得强调的是,P3口的每一条引脚均可独立定义为第一功能的输入输 出或第二功能。 西南交通大学峨眉校区自动控制课程设计(论文) 第 9 页 3.2 时钟与复位电路介绍 3.2.1 时钟电路的介绍 8051 内置最高频率达 12MHz 的时钟电路,用于产生整个单片机运行的 脉冲时序,但 8051 单片机需外置振荡电容。 单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形 式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储 器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL 的 MCS-51 系列单片机采用的是哈佛结构的形式,而后续产品 16 位的 MCS-96 系列单片机则采用普林斯顿结构。 图 3 3.2.2 复位电路的介绍 8051 单片机的复位电路有上电复位和手动按钮复位两种形式,RST/VPD 端的高电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高 电平复位信号称为手动按钮复位。 图 4 为兼有上电复位与按钮复位的电路。图中,上电瞬间 RST 端的电 位与 Vcc 相同,随着电容充电电流的减小,+5V 立即加到了 RST/VPD 端,该 高电平使 8051 复位。 西南交通大学峨眉校区自动控制课程设计(论文) 第 10 页 图 4 若运行过程中,需要程序从头开始执行,这只需按图 4 中的按钮即可。 按下按钮则直接把+5V 加到了 RST/VPD 端从而复位,这称为手动复位。 在实际应用系统中,有些外围芯片也需要复位,如果这些复位端的复 位电平要求与单片机的要求一致,则可以与之相连。 8051 复位后,P0P3 四个并行接口全为高电平,其它寄存器全部清零,只 有 SBUF 寄存器状态不确定。 表 3.9 单片机寄存器的复位状态表 寄存器复位状态寄存器复位状态 PC0000HTCON00H ACC00HTH000H PSW00HTL000H SP07HTH100H DPTR0000HTL100H P1、P3 FFHSCON00H IP000000BSBUF 不定 IE000000B0B(NMOS) TMOD00H PCON 00000B(CHMOS) 西南交通大学峨眉校区自动控制课程设计(论文) 第 11 页 3.3 LED 显示电路介绍 3.3.1 LED 数码管介绍 数码管是一种把多个 LED 显示段集成 在一起的显示设备。有两种类型,一种是 共阳型,一种是共阴型。共阳型就是把多 个 LED 显示段的阳极接在一起,又称为公 共端。共阴型就是把多个 LED 显示段的阴 极接在一起,即为公共商。阳极即为二极 管的正极,又称为正极,阴极即为二极管 的负极,又称为负极。通常的数码管又分 为 8 段,即 8 个 LED 显示段,这是为工程 应用方便如设计的,分别为 A、B、C、D、E、F、G、DP,其中 DP 是 小数点位段。而多位数码管,除某一位的公共端会连接在一起,不同位的 数码管的相同端也会连接在一起。即,所有的 A 段都会连在一起,其它的 段也是如此,这是实际最常用的用法。数码管显示方法可分为静态显示和 动态显示两种。静态显示就是数码管的 8 段输入及其公共端电平一直有效。 动态显示的原理是,各个数码管的相同段连接在一起,共同占用 8 位段引 管线;每位数码管的阳极连在一起组成公共端。利用人眼的视觉暂留性, 依次给出各个数码管公共端加有效信号,在此同时给出该数码管加有效的 数据信号,当全段扫描速度大于视觉暂留速度时,显示就会清晰显示出来。 图 5 3.3.2 LED 驱动电路与单片机的连接介绍 可以采用单片机的 P2 口和 P0 作为与 LED 的输出接口,即 P0 口 8 位作 为 LED 的段码输出信号,P2 口后六位作为 LED 位码的输出控制信号。硬件 电路连接如图 6 所示。段码输出所接上拉电阻,作用是保证 LED 可靠导通 西南交通大学峨眉校区自动控制课程设计(论文) 第 12 页 与截止。 图 6 3.4 按键电路设计与器件介绍 电子时钟应用系统工作时应具备两项基本功能,意识随时输入定时 (闹钟)时间,而是随时对当前时间进行调整。要实现这两项功能,可以 介入键盘输入电路。 3.4.1 键盘结构介绍 在单片机组成的测控系统及智能化仪器中,用得最多的是非编码键盘。 键盘结构可以分为独立式键盘和行列式键盘(矩阵式)两类。 在本次设计中只需要 4 个按键,因此选择独立式键盘。如图 7 所示, 电路有按键和 4 个电阻组成,按键分别名为 KB1、KB2、KB3、KB4,按键可 以采用轻触开关,电阻可以采用 5 脚排电阻。 西南交通大学峨眉校区自动控制课程设计(论文) 第 13 页 3.4.2 键盘与单片机的接口电路介绍 如图 7 所示,将键盘直接与单片机的 P3 口连接。用 P3.2、P3.3 引脚 通过两个按键 KB1、KB2 接入两个外部中断请求信号 INT0、INT1;P3.4、P3.5 引脚作为 I/O 口使用,通过两个按键 KB3、KB4 接入两个输入信号。4 个按 键功能的设计思路如下: 图 7 KB1 键功能:设置当前时间,即当电子时钟的时间有误差时,需要随时 对它进行调整,使用 KB1 键与 KB3 键、KB4 键配合来完成这一功能、 KB2 键功能:设置定时(闹钟)时间,即当需要电子时钟进行定时(闹 钟)服务时,可以通过该键的功能来输入定时(闹钟)时间,使用 KB2 键 与 KB3 键、KB4 键配合来完成这一功能。 KB3 调整键功能:分别对时间值的小时十位、小时个位、分十位、分个 位、秒十位、秒个位进行+1 调整,及该键没按下一次,对应的时间调整位 +1。 KB4 确认键功能:确认,即对 KB3 调整位进行确认,该键按下时,说明 被调整位的值已经确定,转去调整下一位。 3.5 蜂鸣器电路介绍 设计要求定时(闹钟)时间到时要有 声音提醒信号产生,可选择一只蜂鸣器来 实现这一功能。电路设计如图 8 所示: 西南交通大学峨眉校区自动控制课程设计(论文) 第 14 页 下图 9 为电子时钟硬件电路原理图: 图 8 图 9 西南交通大学峨眉校区自动控制课程设计(论文) 第 15 页 第四章 电子时钟软件的设计方案 进行应用软件设计时可采用模块化程序设计方法,其优点是: (1) 每个模块的程序结构简单,任务明确,易于编写、调试和修改。 (2) 程序可读性好,对程序的修改可局部进行,其他部分可以保持不变, 便于功能扩充和版本升级。 (3) 对于使用频繁的子程序可以建立子程序库,便于多个模块调用。 4.1 电子时钟系统软件设计方案及框图 根据设计要求,首先要确定软件设计方案,即确定该软件应该完成哪 些功能;其次是规划为了完成这些功能需要分成多少个功能模块,以及每 一个程序模块的具体任务是什么。模块的划分有很大的灵活行,但也不能 随意划分。划分模块时应遵循下述原则: (1) 每个模块应具有独立的功能,能产生一个明确的结果 (2) 模块之间的控制参数应尽量简单,数据参数应尽量少。控制参 数是指模块进入和退出的条件及方式,数据参数是指模块间的信息交换(传 递)方式、交换量的多少级交换的频繁程度。 (3) 模块长度适中。模块语句的长度通常在 20100 条较合适。模块 太长时,分析和调试比较困难,失去了模块化程序机构的优越性;模块太 短则信息交换太频繁,也不合适。 (4) 根据模块的划分原则,将该程序划分成 7 个模块,如图 10 所示。 西南交通大学峨眉校区自动控制课程设计(论文) 第 16 页 图 10 第五章 电子时钟应用程序设计 5.1 主程序的设计 主程序的内容一般包括:主程序的起始地址,中断服务程序的起始地 址,有关内存单元及相关部件的初始化和一些子程序调用等等。 5.1.1 程序的起始地址 8051 单片机复位后, (PC)=0000H,而 0003H002BH 分别为各中断源 的入口地址。所以、编程时应在 0000H 处写一跳转指令。 当 CPU 接收到中断请求信号并予以响应后,CPU 把当前的 PC 内容压入 栈中进行保护,然后转入相应的中断程序入口处执行。一般应在相应的中 断服务程序入口处写一条跳转指令,并以跳转指令的目标地址作为中断服 务程序的其实地址进行编程。 5.1.2 主程序的初始化内容 所谓初始化,是对将要用到的 8051 单片机内部部件或扩展芯片进行初 始工作状态设定。8051 单片机复位后,特殊功能寄存器 IE,IP 的内容均为 00H,所以应对 IE,IP 进行初始化编程,以开放 CPU 中断,允许某些中断 源中断和设置中断优先级等。 西南交通大学峨眉校区自动控制课程设计(论文) 第 17 页 在本次设计中,使用了四个中断工作方式,即 T0、T1、/INT0、/INT1。其中: 1)T0 中断:采用 T0 定时中断工作方式,完成 LED 动态扫描。 2)T1 中断:采用 T1 定时中断工作方式,产生 100ms(或 50ms)单位 时间。 3)/INT0 中断:采用外部中断工作方式,完成时间按调整功能。 4)/INT1 中断:采用外部中断工作方式,完成闹钟时间输入功能。 同时还要对一些存储单元的进行初始化,这些内容都需要在初始化程 序中来完成。 5.1.3 主程序清单 ORG 0000H ;程序执行开始地址 LJMP MAIN ;跳转主程序执行 ORG 0003H ;外部中断 0 中断服务程序入口地址 LJMP INTA ;转外部中断 0 中断服务程序 ORG 000BH ;定时器 T0 中断服务程序入口地址 LJMP TO_SEV ;转 T0 定时中断服务程序执行 ORG 0013H ;外部中断 1 中断服务程序入口地址 LJMP INTB ;转外部中断 1 中断服务程序 ORG 001BH ;定时器 T1 中断服务程序入口地址 LJMP T1_SEV ;转 T1 定时中断服务程序 ORG 0030H ;设置主程序起始地址=0030H MAIN: MOV SP, #60H ;设置堆栈指针 MOV A,#00H MOV 30H, A MOV 31H, A MOV 32H, A MOV 33H, A MOV 34H, #0CH MOV 35H, A 西南交通大学峨眉校区自动控制课程设计(论文) 第 18 页 MOV 36H, A MOV 37H, A MOV 50H, #DFH MOV 51H, #EFH MOV 52H, #F7H MOV 53H, #FBH MOV 54H, #FDH MOV 55H, #FEH CLR RS0 CLR RS1 MOV R2, #0 MOV R3, #0 MOV R4, #0 MOV R5, #12 MOV TMOD, #11H MOV TH1, #3CH MOV TL1, #0B0H MOV TH0, #0ECH MOV TL0, #78H MOV IP, #08H MOV TCON, #50H MOV IE, #8FH LOP: MOV A, 34H ANL A, #F0H MOV 40H, A MOV A, 34H ANL A, #0FH MOV 41H, A MOV A, 33H ANL A, #F0H MOV 42H, A 西南交通大学峨眉校区自动控制课程设计(论文) 第 19 页 MOV A, 33H ANL A, #0FH MOV 43H, A MOV A, 32H ANL A, #F0H MOV 44H, A MOV A, 32H ANL A, #0FH AA: MOV 45H, A SETB RS1 CLR RS0 A1: MOV R2, 37H ;判断是否有定时时间 CJNE R2, #0, NT MOV R2, 36H CJNE R2, #0, NT MOV R2, 35H CJNE R2, #0, NT SJMP BB NT: MOV A, 37H CJNE A, 34H, BB ;判断定时时间到否 MOV A, 36H CJNE A, 33H, BB MOV A, 35H CJNE A, 32H, BB CLR P3.6 ;时间到,发出报警 SJMP LOP BB: SETB P3.6 SJMP LOP 西南交通大学峨眉校区自动控制课程设计(论文) 第 20 页 5.2 LED 动态显示程序模块的设计 在采用动态扫描显示方式时,要使得 LED 显示的比较均匀,又有足够 的亮度,需要设置适当的扫描频率。当扫描频率在 70Hz 左右时,能够产生 足够的图形和较好的显示效果。一般可以采用间隔 10ms 对 LED 进行动态扫 描一次,每一位 LED 的显示时间为 1ms。 本次设计中,采用硬件定时和软件定时并用的方式,即用定时器 0 溢 出中断功能实现 10ms 定时,通过软件延时程序实现 1ms 的定时。 5.2.1 T0 定时器中断服务程序的功能 1)从显示缓冲区分别取出 6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论