基于单片机的环境采集系统原理图.doc_第1页
基于单片机的环境采集系统原理图.doc_第2页
基于单片机的环境采集系统原理图.doc_第3页
基于单片机的环境采集系统原理图.doc_第4页
基于单片机的环境采集系统原理图.doc_第5页
免费预览已结束,剩余37页可下载查看

下载本文档

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

文档简介

摘 要 III 摘摘 要要 本课题主要针对许多场合温度 湿度的监测与控制 研制了以 PC 机为上位机 单片机 为下位机的温湿度测控系统的软硬件设计 综合考虑系统的精度 效率以及经济性要求 这三个方面之后 最终确定下位机以 MCS 51 单片机为控制核心 选用性价比比较高的传感 器 实现了对温湿度的精确测量与准确控制 针对不同的参数 可以通过键盘人为设定所 期望的上 下限值 当单片机检测到温湿度有任何一个参数越限时 下位机可以通过 RS 232 实现和上位机的串行通讯 为了便于系统的调试 采用模块化设计 主要包括数据采集 模块 键盘显示模块 串行通讯模块以及数据处理等模块 关键词关键词 温度 湿度 传感器 单片机温度 湿度 传感器 单片机 Abstract Abstract The main topics for many places temperature humidity and detect and control has been developed for the PC Host Computer microcontroller for the next crew monitoring and control system hardware and software design Considered the accuracy efficiency and economic requirements of these three areas the final crews to the MCS 51 microcontroller for the control of the core use the relatively high cost sensors and gave temperature and humidity concentrations precision measurement and control accuracy Different parameters the keyboard can be expected to set a crop of upper and lower limits When the MCU to detect temperature and humidity concentrations have any more of a time when activated sound and light alarm but by controlling the solid state relay SCM open the implementing agencies in the corresponding compensation Under the crew can be realized through the RS 232 and PC serial communications In order to facilitate system debug modular design including data acquisition module keyboard modules serial communication module as well as data processing modules Keywords temperature humidity sensor single chip microcomputer 目 录 目 录 第一章 绪论 1 1 1 选题背景 1 1 2 设计内容和任务 1 第二章 总体方案的设计 2 2 1 系统的组成 2 2 2 硬件总体设计框图 2 2 3 技术要求 3 第三章 传感器的设计 4 3 1 温度传感器 4 3 1 1 DS18B20 内部结构 4 3 1 2 DS18B20 的工作时序 5 3 2 湿度传感器 6 3 2 1 IH3605 传感器的内部结构及引脚 7 3 2 2 IH3605 的主要技术指标 7 3 2 3 IH3605 的电压输出特性 7 3 3 CO2传感器 8 3 3 1 TGS4160 传感器介绍 8 3 3 2 TGS4160 内部结构 8 第四章 单片机系统设计 10 4 1 单片机 10 4 1 1 MCS 51 单片机的内部结构 10 4 1 2 MCS 51 单片机引脚及其功能 10 4 2 带有 I O 接口和计时器的静态 RAM8155 13 4 2 1 8155 的结构 13 4 2 2 8155 的引脚功能 13 4 2 3 8155 的命令字格式与状态字 14 4 3 ADC0809 转换芯片 15 4 3 1 ADC0809 的引脚及其功能 15 4 3 2 ADC0809 的内部结构 16 4 4 地址锁存器 74LS373 18 4 4 1 地址锁存器 74LS373 引脚 18 目 录 4 4 2 74LS373 引脚功能说明 18 4 5 人机接口 19 4 5 1 键盘 19 4 5 2 显示器 21 第五章 单元接口电路的设计 23 5 1 传感器接口电路 23 5 1 1 DS18B20 与单片机的接口设计 23 5 1 2 IH3605 传感器与单片机的接口设计 24 5 1 3 CO2 检测电路 25 5 2 单片机接口电路 25 5 2 1 MCS 51 和 8155 的扩展接口设计 25 5 2 2 ADC0809 与 8051 的连接 26 5 3 显示器 LED 与 MCS 51 单片机接口电路 27 5 4 报警电路 28 5 5 电源部分 28 第六章 软件电路的设计 30 6 1 软件总体流程图 30 6 2 部分程序 30 6 2 1 LED 的显示程序 30 6 2 2 8051 的主程序 31 6 2 3 复位设置 32 6 2 4 8155 的子程序 32 6 3 温度控制程序 32 结 束 语 35 致 谢 36 参考文献 37 附录 A 基于单片机的环境采集系统原理图 39 1 绪 论 第一章第一章 绪论绪论 1 11 1 选题背景选题背景 我国是人口和土地资源大国 人口和土地资源也是维系我们国家安定发 展的基础 而为了构造一个以人为本的和谐社会 改造我们身边的自环环境 是刻不容缓的事情 近年来传感器和计算机的结合对信息和自动化技术起着 重要的作用 目前 因为温室效应等因素 坏境检测已经成为一个不容忽视 的问题 本设计利用温度 湿度传感器 单片机等元件对环境进行采集检测 当单片机检测到温湿度有任何一个参数越限时 则启动声光报警 为了便于系 统的调试 采用模块化设计 主要包括数据采集模块 键盘显示模块 串行通 讯模块以及数据处理等模块 采用 LED 作为显示单元 LED 显示器具有价 格低 使用方便等优点 1 21 2 设计内容和任务设计内容和任务 用单片机实现环境参数 诸如温度 湿度等 的监测 并将这些信息进 行显示 通过对本课题的设计 掌握下列内容 1 掌握单片机器件的应用 2 能够熟练应用 Protel 绘制所设计的电路图 3 在掌握以上知识的基础上结合实际完成环境参数采集系统设计 2 总体方案的设计 第二章第二章 总体方案的设计总体方案的设计 2 12 1 系统的组成系统的组成 本系统从结构上由下到上分三级 第一级是下位机 即前端采集系统 第二级是中间 控制机 第三级是上位机 下位机由单片机 温 湿度和 CO2浓度传感器组成 其任务是 完成环境中温湿度等的测量 并且通过串行通信的方式向中间机传送测量数据 中间控 制机主要实现对下位机进行控制 实现对一个温室大棚的不同方位温湿度值和 CO2浓度值 的循环采集 并对其进行处理 显示 用户可通过中间控制机上的键盘输入温 湿度和 CO2浓度值的设定值 中间控制机将从下位机接收来的数值与其阀值进行比较并实现超限 报警指示 中间控制机还可通过串行通信的方式分别与下位或上位机进行数据和信息的 传输 单片机是本系统的核心 它控制本系统的各种功能 因此选择性能可靠的单片机就 显得尤为重要 考虑到满足功能要求 性价比 货源保证 开发手段等因素 根据设计 要求我们采用软件技术成熟 性价比高的 Intel 公司生产的 8051 内部设有 4K 字节的掩 模 ROM 程序存储器 MCS 51 和 8155 的连接不仅可为外设提供两个 8 位 I O 端口 A 口 和 B 口 和一个 6 位 I O 端口 C 口 也可为 CPU 提供一个 256 字节的 RAM 和一个 14 位定时器 计数器 温湿度传感器是本系统的测量单元 传感器性能的好坏直接影响到本系统性能的好 坏 为了尽量减小测量误差 首先我选用了测量精度较高的数字式温度传感器 DS18B20 它采用单总线结构 直接将所测温度转化为数字量输出 送入单片机进行数据处理 湿 度传感器 IH3605 其主要特点是采用恒压供电 内置放大电路 能输出与相对湿度成比例 关系的伏特级电压信号 响应速度快 重复性好 抗污染能力强 将其输出的信号经过 放大 A D 转换而送至单片机处理 最后选用 FIGARO 弗加逻 公司生产的一种固态电 化学型二氧化碳 CO2 传感器 该器件除具有体积小 寿命长 选择性和稳定性好等特 性外 同时还具有耐高湿和耐低温等特点 将其输出的信号经过放大 A D 转换而送至单 片机处理 在本系统中 采用 LED 作为显示单元 LED 显示器具有价格低 使用方便 又由于独 立式按键电路每一个按键开关占用一根 I O 口线 考虑本次设计使用 10 个键 采用行列 式 矩阵式 电路 2 22 2 硬件总体设计框图硬件总体设计框图 根据本次设计要求及方案的可行性分析 其基于单片机的环境参数采集系统总体硬 件设计框图如图 2 1 所示 2 总体方案的设计 图 2 1 基于单片机的环境参数采集系统总体硬件设计框图 2 32 3 技术要求技术要求 1 输入键盘 用以温度 湿度设定值等参数和操作命令 2 将整个系统进行模块划分和总体设计 6 位温度 湿度的显示器 3 要求显示时延不得大于 10s 4 要求在环境温度高于 30 时 进行报警 5 温度控制范围 25 55 控制精度 2 6 湿度控制范围 10 90 RH 控制精度 RH 7 工作电压 220V 10 3 传感器的设计 第三章第三章 传感器的设计传感器的设计 3 13 1 温度传感器温度传感器 传感器从使用的角度大致可分为接触式和非接触式两大类 在接触式和非接触式两 大类温度传感器中 相比运用多的是接触式传感器 非接触式传感器一般在比较特殊的 场合才使用 目前得到广泛使用的接触式温度传感器主要有热电式传感器 热电阻传感器可分为金属热电阻式和半导体热电阻式两大类 前者简称热电阻 后者简 称热敏电阻 常用的热电阻材料有铂 铜 镍 铁等 它具有高温度系数 高电阻率 化学 物理性能稳定 良好的线性输出特性等 常用的热电阻如 PT100 PT1000 等 近 年来各半导体厂商陆续开发了数字式的温度传感器 如 DALLAS 公司 DS18B20 MAXIM 公 司的 MAX6576 MAX6577 这些芯片的显著优点是与单片机的接口简单 如 DS18B20 该温 度传感器为单总线技术 MAXIM 公司的 2 种温度传感器一个为频率输出 一个为周期输出 其本质均为数字输出 这类器件测温的范围是 55 125 而且温度的测量精度在 2 左右 因此在本次设计中满足用户的需要 由于本课题的任务要求测量的范围为 25 55 测量的分辨率为 2 综合价 格以及后续的电路 决定采用数字式温度传感器 DS18B20 作为本课题的温度传感器 3 1 13 1 1 DS18B20DS18B20 内部结构内部结构 DS18B2O 是美国 DALLAS 半导体公司生产的可组网数字式温度传感器 具有 3 引脚 TO 92 小体积封装形式 可编程为 9 12 为 A D 转换精度 测量分辨率可达 0 0625 被测温度用符号扩展的 16 位数字量方式串行输出 其工作电源既可在远端引入 也可采 用寄生电源方式产生 多个 DS18B20 可以并联到 3 或 2 根线上 CPU 只需一根端口线就能 与诸多 DS18B20 通信 占用微处理器的端口较少 可节省大量的引线和逻辑电路 以上 特点使 DS18B20 非常适合于远距离多点温度检测系统中 DS18B20 内部结构如图 3 1 所示 主要有四部分组成 64 位光刻 ROM 温度传感器 非挥发的温度报警触发器 TH 和 TL 配 置寄存器 DS18B20 的三引脚 TO 92 封装中 引脚功能如表 3 1 所示 DS18B20 中的温度传感器完成对温度的测量 用 16 位符号扩展的二进制补码读数形 式提供 以 0 0625 LSB 形式表达 其中 S 为符号位 其温度值字节格式如图 3 2 例如 125 的数字量输出为 070DH 25 0625 的数字输出为 0191H 25 0625 的数字输出 为 FF6FH 55 的数字输出为 FC90H 高低温报警触发器 TH 和 TL 配置寄存器均由一个字节的 EEPROM 组成 使用一个存 储器功能命令可对 TH TL 或配置寄存器写入 其中配置寄存器的格式如图 3 3 R0 R1 决定温度转换的精度位数 R1R0 00 9 位精度 最大转换时间 引脚功能 DQ 数字信号输入 输出端 GND 电源地 VDD 外接供电电源输入端 表 3 1 DS18B20 引脚功能表 3 传感器的设计 93 75ms R1R0 01 10 位精度 最大转换时间 187 5 ms R1R0 10 11 位精度 最大转换时间 375 ms R1R0 11 12 位精度 最大转换时间 750 ms 未编程时默认为 12 位精度 高速暂存器是一个 9 字节的存储器 开始两个字节包含被测温度的数字量信 息 第 3 4 5 字节分别是 TH TL 配置寄存器的临时拷贝 每一次上电复位时被刷新 第 6 7 8 字节未用 表现为全逻辑 1 第 9 字节读出的是前面所有 8 个字节的 CRC 码 可用来保证通信正常 温度值低字节 3 2 2 2 1 2 0 2 1 2 2 2 3 2 4 2 Msb 温度值高字节 Lsb SSSSS 6 2 5 2 4 2 3 1 23 1 2 DS18B20DS18B20 的工作时序的工作时序 DS18B20 的一线工作协议流程是 初始化 ROM 操作指令 存储器操作指令 数据传 输 其工作时序包括初始化时序 写时序和读时序 如图 3 4 a b c 所示 0R1R011111 图 3 2 温度值字节格式 LsbMsb 图 3 3 配置寄存器的格式 图 3 1 DS18B20 内部结构图 64 位 ROM 和单 线接 口 存储器和控制器 高速 缓存 存储器 8 位 CRC 生成器 温度灵敏元件 低温触发器 TL 高温触发器 TH 配置寄存器 电 源 检 测 DQ VDD 3 传感器的设计 3 23 2 湿度传感器湿度传感器 测量空气湿度的方式很多 其原理是根据某种物质从其周围的空气中吸收水分后引起 的物理或化学性质的变化 间接地获得该物质的吸水量及周围空气的湿度 电容式 电阻 式和湿敏元件分别是根据其高分子材料吸湿后的介电常数 电阻率和体积随之发生变化 而进行湿度测量的 在本次设计中使用 HONEYWELL 公司生产的集成湿度传感器 IH3605 传 感器 其传感器采用集成电路技术 可在集成电路内部完成对信号的调整 由于其具有 精度高 线性好 互换性强等诸多优点 因此得到广泛的应用 3 传感器的设计 3 2 13 2 1 IH3605IH3605 传感器的内部结构及引脚传感器的内部结构及引脚 由于 IH3605 内部的两个热化聚合体层之间形成的平板电容器电容量的大小可随湿度 的不同发生变化 从而可完成对湿度信号的采集 热化聚合体层同时具有防御污垢 灰 尘 油及其它有害物质的功能 IH3605 的结构及引脚定义分别如图 3 5 a b 所 示 IH3605 采用 SIP 封装形式 a IH3605 结构示意图 b IH3605 引脚图 图 3 5 IH3605 引脚图 3 2 23 2 2 IH3605IH3605 的主要技术指标的主要技术指标 电源电压 4 5 8V 供电电流 200 A 5VDC 湿度范围 0 100 RH 精度 2 RH 0 100 RH 25 V 5VDC 互换性 5 RH 0 60 RH 8 RH 90 RH 线性度 0 5 RH 典型 重复性 0 5 RH 稳定度 1 RH 50 RH 5 年内 响应时间 15s 25 及空气缓慢流动环境下 工作温度 40 85 3 2 33 2 3 IH3605IH3605 的电压输出特性的电压输出特性 IH3605 的输出电压是供电电压 湿度及温度的函数 电源电压升高 输出电压将成 比例升高 在实际应用中 通过以下两个步骤可计算出实际的相对湿度值 1 首先根据下述计算公式 计算出 25 温度条件下相对湿 RH0 VOUT VDC 0 0062RH0 0 16 其中 VOUT为 IH3605 的电压输出值 VDC为 IH3605 的供电电压值 RH0为 25 时的相 对湿度值 2 进行温度补偿 计算出当前温度下的实际相对湿度值 RH RH RH0 1 0546 0 00216t 其中 RH 为实际的相对湿度值 t 为当前的温度值 单位为 3 传感器的设计 IH3605 的输出电压与相对湿度的关系曲线如图 3 6 所示 3 33 3 COCO2 2传感器传感器 在本次设计中 我们使用了 FIGARO 弗加逻 公司生产的一种固态电化学型二氧化 碳 CO2 传感器 TGS4160 该器件除具有体积小 寿命长 选择性和稳定性好等特性外 同时还具有耐高湿和耐低温等特点 因而可广泛用于自动通风换气系统或 CO2气体的长期 监测等应用场合 文中叙述了该传感器的内部结构和工作原理 给出了一个用 TGS4160 设计的专用模块的基本应用电路原理图 3 3 13 3 1 TGS4160TGS4160 传感器介绍传感器介绍 TGS4160 二氧化碳传感器是 FIGARO 弗加罗 公司生产的固态电化学型气体敏感元 件 这种二氧化碳传感器除具有体积小 寿命长 选择性和稳定性好等特点外 同时还 具有耐高湿低温的特性可广泛用于自动通风换气系统或是 CO2气体的长期监测等应用场合 但是 由于 TGS4160 的预热时间较长 一般为 2 小时 所以 该器件比较适合于在室 温下长时间通电连续工作 此外 TGS4160 传感器的主要技术参数如下 测量范围 0 5000ppm 使用寿命 2000 天 加热器电压 5 0 0 2VDC 加热器电流 250mA 加热器功耗 1 25W 内部热敏电阻 补偿用 100K 5 使用温度 10 50 使用湿度 5 95 RH 产品尺寸 最大外径 24mm 高 24mm 引脚长 5 8mm 3 3 23 3 2 TGS4160TGS4160 内部结构内部结构 TGS4160 二氧化碳传感器是一种内含热敏电阻的混合式 CO2敏感元件 其内部结构如 图 3 7 所示 该元件在两个电极之间充有阳离子固体电解质 它的阴极由锂碳酸盐和镀 金材料制成 而阳极只是镀金材料 该敏感元件的基衬是用对苯二酯聚乙烯和玻璃纤维 图 3 6 输出电压与湿度关系曲线 3 传感器的设计 加固 然后采用不锈钢网做圆柱型封装 元件的内层采用 100 目双层不锈钢网套在镀镍 铜环上 并用高强度树脂粘合剂与基衬固定在一起 其外层顶盖上又罩上了一层 60 目的 不锈钢网 为了达到降低干扰气体影响的目的 TGS4160 在内外两层不锈钢网之间还填充 有吸附材料 沸石 传感器的 6 个引脚通过 0 1mm 的箔导线与内部相连 其等效的内部 结构见图 所示 图中 阳极与传感器的第 3 脚 S 相连 阴极与传感器的第 4 脚 S 相连 Pt 加热器与传感器的第 1 6 脚相连 内部热敏电阻与传感器的第 2 5 脚相连 内部热敏电阻的作用是通过该电阻探测环境温度 以便对该传感器进行温度补偿 从而 使校正后的测量值更加准确 图 3 7 TGS4160 内部结构 4 单片机系统设计 第四章第四章 单片机系统设计单片机系统设计 4 14 1 单片机单片机 在本设计中 从经济上以及性能上考虑 我选用 8051 作为 CPU 8051 是 MCS 51 系列单 片机的一种型号 MCS 51 单片机的类型有 8051 8031 8751 等 8051 内部有 4K ROM 8751 内部有 4K EPROM 8031 片内无 ROM 除此之外三者内部结构引脚完全相 同 4 1 14 1 1 MCS 51MCS 51 单片机的内部结构单片机的内部结构 一个 8 位 CPU 一个片内振荡器及时钟电路 4K 字节 ROM 程序存储器 128 字节 RAM 数据存储器 两个 16 位定时器 计数器 可寻址 64K 外部数据存储器和 64K 外部程序存储器空间的控制电路 32 条可编程的 I O 线 四个 8 位并行 I O 端口 一个可编程全双工串行口 具有五个中断源 两个优先级嵌套中断结构 8051 单片机框图如图 4 1 所示 各功能部件由内部总线联接在一起 频率基准源 计数器 中断 控制 并行 I O 口 输入 输出 4 1 24 1 2 MCS 51MCS 51 单片机引脚及其功能单片机引脚及其功能 MCS 51 单片机都采用 40 引脚的双列直插封装方式 图 4 2 为引脚排列图 振荡器及 定时电路 8051CPU 4K 字节 ROM 128 字节 RAM 2 个 16 位定时 器 计数器 64K 总线扩 展控制 可编程 I O可编程 串行口 图 4 1 8051 单片机框图 4 单片机系统设计 1 电源 晶振及控制引脚说明如表 4 1 所示 表 4 1 电源 晶振及控制引脚说明表 引脚功能 Vss 接地 电源 引脚 Vcc 正常操作时为 5 伏电源 XTAL1 内部振荡电路反相放大器的输入端 是外接晶体的一个引脚 当 采用外部振荡器时 此引脚接地 晶振 引脚 XTAL2 内部振荡电路反相放大器的输出端 是外接晶体的另一端 当采 用外部振荡器时 此引脚接外部振荡源 控制 电源复用 引脚 RST VPD 当振荡器运行时 在此引脚上出现两个机器周期的高电平 由低 到高跳变 将使单片机复位 在 Vcc 掉电期间 此引脚可接上备 用电源 由 VPD 向内部提供备用电源 以保持内部 RAM 中的数据 2 输入 输出引脚 P0 0 P0 7 P1 0 P1 7 P2 0 P2 7 P3 0 P3 7 P0 口 P0 0 P0 7 是一个 8 位漏极开路型双向 I O 口 在访问外部存储器时 它是分时传送的低字节地址和数据总线 P0 口能以吸收电流的方式驱动八个 LSTTL 负载 图 4 2 MCS 51 引脚排列图 4 单片机系统设计 表 4 1 电源 晶振及控制引脚说明表 续 P1 口 P1 0 P1 7 是一个带有内部提升电阻的 8 位准双向 I O 口 能驱动 吸 收或输出电流 四个 LSTTL 负载 P2 口 P2 0 P2 7 是一个带有内部提升电阻的 8 位准双向 I O 口 在访问 外部存储器时 它输出高 8 位地址 P2 口可以驱动 吸收或输出电流 四个 LSTTL 负载 P3 口 P3 0 P3 7 是一个带有内部提升电阻的 8 位准双向 I O 口 能驱动 吸 收或输出电流 四个 LSTTL 负载 P3 口还用于第二功能请参看表 4 2 4 24 2带带 有有 I OI O 接口和计时器的静态接口和计时器的静态 RAM8155RAM8155 ALE PROG 正常操作时为 ALE 功能 允许地址锁存 提供把地址的低字节锁 存到外部锁存器 ALE 引脚以不变的频率 振荡器频率的 1 6 周期性地发出正脉冲信号 因此 它可用作对外输出的时钟 或 用于定时目的 但要注意 每当访问外部数据存储器时 将跳过 一个 ALE 脉冲 ALE 端可以驱动 吸收或输出电流 八个 LSTTL 电路 PSEN 外部程序存储器读选通信号输出端 在从外部程序存储取指令 或数据 期间 PSEN 在每个机器周期内两次有效 PSEN 同样 可以驱动八 LSTTL 输入 控制 电源复用引脚 EA Vpp 内部程序存储器和外部程序存储器选择端 当 EA Vpp 为高电平 时 访问内部程序存储器 当 EA Vpp 为低电平时 则访问外部 程序存储器 引脚第二功能信号名称 P3 0RXD 串行数据接收 P3 1TXD 串行数据发送 P3 2 外部中断 0 申请 P3 3 外部中断 1 申请 P3 4T0 定时 计数器0的外部输入 P3 5T1 定时 计数器1的外部输入 P3 6 外部 RAM 写选通 P3 7 外部 RAM 读选通 表 4 2 P3 口各引脚与第二功能表 4 单片机系统设计 8155 也是 Intel 公司研制的通用 I O 接口芯片 MCS 51 和 8155 相连不仅可为外设 提供两个 8 位 I O 端口 A 口和 B 口 和一个 6 位 I O 口 C 口 也可为 CPU 提供一个 256 字节的 RAM 和一个 14 位定时器 计数器 因此 8155 广泛应用于 MCS 51 系统中 4 2 14 2 1 81558155 的结构的结构 图 4 3 8155 引脚图及组成框图 8155 有 40 个引脚 采用双列直插封装 其引脚图和组成框图如图 4 3 所示 4 2 24 2 2 81558155 的引脚功能的引脚功能 1 地址 数据线 I O 口总线地址 数据线 I O 口总线功能如表 4 3 所示 表 4 3 所示 地址 数据线 I O 口总线功能表 引脚管脚功能 AD0 AD7 8 条 低 8 位地址线和数据线的共用输入总线 常和 MCS 51 单片机的 P0 口相连 用于分时传送地址数据信息 当 ALE 1 时 传送的 是地址 PA0 PA7 PB0 PB7 用于和外设之间传递数据 I O 口总线 22 条 PC0 PC5既可与外设传送数据 也可以作为 A B 口的控制联络线 2 控制总线 8 条 控制总线功能如表 4 4 所示 表 4 4 控制总线功能表 C B A AD0 12 PA0 21 AD1 13 PA1 22 AD2 14 PA2 23 AD3 15 PA3 24 AD4 16 PA4 25 AD5 17 PA5 26 AD6 18 PA6 27 AD7 19 PA7 28 PB0 29 CE 8 PB1 30 RD 9 PB2 31 WR 10 PB3 32 IO M 7 PB4 33 ALE 11 PB5 34 PB6 35 PB7 36 TIMEROU T 6 PC0 37 PC1 38 TIMERIN 3 PC2 39 PC3 1 PC4 2 RESET 4 PC5 5 8155 256字节 静态 RAM 14位 定时 计数器 TIMER IN TIMER OUT VCC 5 V VSS GND PA0 PA7 IO M CE ALE RD WR RESET AD0 AD7 PB0 PB7 PC0 PC7 4 单片机系统设计 引脚管脚功能 RESET 复位线 通常与单片机的复位端相连 复位后 8155 的 3 个端口都为输入方式 WR RD读 写线 控制 8155 的读 写操作 ALE 地址锁存线 高电平有效 它常和单片机的 ALE 端相连 在 ALE 的下降沿将单片 机 P0 口输出的低 8 位地址信息锁存到 8155 内部的地址锁存器中 因此 单片机 的 P0 口和 8155 连接时 无需外接锁存器 CS 片选线 低电平有效 IO M RAM 或 I O 口的选择线 当 0 时 选中 8155 的 256 B RAM 当 1 时 选中 8155 片内 3 个 I O 端口以及命令 状态寄存器和定时 计数器 TIMERIN TIMEROUT 定时 计数器的脉冲输入 输出线 TIMERIN 是脉冲输入线 其输入脉冲对 8155 内部的 14 位定时 计数器减 1 为输出线 当计数器计满回 0 时 8155 从该线输 出脉冲或方波 波形形状由计数器的工作方式决定 4 2 34 2 3 81558155 的命令字格式与状态字的命令字格式与状态字 芯片 8155 I O 口的工作方式的确定也是通过对 8155 的命令寄存器写入控制字来实 现的 8155 控制字的格式如图 4 4 所示 命令寄存器只能写入不能读出 也就是说 控制字只能通过指令 MOVX DPTR A 或 MOVX Ri A 写入命令寄存器 TM1TM2IEBIEA PC2 PC1PAPAPB A口方式 B口方式 B口 A口 计数器 方式 00 空操作 01 停止计数 10 计满后停止 11 开始计数 0 输入 1 输出 0 禁止中断 1 允许中断 00 11 01 10 方式1 A B 口基本 I O C口输入 方式2 A B 口基本 I O C口输出 方式3 A口选通 I O B口基本 I O 方式4 A B口选通 I O 图 4 4 8155 命令字格式 TIMER INTEBBBFINTEBINTEAABFINTRA A 口中断 请求标志 0 无中 断 1 有中 断 0 空 1 满 A 口 缓 冲 器 允许 A 口 中 断 0 禁止 1 允许 0 空 1 满 B 口 缓 冲 器 允许 B 口 中 断 0 禁止 1 允许 0 读状态字后或硬件复位 后 1 有定时器溢出中断 定时器 中 断 B 口中断 请求标志 0 无中 断 1 有中 断 图 4 5 8155 状态字格 式 4 单片机系统设计 状态寄存器中存放有状态字 状态字反映了 8155 的工作情况 状态字的各位定义 如图 4 5 所示 状态寄存器和命令寄存器是同一地址 状态寄存器只能读出不能写入 也就是说 状态字只能通过指令 MOVX A DPTR 或 MOVX A Ri 来读出 以此来了解 8155 的工作状态 4 34 3 ADC0809ADC0809 转换芯片转换芯片 ADC0809 是逐次比较式 8 位模数转换芯片 它是 CMOS 器件 其内部包括 8 路模拟开 关 以及地址锁存译码 有三条地址输入线 该芯片内部还有便于和微机数据总线相连 的三态输出锁存器 4 3 14 3 1 ADC0809ADC0809 的引脚及其功能的引脚及其功能 ADC0809 芯片有 28 条引脚 采用双列直插式封装 如图 4 6 所示 1 28 2 27 3 26 4 25 5 24 6 23 7 22 8 21 9 20 10 19 11 18 12 17 13 16 14 15 IN3 IN4 IN5 IN6 IN7 START EOC D8 OE CLK VCC REF GND D1 A D C 0 8 0 9 IN2 IN1 IN0 A B C ALE D7 D6 D5 D4 D0 REF D2 图 4 6 ADC0809 引脚图 4 单片机系统设计 其各引脚功能如表 4 5 所示 引脚功能 IN0 IN78 路模拟电压输入端 ALE 地址锁存允许信号输入端 START 启动转换脉冲输入端 该端所加信号的上升沿将所有内部寄存器清 0 下降沿开始进行 模数转换 CLK 时钟脉冲输入端 D7 D0数据输出端 D7 为高位 OE 输出允许端 高电平有效 该端为高电平时 打开三态输出缓冲器 输出转换结 果 UREF 参考电压正端 UREF 参考电压负端 4 3 24 3 2 ADC0809ADC0809 的内部结构的内部结构 1 ADC0809 内部结构如图 4 7 所 图 4 7 中多路开关可选通 8 个模拟通道 允许 8 路模拟量分时输入 共用一个 A D 转换器进行转换 地址锁存与译码电路完成对 A B C 三个地址位进行锁存和译码 其 译码输出用于通道选择 如表 4 2 所示 表 4 2 通道选择表 C B A 选择的通道 C B A 选择的通道 0 0 0 0 0 1 0 1 0 0 1 1 IN0 IN1 IN2 IN3 1 0 0 1 0 1 1 1 0 1 1 1 IN4 IN5 IN6 IN7 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 ADDA ADDB ADDC ALE SRA D A CLOCKSTART A D 8 D0 EOC OE D1 D2 D3 D4 D5 D6 D7 VREF VREF 图 4 7 ADC0809 内部结构 表 4 5 ADC0809 引脚功能 表 4 单片机系统设计 八位 A D 转换器是逐次逼近式 由控制与时序电路 逐次逼近寄存器 树状开关以 及 256K 电阻阶梯网络等组成 输出锁存器用于存放和输出转换得到的数字量 2 ADC0809 的工作时序图 ADC0809 的工作时序图如图 4 8 所示 4 44 4 地址锁存器地址锁存器 74LS37374LS373 74LS373 是带有三态门的八 D 锁存器 当使能信号线 OE 为低电平时 三态门处于导 通状态 允许 1Q 8Q 输出到 OUT1 OUT8 当 OE 端为高电平时 输出三态门断开 输出线 OUT1 OUT8 处于浮空状态 G 称为数据打入线 当 74LS373 用作地址锁存器时 首先应使 三态门的使能信号 OE 为低电平 这时 当 G 端输入端为高电平时 锁存器输出 1Q 8Q 状态和输入端 1D 8D 状态相同 当 G 端从高电平返回到低电平 下降沿 时 输 入端 1D 8D 的数据锁入 1Q 8Q 的八位锁存器中 当用 74LS373 作为地址锁存器时 它 们的 G 端可直接与单片机的锁存控制信号端 ALE 相连 在 ALE 下降沿进行地址锁存 4 4 14 4 1 地址锁存器地址锁存器 74LS37374LS373 引脚引脚 74LS373 外部引脚 如图 4 9 所示 START ALE 64 EOC OE D7 D0 图 4 8 ADC0809 工作时序图 4 单片机系统设计 4 4 24 4 2 74LS37374LS373 引脚功能说明引脚功能说明 引脚功能如表 4 3 表 4 3 74LS373 引脚功能表 引脚功能 D0 D7锁存器 8 位数据输入线 Q0 Q7锁存器 8 位数据输出线 GND 接地引脚 OE 片选信号引脚 G 锁存控制信号输入引脚 Vcc 电源引脚 5V 有效 4 54 5 人机接口人机接口 在单片机应用系统中 通常应具有人机对话的功能 能随时发出各种控制命令和数 据输入 能及时报告应用系统的运行状态和运行结果 因此 键盘和显示器是很关键的 部件 这些设备是构成人机对话的一种基本方式 本节我们将简述键盘和显示器的工作 原理及与单片机的接口技术 4 5 14 5 1 键盘键盘 单片机系统中 键盘可分为独立式键盘和矩阵式键盘 考虑本设计中使用按键较多 图 4 9 74LS373 外部引脚图 4 单片机系统设计 采用矩阵式 也称行列式 键盘 1 矩阵式键盘的结构及原理 矩阵式键盘由行线和列线组成 按键位于行 列线的交叉点上 其结构如图 4 10 所示 由图可知 一个 3 4 的行 列结构可以构成一个含有 12 个按键的键盘 显然 在 按键数量较多时 矩阵式键盘较之独立式按键键盘要节省很多 I O 口 矩阵式键盘中 行 列线分别连接到按键开关的两端 行线通过上拉电阻接到 5V 上 当无键按下时 行线处于高电平状态 当有键按下时 行 列线将导通 此时 行 线电平将由与此行线相连的列线电平决定 这是识别按键是否按下的关键 然而 矩阵 键盘中的行线 列线和多个键相连 各按键按下与否均影响该键所在行线和列线的电平 各按键间将相互影响 因此 必须将行线 列线信号配合起来作适当处理 才能确定闭 合键的位置 2 矩阵式键盘按键的识别 识别按键的方法很多 其中 最常见的方法是扫描法 图 4 10 中 8 号键的识别为例 来说明扫描法识别按键的过程 按键按下时 与此键相连的行线与列线导通 行线在无键按下时处在高电平 显然 如果让所有的列线也处在高电平 那么 按键按下与否不会引起行线电平的变化 因此 必须使所有列线处在低电平 只有这样 当有键按下时 该键所在的行电平才会由高电 平变为低电平 CPU 根据行电平的变化 便能判定相应的行有键按下 8 号键按下时 第 2 行一定为低电平 然而 第 2 行为低电平时 能否肯定是 8 号键按下呢 回答是否定的 因为 9 10 11 号键按下同样使第 2 行为低电平 为进一步确定具体键 不能使所有列 线在同一时刻都处在低电平 可在某一时刻只让一条列线处于低电平 其余列线均处于 高电平 另一时刻 让下一列处在低电平 依此循环 这种依次轮流每次选通一列的工 作方式称为键盘扫描 采用键盘扫描后 再来观察 8 号键按下时的工作过程 当第 0 列 处于低电平时 第 2 行处于低电平 而第 1 2 3 列处于低电平时 第 2 行却处在高电 平 由此可判定按下的键应是第 2 行与第 0 列的交叉点 即 8 号键 3 键盘的编码 对于独立式按键键盘 因按键数量少 可根据实际需要灵活编码 对于矩阵式键盘 按键的位置由行号和列号唯一确定 因此可分别对行号和列号进行二进制编码 然后将 两值合成一个字节 高 4 位是行号 低 4 位是列号 如图 4 13 中的 8 号键 它位于第 2 行 第 0 列 因此 其键盘编码应为 20H 采用上述编码对于不同行的键离散性较大 不 利于散转指令对按键进行处理 因此 可采用依次排列键号的方式对安排进行编码 以 图 4 13 中的 3 4 键盘为例 可将键号编码为 01H 02H 03H 0EH 0FH 10H 等 12 个 键号 编码相互转换可通过计算或查表的方法实现 4 键盘的工作方式 图 4 10 矩阵式键盘结构 4 单片机系统设计 在单片机应用系统中 键盘扫描只是 CPU 的工作内容之一 CPU 对键盘的响应取决于 键盘的工作方式 键盘的工作方式应根据实际应用系统中 CPU 的工作状况而定 其选取 的原则是既要保证 CPU 能及时响应按键操作 又不要过多占用 CPU 的工作时间 通常 键盘的工作方式有三种 即编程扫描 定时扫描和中断扫描 1 编程扫描方式 编程扫描方式是利用 CPU 完成其它工作的空余时间 调用键盘扫描子程序来响应键 盘输入的要求 在执行键功能程序时 CPU 不再响应键输入要求 直到 CPU 重新扫描键 盘为止 2 定时扫描方式 定时扫描方式就是每隔一段时间对键盘扫描一次 它利用单片机内部的定时器产生 一定时间 例如 10 ms 的定时 当定时时间到就产生定时器溢出中断 CPU 响应中断后 对键盘进行扫描 并在有键按下时识别出该键 再执行该键的功能程序 3 中断扫描方式 采用上述两种键盘扫描方式时 无论是否按键 CPU 都要定时扫描键盘 而单片机 应用系统工作时 并非经常需要键盘输入 因此 CPU 经常处于空扫描状态 为提高 CPU 工作效率 可采用中断扫描工作方式 其工作过程如下 当无键按下时 CPU 处理自己的工作 当有键按下时 产生中断请求 CPU 转去执行键盘扫描子程序 并识别键号 4 5 24 5 2 显示器显示器 常用的 LED 显示器有 LED 状态显示器 俗称发光二极管 LED 七段显示器 俗称 LED 和 LED 十六段显示器 发光二极管可显示两种状态 用于系统状态显示 LED 用于 数字显示 LED 十六段显示器用于字符显示 本节重点介绍 LED 七段显示器 1 LED 结构 LED 由 8 个发光二极管 以下简称字段 构成 通过不同的组合可用来显示数字 0 9 字符 A F H L P R U Y 符号 及小数点 LED 的外型结构如图 4 11 a 所示 LED 又分为共阴极和共阳极两种结构 分别如图 4 11 b 和图 4 11 c 所示 a 引脚图 b 共阴极 c 共阳极 图 4 11 七 八 段 LED 显示器 10 9 8 7 6 g f GND a b 1 2 3 4 5 dp e d GND c dp a b c d e f g DD 5V 4 单片机系统设计 2 LED 工作原理 共阳极 LED 的 8 个发光二极管的阳极 二极管正端 连接在一起 通常 公共阳极 接高电平 一般接电源 其它管脚接段驱动电路输出端 当某段驱动电路的输出端为低 电平时 则该端所连接的字段导通并点亮 根据发光字段的不同组合可显示出各种数字 或字符 此时 要求段驱动电路能吸收额定的段导通电流 还需根据外接电源及额定段 导通电流来确定相应的限流电阻 共阴极 LED 的 8 个发光二极管的阴极 二极管负端 连接在一起 通常 公共阴极 接低电平 一般接地 其它管脚接段驱动电路输出端 当某段驱动电路的输出端为高电 平时 则该端所连接的字段导通并点亮 根据发光字段的不同组合可显示出各种数字或 字符 此时 要求段驱动电路能提供额定的段导通电流 还需根据外接电源及额定段导 通电流来确定相应的限流电阻 3 LED 字形编码 要使 LED 显示出相应的数字或字符必须使段数据口输出相应的字形编码 对照图 7 10 a 字型码各位定义如下 数据线 D0 与 a 字段对应 D1 字段与 b 字段对应 依此类推 如使用共阳极 LED 数据为 0 表示对应字段亮 数据为 1 表示对应字段暗 如使用共阴极 LED 数据为 0 表示对应字段暗 数据为 1 表示对应字段亮 如要显示 0 共阳极 LED 的字型编码应 为 11000000B 即 C0H 共阴极 LED 的字型编码应为 00111111B 即 3FH 依此类推 可求得 LED 字形编码如表 4 4 所示 表 4 4 LED 字型编码表 字型共阳极码共阴极码字型共阳极码共阴极码 0COH3FH990H6FH 1F9H06HA88H77H 2A4H5BHB83H7CH 3B0H4FHCC6H39H 499H66HDA1H5EH 592H6DHE86H79H 682H7DHF84H71H 7F8H07H 灭 FFH00H 880H7FH 4 LED 七段 LED 有静态显示和动态显示两种方式 下面分别加以叙述 静态显示是指 LED 显示某一字符时 相应的发光二极管恒定导通或恒定截止 这种显示 方式的各位 LED 相互独立 公共端恒定接地 共阴极 或接正电源 共阳极 每个 LED 的 8 个字段分别与一个 8 位 I O 口地址相连 I O 口只要有段码输出 相应字符即显示出 来 并保持不变 直到 I O 口输出新的段码 采用静态显示方式 较小的电流即可获得 较高的亮度 且占用 CPU 时间少 编程简单 显示便于监测和控制 但其占用的口线多 硬件电路复杂 成本高 只适合于显示位数较少的场合 动态显示是一位一位地轮流点亮各位 LED 这种逐位点亮显示器的方式称为位扫描 通常 各位 LED 的段选线相应并联在一起 由一个 8 位的 I O 口控制 各位的位选线 4 单片机系统设计 公共阴极或阳极 由另外的 I O 口线控制 动态方式

温馨提示

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

评论

0/150

提交评论