毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc

上传人:yyf 文档编号:3945619 上传时间:2019-10-10 格式:DOC 页数:98 大小:3.27MB
返回 下载 相关 举报
毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc_第1页
第1页 / 共98页
毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc_第2页
第2页 / 共98页
毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc_第3页
第3页 / 共98页
毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc_第4页
第4页 / 共98页
毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc_第5页
第5页 / 共98页
点击查看更多>>
资源描述

《毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc》由会员分享,可在线阅读,更多相关《毕业论文_虚拟单片机实验系统的开发_(附录_程序).doc(98页珍藏版)》请在三一文库上搜索。

1、 毕 业 设 计 学生姓名: XXXX 学 号: 09XXXXXXXXX 专 业: 电子科学与技术 题 目: 虚拟单片机实验系统的开发 指导教师: 王保柱(副教授) 张秀清(讲师) 评阅教师: 武瑞红(副教授) 2013 年 6 月 河北科技大学毕业设计成绩评定表 姓 名 XXX 学 号 09XXXXXXXX 成 绩 专 业电子科学与技术 题 目虚拟单片机实验系统的开发 指导教师评语及成绩 指导教师: 年 月 日 评阅教师评语及成绩 评阅教师: 年 月 日 答辩小组评语及成绩 答辩小组组长: 年 月 日 答辩委员会意见 答辩委员会主任: 年 月 日 毕毕 业业 设设 计计 中中 文文 摘摘 要

2、要 基于 C51 的单片机在现实生活中有着广泛的应用,课题基于 PROTEUS 软件,简单 设计了一个单片机虚拟硬件环境的实验系统,以便做一些简单的单片机实验。本课题 针对 PROTEUS 软件和编译软件 KEIL 做了一下简单的介绍。本文重点对单片机虚拟硬件 环境各部分电路进行详细介绍,包括键盘、显示、6 位共阳数码管、A/D、D/A 等。重 点介绍了 4X4 键盘的显示功能、8 位发光二极管以流水灯的方式显示、LCD 的显示以及 A/D 和 D/A 转换器的功能。最后作者还介绍了一下 PROTEUS 和 KEIL 的联调设置以用各 电路的仿真结果。 关键词:proteus 软件;单片机 ;

3、仿真; 虚拟实验 毕毕 业业 设设 计计 外外 文文 摘摘 要要 Title Based on the virtual experiment system PROTEUS chip design Abstract Widespread application based on the C51 monolithic integrated circuit in the real life. This article based on PROTEUS software, simply designed a monolithic integrated circuit hypothesized hard

4、ware environment experiment system. In order to make some simple MCU experiment.This subject gives a brief introduction to KEIL and PROTEUS.This article main introduce the detail to various part of electric circuits. Include keyboard, display, 6 digit 7 segment anode display,A/D, D/A, the 4X4 keyboa

5、rds demonstration function, 8 light emitter diodes by class lantern floated down rivers way demonstration, LCD displayed as well as A/D and D/A switchs function. At last, writer also introduced the simulation result by KEIL and PROTEUS in different circuits with the jointing setting. Key Words: Prot

6、eus software, SCM, Simulation, Virtual experiment 本本 科科 毕毕 业业 设设 计计第 I 页 共 II 页 目目 录录 1 绪论1 1.1 课题背景分析1 1.2 课题概况及发展趋势 2 1.3 课题的目的和意义 2 2 系统设计3 2.1 电路整体设计 3 2.2 课题解决的问题 3 2.3 课题研究的方法 4 2.4 电路仿真部分6 3 硬件电路设计7 3.1 整体框图设计 7 3.2 主芯片AT89C52 .8 3.3 LED 显示模块 .14 3.4 LCD 显示模块 .16 3.5 数码管显示.17 3.6 键盘显示.19 3.7

7、A/D 转换模块 .22 3.8 D/A 转换模块 .24 3.9 温度传感器模块.25 3.10 蜂鸣器模块26 4 软件联调配置.28 4.1 软件语言的选择.28 4.2 软件运行环境.28 4.3 PROTEUS和KEIL的配置.28 5 电路的仿真与测试.32 本本 科科 毕毕 业业 设设 计计第 I 页 共 II 页 5.1 LED 流水灯 .32 5.2 LCD 字符显示 .33 5.3 数码管动态扫描.34 5.4 键盘测试.35 5.5 A/D 转换实验 .36 5.6 D/A 转换实验 .37 5.7 计时器 38 5.8 1602 液晶显示时钟 38 5.9 DS18B2

8、0 温度按传感器 .39 5.10 交通灯设计39 5.11 整体电路测试40 结论.44 致谢.45 参考文献.46 附录.48 本本 科科 毕毕 业业 设设 计计 第 1 页 共 43 页 1.1.绪论绪论 1.11.1 课题的背景分析课题的背景分析 针对传统的单片机,需采购大量的、比较贵的的硬件设备,而且设备维护和工作 量也非常大,传统的单片机实验采用硬件仿真器,实验箱或实验板,由于单片机应用 技术涉及的范围比较广,它涉及到到计算机、须硬件和软件结合才能实现,也就是将 外围电路和单片机程序相结合,如果用真实的实验箱则费会用高,器材又不能地发挥 充分利用,加上所用实验板开发周期比较长,可行

9、性不好。 现在使用 Proteus 仿真软件,实现了纯软件的虚拟单片机实验系统,既可调试单片 机程序,也可以仿真单片机的外围器件的工作情况;既能充分利用计算机等硬件资源, 减少硬件设备的维护工作量,还可提供丰富的实验内容。 1.21.2 技术概况及发展趋势技术概况及发展趋势 现代科技技术的发展,促进了计算机技术在软件和硬件上的飞速发展,利用计算 机软件的仿真技术,可以充分地仿真电路的工作等实际的工程问题。 目前,嵌入式系统已经广泛地渗透到工程设计、科学研究、军事技术、各类产业 和商业文化艺术以及人们的日常生活等方方面面中,由于社会对掌握嵌入式技术人才 的大量需求,使得嵌入式软硬件工程师成为未来

10、几年内最为热门的职业之一,相当一 部分高校已开设嵌入式系统的相关课程。 嵌入式系统是实践与理论相结合的课程,对于嵌入式处学习者来说没有足够的资 金来购买开发板,所以只能选择仿真仿真来学习嵌入式系统,proteus 是目前最好的仿 真软件,能够虚拟出嵌入式系统开发中常用的处理器和外围器件。 Proteus 与其他软件不同,它不仅能仿真 CPU 的工作情况,而且也能仿真参与单片 机仿真的外围电路和其他电路的工作情况。在调试和仿真的过程中,关心的是从工程 的角度直接看程序运行的结果和电路的工作过程。不再关心的是某些程序语句执行单 片机寄存器和存储器内容的改变。这样的仿真弥补了工程和实验见的矛盾和脱节

11、。 1.31.3 课题的目的和意义课题的目的和意义 单片机技术是电子专业一门重要的基础课程,它要求的对动手能力要求很高,长 期以来,由于实验设备资源的限制,使得教学实验受到了限制,本设计是利用 Proteus 软件进行虚拟单片机试验系统的开发,所涉及到单片机及外围电路可以在没有硬件的 本本 科科 毕毕 业业 设设 计计 第 2 页 共 43 页 情况下进行各种实验的仿真,从而大大地挺高了学习的兴趣。 在现代教学中计算机网络和虚拟实验等技术已经逐渐成为教学的的手段和工具。 通过实验可以使所学的东西更加清楚和明了,通过实验可以是学生通过实验加深对理 论知识的理解和认识。尤其是那些那些难以理解的内容

12、,虚拟实验在现代教学有很高 的地位,它使得很多复杂的问题变得简单化,同时也节省很多件资源,在实验中通过 一些形象生动的演示,是所学的知识转化为能力,在以后的工作中实践中得以灵活地 应用。 传统的试验室,需要大量的实验器材,而且很多器材都得不到充分地利用,加上 电子产品的更新换代,很多实验器材用不了几年就会被淘汰,再加上目前学生人数的 增加,势必会给实验教学带来不小的压力和冲击,所以我们就要寻找一种新的途径解 决实验教学的问题,传统的实验需要各种设备仪器,和相关的配套设施,而且对实验 器材不够充分地利用,学生在试验室对各种仪器不熟悉,对实验内容准备的不够充分 而到不到满意的实验结果,现在利用虚拟

13、的实验系统可以很好地解决这一问题,所以 虚拟试验室教学将成为一种发展趋势,同时也提高学习者的积极性和动手能力。 本本 科科 毕毕 业业 设设 计计 第 3 页 共 43 页 2.2.系统设计系统设计 2.12.1 电路电路整体设计整体设计 本课题共分为几大模块,具体为 LED 显示、1602 液晶显示、温度传感器、独立按 键、数字按键、4X4 键盘显示、6 位数码管、蜂鸣器、8 位发光二极管流水灯显示、LCD 显示以及 A/D 和 D/A 转换几个模块。所有电路都是围绕主芯片 AT89C52 来完成的,下图 为设计的电路的整体框图,如图 2-1 所示。 主芯片 AT89C52 LED及驱动模块

14、 1602液晶显示 6位数码管 蜂鸣器 温度传感器 AD转换模块 DA转换模块 矩阵按键电路 独立按键 数字按键 图 2-1 系统电路框图 2.22.2 课题解决的问题课题解决的问题 为了解决传统基于硬件的单片机实验室诸多弊端,本课题采用 PC 和软件建立的单 片机虚拟试验系统,即在 proteus 上使用的各种虚拟仪器,按照试验要求和设计原理, 虚拟出与现实相同的实验系统,进而完成整个实验,也充分利用了 proteus 软件的功 能,对各个电路部分进行仿真。为进行一些简单的单片机实验构建一个虚拟硬件环境。 (1)4X4 键盘:主要输入数据 (2)显示部分: LED:LED 是一种特别的二极管

15、,当连接最电的时候就会发出光,通常被用在电子器 具来显示电路是否关闭或打开的指示灯。 本本 科科 毕毕 业业 设设 计计 第 4 页 共 43 页 LCD:LCD 为英文 Liquid Crystal Display 的缩写,即液晶显示器,是一种数字显 示技术,可以通过液晶和彩色过滤器过滤光源,在平面面板上产生图象。 (3)A/D 和 D/A: 真实世界的模拟信号,例如温度、压力、声音或者图像等,被不断转换成更容易 储存、处理和发射的数字形式,但是在很多系统中,数字信息也必须重新转换成模拟 信号来实现一些真实世界的功能。数模转换器(DAC)就可以做到这一点,而且它们的输 出还可以用来驱动各种设

16、备。 DAC 一般被放置在数字系统中。在数字系统中,一些真实世界的信号通过模数转 换器(ADC)数字化和处理过后,然后需要重新转化成模拟信号的系统中。这些系统所要 求的 DAC 性能会受到系统其它组件的性能和要求的影响。 2.32.3 课题研究的方法课题研究的方法 2.3.1 总体方案 实验项目 硬件电路 软件程序 Proteus Keil C 存档相应的软件电路和软件 程序并编写实验报告 图 2-2 总体方案 本本 科科 毕毕 业业 设设 计计 第 5 页 共 43 页 分别对LED显示、独立键盘、矩阵键盘、LCD显示、蜂鸣器模块、数码管以及A/D和 D/A等实验项目进行硬件电路和软件程序的

17、设计并结合Proteus和Keil uVision3进行仿 真。如图2-2所示。 2.3.2 技术路线 在Keil C 中写入源程序编译生成Hex文件 在Porteus上画出电路原理图 绑定主芯片与Hex文件 修改电路或源程序 运行Proteus进行调试 成功? 编写实验指导书 N Y 图 2-3 技术路线 围绕着主芯片设计 LED 显示、独立键盘、矩阵键盘、数字键盘、LCD 显示、数码管、 计数器、数字温度显示、蜂鸣器模块、交通灯设计、以及 A/D 和 D/A 等电路模块并在 Porteus 上画出相应的电路图并保存。用 C 语言编译能够完成相应模块功能的源程序。 运行 Proteus 进行

18、仿真调试。如果仿真没有成功则修改电路或源程序后重新进行仿真 测试。 本本 科科 毕毕 业业 设设 计计 第 6 页 共 43 页 2.2.4 4 电路图仿真部分电路图仿真部分 Proteus 与其他软件不同,它不仅能仿真 CPU 的工作情况,而且也能仿真参与单片 机仿真的外围电路和其他电路的工作情况。因此在调试和仿真的过程中,关心的是从 工程的角度直接看程序运行的结果和电路的工作过程。不再关心的是某些程序语句执 行单片机寄存器和存储器内容的改变。这样的仿真弥补了工程和实验见的矛盾和脱节。 采用 Proteus 仿真软件进行虚拟单片机实验,具有比较明显的优势,如涉及到的实 验实习内容全面、硬件投

19、入少、学生可自行实验、实验过程中损耗小、与工程实践最 为接近等。 本本 科科 毕毕 业业 设设 计计 第 7 页 共 43 页 3.3. 硬件电路设计硬件电路设计 3.13.1 整体框图设计整体框图设计 在 proteus 中由 LED 模块及驱动电路、1602 液晶显示模块、LCD 显示模块、6 位数 码管、AD/DA 转换模块、独立按键、矩阵按键、数字按键、蜂鸣器模块、温度传感器等 模块。如图 3-1 所示。 图 3-1 电路总设计图 3.23.2 主芯片主芯片AT89C52AT89C52 本设计主要是围绕芯片 AT89C52 来设计的,下图为芯片 AT89C52 引脚的具体说明, 如图

20、3-2 所示。 3.2.1 AT89C52 介绍 AT89C52 是一个低电压,高性能 CMOS 8 位单片机,片内含 8k bytes 的可反 复擦写的 Flash 只读程序存储器和 256 bytes 的随机存取数据存储器( RAM),器 件采用 ATMEL 公司的高密度、非易失性存储技术生产,兼容标准MCS-51 指令系统, 片内置通用 8 位中央处理器和 Flash 存储单元功能强大的 AT89C52 单片机可为您 提供许多较复杂系统控制应用场合。 本本 科科 毕毕 业业 设设 计计 第 8 页 共 43 页 XTAL2 18 XTAL1 19 ALE 30 EA 31 PSEN 29

21、 RST 9 P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32 P1.0/T2 1 P1.1/T2EX 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8 P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD 17 P3.6/WR 16 P3.5/T1 15 P2.7/A15 28 P2.0/A8 21 P2.1/A9 22 P2.2/

22、A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 U1 AT89C52 图 3-2 A89C52 芯片 AT89C52 有 40 个引脚,32 个外部双向输入 /输出(I/O)端口,同时内含 2 个 外中断口,3 个 16 位可编程定时计数器 ,2 个全双工串行通信口, 2 个读写口线, AT89C52 可以按照常规方法进行编程 ,但不可以在线编程 (S 系列的才支持在线编程 )。 其将通用的微处理器和 Flash 存储器结合在一起,特别是可反复擦写的Flash 存 储器可有效地降低开发成本。 3.2.2 管脚说明 主要管脚有: XT

23、AL1(19 脚)和 XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。 RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚) 和 VSS(20 脚)为供电端口,分别接 +5V 电源的正负端。 P0P3 为可编程通用 I/O 脚,其功能用途由软件定义,在本设计中, P0 端口(3239 脚)被定义为 N1 功能控制端口,分别与 N1 的相应功能管脚相连接, 13 脚定义为 IR 输入端, 10 脚和 11 脚定义为 I2C 总线控制端口,分别连接 N1 的 SDAS(18 脚)和 SCLS(19 脚)端口,12 脚、27 脚及 28 脚定义为握

24、手信号功能端口,连接主板 CPU 的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。 VCC:供电电压。 GND:接地。 本本 科科 毕毕 业业 设设 计计 第 9 页 共 43 页 P0 口:P0 口是一组 8 位漏极开路型双向 I/O 口, 也即地址/数据总线复用口。 作为输出口用时,每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路,对端口 P0 写 “1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线 分时转换地址(低 8 位)和数据总线复用,在访问期间激活内部上拉电阻。在 Flash 编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校

25、验时,要求外接上 拉电阻。 P1 口:P1 是一个带内部上拉电阻的 8 位双向 I/O 口, P1 的输出缓冲级可驱动 (吸收或输出电流)4 个 TTL 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端 口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引 脚被外部信号拉低时会输出一个电流(IIL)。与 AT89C52 不同之处是,P1.0 和 P1.1 还可分别作为定时/计数器 2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX) ,Flash 编程和程序校验期间,P1 接收低 8 位地址。 P2 口:P2 是一个带有内部上拉电阻的 8 位双向 I/O

26、口,P2 的输出缓冲级可驱 动(吸收或输出电流)4 个 TTL 逻辑门电路。对端口 P2 写“1” ,通过内部的上拉电 阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻, 某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或 16 位地 址的外部数据存储器(例如执行 MOVX DPTR 指令)时,P2 口送出高 8 位地址数据。 在访问 8 位地址的外部数据存储器(如执行 MOVX RI 指令)时,P2 口输出 P2 锁存 器的内容。Flash 编程或校验时,P2 亦接收高位地址和一些控制信号。 P3 口:P3 口是一组带有内部上拉电阻的 8 位双向

27、 I/O 口。P3 口输出缓冲级可 驱动(吸收或输出电流)4 个 TTL 逻辑门电路。对 P3 口写入“1”时,它们被内部上 拉电阻拉高并可作为输入端口。此时,被外部拉低的 P3 口将用上拉电阻输出电流 (IIL) 。P3 口除了作为一般的 I/O 口线外,更重要的用途是它的第二功能 P3 口还接 收一些用于 Flash 闪速存储器编程和程序校验的控制信号。 RST:复位输入。当振荡器工作时,RST 引脚出现两个机器周期以上高电平将使单 片机复位。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉 冲用于锁存地址的低 8 位字节。一般情况下,ALE 仍以时钟振

28、荡频率的 1/6 输出固定 的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数 本本 科科 毕毕 业业 设设 计计 第 10 页 共 43 页 据存储器时将跳过一个 ALE 脉冲。对 Flash 存储器编程期间,该引脚还用于输入编程 脉冲(PROG) 。如有必要,可通过对特殊功能寄存器(SFR)区中的 8EH 单元的 D0 位 置位,可禁止 ALE 操作。该位置位后,只有一条 MOVX 和 MOVC 指令才能将 ALE 激活。 此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ALE 禁止位无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号

29、,当 AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,即输出两个脉 冲。在此期间,当访问外部数据存储器,将跳过两次 PSEN 信号。 EA/VPP:外部访问允许。欲使 CPU 仅访问外部程序存储器(地址为 0000H FFFFH) ,EA 端必须保持低电平(接地) 。需注意的是:如果加密位 LB1 被编程,复位 时内部会锁存 EA 端状态。 3.2.3 外围电路 外围电路由晶振电路和复位电路组成,晶振电路由晶振和两个 30uF 的电路组成, 分别接单片机的 XTAL1 和 XTAL2。晶振的作用是为了系统,他提供时钟信号给了系统, 通常便于各部分保持同步,

30、所以一个系统共用一个晶振,要使通过电子调整频率的保 持同步,那就必须在有些系统中的基频和射频使用不同的晶振。晶振电路通常与锁相 环电路配合使用,以提供系统所需的时钟频率。 复位电路由复位开关和下拉电阻 R7 组成,接单片机的 RST 引脚。复位电路的作用 是使单片机的程序计数器清零,复位电路就好比电脑,当死机的时候,按下复位键程 序从头开始执行,受到干扰或者程序跑飞的时候,按下复位键从头开始执行。内部计 数器的编程主要是定时常数的设置和有关控制寄存器的设置。内部记数器在单片机中 主要有定时器和记数器两个功能。 定时器有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON。TMOD 用于

31、设置 定时器/计数器的工作方式 0-3,并确定用于定时还是记数,TCON 主要功能是为定时 器在溢出时设定标志位,并控制定时器的运行或停止等,内部记数器用作定时器时, 是对机器周期记数。每个机器周期的长度是 12 个振荡周期,该实验系统的晶振是 11.0592MHz。 本本 科科 毕毕 业业 设设 计计 第 11 页 共 43 页 图 3.3 外围电路 3.33.3 LEDLED 显示模块显示模块 (1)电路接法 以 AT89C52 为主芯片设计的一个 8 位发光二极管以流水灯的形式显示的基本电路, 首先,8 个发光二极管的输出端是和 74HC573 的端口从 Q0 到 Q7 端相接,形成 8

32、 个输入端 口,其次,8 位二极管的负极接 9 引脚的排阻,排阻的 1 脚接 VCC, 接排阻的作用是防止发光二极管在电压过大的情况下烧坏,然后 74HC573 接 AT89C52 的 P1 口从 P1.0 到 P1.7,这样就形成了 8 个闭合回路。74HC573 起到驱动的作 用,一般情形下,74HC573 的驱动能力大于 74LS573 的驱动能力。如图 3-4 所示。 图 3-4 LED 显示电路 本本 科科 毕毕 业业 设设 计计 第 12 页 共 43 页 (2)8 位发光二极管的工作原理 因为二极管左边接的是 Vcc 作为高电平,所以如果要二极管亮的话 P1 口必须输入 低电平,

33、就一条通路而言,在 P1.0 输入低电平后,第一个发光二极管导通,所以就亮 了。然后在后面加上延迟,也就是亮的时间后再输入 P1.1 口为低电平,第二个二极管 就发亮,同理而言,就实现了流水灯的实验。 3.43.4 16021602 液晶显示模块液晶显示模块 1602 字符液晶显示器的 D0 到 D7 端口与用 AT89C52 的 P0 口 P0.0 到 P0.7 相接, VEE 端接 RV1 的 VL 端,RV 一端接地,另一端接+5V。9 引脚的排阻 2 到 9 端接单片机的 P0.0 到 P0.7。VDD 接+5V,RS、RW、E 分别接 P2.0 到 P2.2。 1602 为 2 行

34、16 列液晶显示器,可显示 2 行 16 列英文字符,有 8 位数据总线 D0- D7,RS、VEE、RW 三个控制端口(共 14 线) ,工作电压为 5V。没背光,和常用的 1602B 功能和引脚一样(除了调背光的二个线脚) 。如图 3-5 所示。 图 3-5 LCD 显示电路 1.管脚功能 第 1 脚:VSS 为电源地 第 2 脚:VDD 接 5V 电源正极 第 3 脚:V0 为液晶显示器对比度调整端,对比度最弱时接正电源,对比度最高时 接地电源。 第 4 脚:RS 为选择寄存器,高电平 1 时寄存器选择数据、低电平 0 时寄存器选择 指令。 本本 科科 毕毕 业业 设设 计计 第 13

35、页 共 43 页 第 5 脚:RW 为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 第 6 脚:E(或 EN)端为使能(enable)端。 第 714 脚:D0D7 为 8 位双向数据端。 第 1516 脚:空脚或背灯电源。15 脚背光正极,16 脚背光负极。 2.字符显示原理 用 LCD 显示一个比较复杂的字符时,因为一个字符由 68 或 88 点阵组成,既 要找到和显示屏幕上某几个位置对应的显示 RAM 区的 8 字节,还要使每字节的不同位 为“1” ,其它的为“0” ,为“1”的点亮,为“0”的不亮。但由于内带字符发生器的 控制器来说,显示字符就比较简单了,先让让控制

36、器工作在文本方式的时候,再根据 根据在 LCD 上显示每行的列数和行列号找出显示 RAM 对应的地址,设立光标,在此处 送上该字符对应的代码就可了。 3.53.5 数码管模块数码管模块 LED 数码管是由七个发光管组成 8 字形构成的,加上小数点就是 8 个。这些段分别 由字母 a,b,c,d,e,f,g,dp 来表示。当数码管特定的段加上电压后,这些特定的段就会 发亮,以形成我们眼睛看到的 2 个 8 数码管字样了。如:显示一个“2”字,那么应当 是 a 亮 b 亮 g 亮 e 亮 d 亮 f 不亮 c 不亮 dp 不亮。LED 数码管有一般亮和超亮等不同之 分,也有 0.5 寸、1 寸等不

37、同的尺寸。小尺寸数码管的显示笔画常用一个发光二极管组 成,而大尺寸的数码管由二个或多个发光二极管组成,一般情况下,单个发光二极管 的管压降为 1.8V 左右,电流不超过 30mA。发光二极管的阳极连接到一起连接到电源正 极的称为共阳数码管,发光二极管的阴极连接到一起连接到电源负极的称为共阴数码 管。发光二极管的阳极连接到一起连接到电源正极的称为共阳数码管,发光二极管的 阴极连接到一起连接到电源负极的称为共阴数码管。常用 LED 数码管显示的数字和字 符是 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。 LED 数码管(LED Segment Displays)是由多个发光二极

38、管封装在一起组成“8” 字型的器件,引线已在内部连接完成,只需将它们的各个笔划引出,公共电极。数码 管根据 LED 分为共阴和共阳是因为他们的接法不同而分类,如果了解 LED 的特性,尤 其是对编程是非常重要的,数码管的类型不同,电路除了有差别外,编程的方法和原 理也有所不同,共阴和共阳极数码管的内部电路不同,到那它们的原理是一样的,知 识它们的电源极性不同而已罢了。led 数码管广泛用于仪器仪表,汽车电子、时钟、显 本本 科科 毕毕 业业 设设 计计 第 14 页 共 43 页 示屏、家电等场合。选用时要注意产品尺寸颜色,波长,功耗,亮度等。 图 3-6 6 位数码管 1.电路连接: 电路采

39、用共阳的接法,数码管电路用 2 个 74HC573,其中一个的 Q0-Q7 分别与 6 位 数码管的 A,B,C,D,E,F,G,DP 引脚相连,另一个的 Q0-Q5 与 6 位数码管的 1-6 引脚相连。 两个 74HC573 的 D0-D7 与单片机的 P0.0-P0.7 引脚相连。 图 3-7 7 段数码管 2.数码管编码表 (1)数码管共阳极码表 TABLE:0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e (2) 数码管共阳极码表 TABLE:0x3f,0x06,0x5b,

40、0x4f,0x66,0x6D,0x7D,0x07 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71 3.LED 数码管引脚定义 每一笔划都是对应一个字母表示 DP 是小数点。 正常显示的 LED 数码管,数码管的各个段码就要用驱动电路来驱动,才能显示出 我们要的数位,因此根据 LED 数码管不同的驱动方式,根据数码管的驱动方式,可以 本本 科科 毕毕 业业 设设 计计 第 15 页 共 43 页 分为静态显示和动态显示两类。 A、静态显示: 静态显示也称直流驱动。静态显示是指由一个单片机的 I/O 埠进行驱动每个数码 管的每一个段码,或者使用如 BCD 码二-十进

41、位进行驱动。静态驱动的优点是编程简单, 显示亮度高,缺点是占用 I/O 埠多。故实际应用时必须增加驱动器进行驱动,增加了 硬体电路的复杂性。 B、动态显示: 数码管动态最为广泛的一种显示方式之一是显示界面,它在是单片机中应用非常 广泛,动态显示是将所有 8 个显示笔划“a,b,c,d,e,f,g,dp “的数码管的的同名端连在 一起,同时增加位元选通控制电路为每个数码管的公共极 COM,各自独立的 I/O 线控制 位元选通由。 LED 数码管的 COM 端由分时轮流控制,受控制的数码管轮流显示,这就是所谓的动 态驱动。在轮流显示时,每位元数码管的点亮时间间隔为 12ms,由于发光二极体的 余辉

42、效应和人的视觉暂留现象,只要点亮速度快,不管是不是各位数码管是否同时点 亮,给人的感觉就是稳定的显示,不会让人感觉有闪烁的感觉,静态显示的效果和动 态显示的效果是一样的,能够节省大量的 I/O 埠,而且功耗更低。7 段 LED 数码管是利 用 7 个 LED(发光二极管)外加一个小数点的 LED 组合而成的显示设备。 3.63.6 键盘模块键盘模块 3.6.1 独立按键电路 独立按键电路有四个按键组成,分别接单片机 AT89C52 的 P3.4/T0,P3.5/T1、P3.6/WR、P3.7/RD 引脚相连。如图 3-8 所示。 本本 科科 毕毕 业业 设设 计计 第 16 页 共 43 页

43、图 3-8 独立按键电路 3.6.2 4X4 矩阵按键电路 电路由 16 个按键分四组组成,分别与单片机 AT89C52 的 P3.0/RXD,P3.1/TXD、P3.2/INT0、P3.3/INT1 引脚相连。44 矩阵键盘,以 P3.0P3.3 作输入线,以 P3.4P3.7 作输出线;数码管的 a,b,c,d,e,f,g 7 个端端 口接的是主芯片 AT89C52 的 P2 口从 P0.0 到 P0.6 端,在数码管上显示每个按键的 “0F”序号。如图 3-9 所示。 1)接口说明 接口 P3.0 控制 0 号,1 号,2 号,3 号开关; 接口 P3.1 控制 4 号,5 号,6 号,

44、7 号开关; 接口 P3.2 控制 8 号,9 号,A 号,B 号开关; 接口 P3.3 控制开关 C,D,E,F; P3.4P3.7 则为输出。 本本 科科 毕毕 业业 设设 计计 第 17 页 共 43 页 图 3-9 矩阵按键电路 当按下 0 号开关时,数码管显示为0111111 。 当按下 1 号开关时,数码管显示为1111001 。 当按下 2 号开关时,数码管显示为0110111 。 当按下 3 号开关时,数码管显示为1001111 。 当按下 4 号开关时,数码管显示为1100110 。 当按下 5 号开关时,数码管显示为1101101 。 当按下 6 号开关时,数码管显示为11

45、11101 。 当按下 7 号开关时,数码管显示为0000111 。 当按下 8 号开关时,数码管显示为1111111 。 当按下 9 号开关时,数码管显示为1101111 。 当按下开关 A 时,数码管显示为 1110111 。 当按下开关 B 时,数码管显示为 1111100 。 当按下开关 C 时,数码管显示为 0111001 。 当按下开关 D 时,数码管显示为 1011110 。 当按下开关 E 时,数码管显示为 1111001 。 当按下开关 F 时,数码管显示为 1110001 。 2)44 矩阵键盘工作原理 矩阵键盘又称为行列式键盘,是列线由 4 条 I/O 线组成,行线是由

46、4 条 I/O 线组 成的矩阵键盘。在列线和行线的重合的交叉点上,设置一个按键,这样就组成了 4X4 本本 科科 毕毕 业业 设设 计计 第 18 页 共 43 页 共 16 个按键。这种键盘的格局方方正正,而且可以大大地利用了 I/O 口。 3.6.3 数字按键电路 数字按键模块引脚 A,B,C,D 分别与单片机 AT89C52 的 P3.0/RXD,P3.1/TXD、P3.2/INT0、P3.3/INT1 引脚相连。1,2,3,4 引脚分别接单片机 AT89C52 的 P3.4/T0,P3.5/T1、P3.6/WR、P3.7/RD 引脚相连。如图 3-10 所示。 图 3-10 数字按键电

47、路 3.73.7 A/DA/D 转换模块转换模块 图 3-11 ADC0804 (1)芯片介绍 ADC0804 是一个 8 位、单通道、低价格 A/D 转换器,主要特点是:摸数转换时间大 约 100us,方便的 TTL 或 CMOS 标准接口,可以满足差分电压输入;具有参考电压输入 端;内含时钟发生器;单电源工作时(0V5V)输入信号电压范围是 0V5V,不需要 本本 科科 毕毕 业业 设设 计计 第 19 页 共 43 页 调零等等。 (引脚 1):片选信号。低电平有效,高电平时芯片不工作。 (引脚 2):外部读数据控制信号。此信号低电平时 ADC0804 把转换完成的数据加 载到 DB 口

48、。 (引脚 3):外部写数据控制信号。此信号的上升沿可以启动 ADC0804 的 A/D 转换 过程。 CLK IN(引脚 4):时钟输入引脚。ADC0804 使用 RC 振荡器作为 A/D 时钟, CLK IN 是振动 的输入端。 (引脚 5):转换结束输出信号。ADC0804 完成一次 A/D 转换后,此引脚输出一个 低脉冲。对单片机可以称为中断触发信号。 Vin(+) (引脚 6):输入信号电压的正极。 Vin(-) (引脚 7):输入信号电压的负极。可以连接到电源地。 AGND(引脚 8):模拟电源的地线。 Vref/2(引脚 9):参考电源输入端。参考电源取输入信号电压(最大值)的二

49、分 之一。例如输入信号电压是 0V5V 时,参考电源取 2.0V,输入信号电压是 0V4V 时, 参考电源取 2.0V。 DGND(引脚 10):数字电源的地线。 DB8DB0(引脚 11引脚 18):数字信号输出口,连接单片机的数据总线。 CLK R(引脚 19):时钟输入端。 VCC(引脚 20):5V 电源引脚。 (2)A/D 转换电路设计 ADC0804 芯片的 DB0-DB7 接单片机 AT89C52 的 P1.0-P1.7 引脚,CS 接 P3.2/INT0,RD 接 P3.7/RD,WR 接 P3.6/WR。CLK IN 接一个 0.1uF 电容在接到 VIN- ,CLK R 接 CLK IN,A GND 与 D GND 相连,在与 VIN-相连接地,D GND 串联两个 1k 的 电阻,在接高电平。ADC0808 内部带有输出锁存器,可以与 AT89C52 单片机直接相连。 本本 科科 毕毕 业业 设设 计计 第 20 页 共 43 页 图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1