基于单片机酒精浓度测试毕业论文.doc_第1页
基于单片机酒精浓度测试毕业论文.doc_第2页
基于单片机酒精浓度测试毕业论文.doc_第3页
基于单片机酒精浓度测试毕业论文.doc_第4页
基于单片机酒精浓度测试毕业论文.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机酒精浓度测基于单片机酒精浓度测 试毕业论文试毕业论文 目 录 引言 1 1 绪论 2 1 1 酒精浓度检测仪开发背景 2 1 2 酒精浓度检测仪的发展 2 1 3 酒精浓度检测仪设计内容 2 2 方案器件简介 3 2 1 MCU 选择的简介 3 2 2 数模转换器的简介 5 2 3 时钟芯片的简介 7 2 4 液晶显示器的简介 8 3 总体方案设计 9 3 1 STC89C52 单片机 9 3 2 ADC0832 数模转换 10 3 3 AT24C02 存储器 10 3 4 LCD1602 液晶显示 10 3 5 编译软件介绍 12 4 硬件设计 13 4 1 最小系统的实现 13 4 2 数据采集设计 15 4 3 A D 转换设计 16 4 4 按键设计 16 4 5 外围扩充存储器电路 17 4 6 时钟芯片电路 18 4 7 LCD1602 液晶显示设计 19 4 8 报警设计 21 4 9 电源电路设计 22 桂林电子科技大学毕业设计 论文 报告纸 5 软件设计 22 5 1 编译语言的选择 22 5 2 主程序模块 23 5 3 A D 转换模块 23 5 4 按键输入模块 24 5 5 时钟模块 24 5 6 液晶显示输出模块 26 5 7 外围存储模块 27 6 系统调试 28 6 1 系统硬件调试 28 6 1 1 元器件的焊接 28 6 1 2 电路测试 28 6 2 系统软件调试 29 6 3 系统整体调试 29 7 结束语 29 谢 辞 31 参考文献 32 附 录 33 附录一 硬件设计仿真图 33 附录二 硬件设计原理图和 PCB 图 34 附录三 检测程序 35 桂林电子科技大学毕业设计 论文 报告纸 第 1 页 共 51 页 引言 随着中国经济的高速发展 人民生活水平的迅速提高 中国逐渐步入 汽车社会 酒后驾驶行为所造成事故越来越多 对社会的影响也越来越大 酒精正在成为越来越 凶残的 马路杀手 越来越多的交通事故在我们的身边发生 让人心痛 经济的发展 每个人都希望人的安全意识也该发展 此外 由交通事故造成的经济损失也相当惊人 据事故调查统计 超过半数的车祸与饮酒有关 在全国各地加强查处酒后驾驶的力度 以减少由酒后驾驶造成的恶性交通事故 要查处就涉及到检测人体内的酒精含量和使 用设备来进行检测的问题 本文研究设计了一种用于公共场所具有检测及超限报警功能的酒精浓度智能测试 仪 其设计方案基于 89C52 单片机 MQ3 酒精浓度传感器 系统将传感器输出信号通过 A D 转换电路调理后 经由单片机进行数据处理 最后由 LCD 显示酒精浓度值 从而让 驾车的人知道自己该在什么情况下可以开车 这是一个在现代生活很实用 很负责的 一个设计 给社会带来福音 桂林电子科技大学毕业设计 论文 报告用纸 第 2 页 共 51 页 1 绪论 1 1 酒精浓度检测仪开发背景 酒精的重要作用 是逐渐使得脑部及神经系统反应迟钝 这也是许多人喜欢适 量饮酒的主要原因 喝一 两杯酒对人有镇定或松弛的作用 即使是少量的酒精 也 没有刺激振奋的作用 这跟许多人的想法正好相反 然而 酒精有时会造成抑制力明 显减弱 这会导致创造力的出现 或者是有时候会导致实际的侵略攻击性行为 根据 WHO 数据 全球 2003 年的人均纯酒精消费量为 6 2L 其中欧洲地区人均达 11 9L 美洲地区人均为 8 7L 俄罗斯及其周边的东欧国家酒精消费量最高 其次为欧 洲其他国家 在人均国民生产总值 GDP 低于 7000 美元的低收入国家 酒精消费量 与人均 GDP 相关 GDP 越高酒精消费量越高 受到酒精影响的司机通常会有如下特征 对信号灯反应慢 逆向行驶 摇摆不定 突然转向 飘忽不定或在道路中线驾驶 乱踩刹车 转弯幅度大 蛇形 没有原因就 停车 开车速度极慢 突然转弯或违法转弯 天黑时不开前灯 据统计 驾驶员酒后 开车 其发生交通事故的比率为没有饮酒情况下的 16 倍 由日常道路交通安全违法行 为和交通肇事案例来看 机动车驾驶员酒后驾车约占 38 6 而摩托车交通肇事中 酒 后驾驶的比例则高达 72 3 酒后驾驶让人付出了惨痛的代价 为了避免类似事故的发生 酒精浓度检测仪随 之产生 1 2 酒精浓度检测仪的发展 以对气体中酒精含量进行检测的设备有五种基本类型 即 燃料电池型 电化学 半导体型 红外线型 气体色谱分析型 比色型 但由于价格和使用方便的原因 目 前 截止 2009 年 8 月 常用的只有燃料电池型 电化学型 和半导体型两种 燃料电池是当前全世界都在广泛研究的环保型能源 它可以直接把可燃气体转变 成电能 而不产生污染 酒精传感器只是燃料电池的一个分支 燃料电池酒精传感器 采用贵金属白金作为电极 在燃烧室内充满特种催化剂 使进入燃烧室内的酒精充分 燃烧转变为电能 也就是在两个电极上产生电压 电能消耗在外接负载上 此电压与 进入燃烧室内气体的酒精浓度成正比 与半导体型相比 燃料电池型呼气酒精测试仪具有稳定性好 精度高 抗干扰性 好的优点 但是由于燃料电池酒精传感器的结构要求非常精密 制造难度相当大 目 前 2009 年 只有美国 英国 德国等少数几个国家能够生产 加上材料成本高 因 此价格相当昂贵 是半导体酒精传感器的几十倍 1 3 酒精浓度检测仪设计内容 本论文主要完成酒精浓度检测仪软件设计 设计内容包括 A D 转换器程序 控制 程序 超标报警 键盘检测 数据显示等 本系统采用单片机为控制核心 以实现便携式酒精浓度检测仪的基本控制功能 桂林电子科技大学毕业设计 论文 报告用纸 第 3 页 共 51 页 系统主要功能内容包括 数据处理 时间设置 开始测量 超标报警 键盘检测 本系统设计采用功能模块化的设计思想 本论文内容分为以下几个章节 设计器 件简介和选择 硬件的设计 软件设计和系统调试 2 方案器件简介 硬件设计部分主要包括 MCU A D 时钟芯片 LCD 外围扩展数据 RAM 等芯片的 选择 以下做一些器件的比较 2 1 MCU 选择的简介 本系统采用单片机为控制核心 单片机 MCU 主要有 51 基本型和 52 增强型 而相 比之下 52 型比 51 型功能更为强大 ROM 和 RAM 存储空间更大 52 还兼容 51 指令系统 基于本系统设计内容的需要 综合考虑后 我们选择单片机 STC89C52 为控制核心 主 要基于考虑 STC89C52 是无法解密低功耗 超低价高速 高可靠强抗静电 强抗干扰 功 能强大的单片机 STC89C52 有 40 个引脚 32 个外部双向输入 输出 I O 端口 同时内含 2 个外 中断口 3 个 16 位可编程定时计数器 2 个全双工串行通信口 2 个读写口线 片内振 荡器及时钟电路 89C5X 可以按照常规方法进行编程 也可以在线编程 同时 STC89C52 可降至 0Hz 的静态逻辑操作 并支持两种软件可选的节电工作模式 空闲方 式停止 CPU 的工作 但允许 RAM 定时 计数器 串行通信口及中断系统继续工作 掉 电方式保存 RAM 中的内容 但振荡器停止工作并禁止其他所有部件工作直到下一个硬 件复位 其将通用的微处理器和 Flash 存储器结合在一起 特别是可反复擦写的 Flash 存储器可有效地降低开发本 STC 单片机有 PDIP PQFP TQFP 及 PLCC 等三种封装形式 以适应不同产品的需求 STC89C52 单片机单片机引脚功能 如图 2 1 Vcc 电源电压 GND 地 图 2 1 单片机引脚图 P0 口 P0 口是一组 8 位漏极开路型双向 I O 口 也即地址 数据总线复用口 作 为输出口用时 每位能吸收电流的方式驱动 8 个 TTL 逻辑门电路 对端口 P0 写 1 时 可作为高阻抗输入端用 桂林电子科技大学毕业设计 论文 报告用纸 第 4 页 共 51 页 在访问外部数据存储器或程序存储器时 这组口线分时转换地址 低 8 位 和数 据总线复用 在访问器件激活内部上拉电阻 在 Flash 编程时 P0 口接收指令字节 而在程序校验时 输出指令字节 校验时 要求外接上拉电阻 P1 口 P1 是一个带内部上拉电阻的 8 位双向 I O 口 P1 的输出缓冲级可驱动 吸 收或输出电流 4 个 TTL 逻辑门电路 对端口写 1 通过内部的上拉电阻把端口拉到 高电平 此时可作输入口 作输入口使用时 因为内部存在上拉电阻 某个引脚被外 部信号拉低时会输出一个电流 IIL 与 AT89C51 不同之处是 P1 0 和 P1 1 还可分别作为定时 计数器 2 的外部计数输入 P1 0 T2 和输入 P1 1 T2EX 参见表 2 1 Flash 编程和程序校验期间 P1 接收低 8 位地址 表 2 1 为 P1 0 和 P1 1 的第二 功能 表 2 1 P1 0 和 P1 1 的第二功能 P2 口 P2 是一个带有内部上拉电阻的 8 位双向 I O 口 P2 的输出缓冲级可驱 吸收或输出电流 4 个 TTL 逻辑门电路 对端口 P2 写 1 通过内部的上拉电阻把 端口拉到高电平 同时可作输入口 作输入口使用时 因为内部存在上拉电阻 某个 引脚被外部信号拉低时会输出一个电流 IIL 在访问外部程序存储器或 16 位地址的外部数据存储器 例如执行 MOV DPTR 指令 时 P2 口送出高 8 位地址数据 在访问 8 位地址的外部数据存储器 如执行 MOV RI 指 令 时 P2 口输出 P2 锁存器的内容 Flash 编程或校验时 P2 亦接收高位地址和一些控制信号 P3 口 P3 口时一组带有内部上拉电阻的 8 位双向 I O 口 P3 口输出缓冲级可驱 动 吸收或输出电流 4 个 TTL 逻辑门电路 对 P3 口写入 1 时 它们被内部上拉电 阻拉高并可作为输入端口 此时 被外部拉低的 P3 口将用上拉电阻输出电流 IIL P3 口作为一般的 I O 口线外 更重要的用途是它的第二功能 如表 2 2 所示 此外 P3 口还接收一些用于 Flash 闪速存储器编程和程序校验的控制信号 RST 复位输入 当振荡器工作时 RST 引脚出现两个机器周期以上高电平将使单 片机复位 ALE 当访问外部程序存储器或数据存储器时 ALE 地址锁存允许 输出脉冲用 于锁存地址的低 8 位字节 一般情况下 ALE 仍以时钟振荡频率的 1 6 输出固定的脉冲 信号 因此它可对外输出时钟或用于定时目的 要注意的是 每当访问外部数据存储 器时将跳过一个 ALE 脉冲 引引脚脚号号功功能能特特性性 P1 0T2 定时 计数器2外部计数脉冲输入 时钟输出 P1 1T2EX 定时 计数2捕获 重装载触发和方向控制 桂林电子科技大学毕业设计 论文 报告用纸 第 5 页 共 51 页 表 2 2 P3 口第二功能 端口引脚第二功能 P3 0RXD 串行输入口 P3 1TXD 串行输出口 P3 2 外中断 0 0 P3 3 外中断 1 1 P3 4T0 定时 计数器 0 P3 5T1 定时 计数器 1 P3 6 外部数据存储器写选通 P3 7 外部数据存储器读选通 对 Flash 存储器编程器件 改引脚还用于输入编程脉冲 如有必要 可通过对特殊功能寄存器 SFR 区中的 8EH 单元的 D0 位复位 可禁 止 ALE 操作 该位置复位后 只有一条 MOVX 和 MOVC 指令才能将 ALE 激活 此外 该 引脚会被微弱拉高 单片机执行外部程序时 应设置 ALE 禁止位无效 程序储存允许 输出是外部程序存储器的读选通信号 当 89C5X 单片机由外部程序存储器取指令 或数据 时 每个机器周期两次 有效 即输出 两个脉冲 在次期间 当访问外部数据存储器 将跳过两次 信号 VPP 外部访问允许 欲使 CPU 仅访问外部程序存储器 地址为 0000H FFFH 端必须保持低电平 接地 需要注意的是 如果加密位 LB1 被编程 复位时 内部会锁存 端状态 如 端为高电平 接 Vcc 端 CPU 则执行内部程序存储器中的指令 Flash 存储器编程时 该引脚加上 12V 的编程允许电源 Vpp 当然这必须是该器件 是使用 12V 编程电压 Vpp XTAL1 振荡器反相放大器及内部时钟发生器的输入端 XTAL2 振荡器反相放大器的输出端 2 2 数模转换器的简介 实现 A D 转换的基本方法很多 有计数法 逐次逼近法 双斜积分法和并行转换 法 由于逐次逼近式 A D 转换具有速度 分辨率高等优点 而且采用这种方法的 ADC 芯片成本低 所以我们采用逐次逼近式 A D 转换器 逐次逼近型 ADC 包括 1 个比较器 一个模数转换器 1 个逐次逼近寄存器 SAR 和 1 个逻辑控制单元 逐次逼近型是将 采样信号和已知电压不断进行比较 一个时钟周期完成 1 位转换 依次类推 转换完成 后 输出二进制数 这类型 ADC 的分辨率和采样速率是相互牵制的 优点是分辨率低 于 12 位时 价格较低 采样速率也很好 ADC0832 模数转换器具有 8 位分辨率 双通道 A D 转换 输入输出电平与 桂林电子科技大学毕业设计 论文 报告用纸 第 6 页 共 51 页 TTL CMOS 相兼容 5V 电源供电时输入电压在 0 5V 之间 工作频率为 250KHZ 转换 时间为 32 微秒 一般功耗仅为 15MW 等优点 适合本系统的应用 所以我们采用 ADC0832 为模数转换器件 ADC0832 具有以下特点 8 位分辨率 双通道 A D 转换 输入输出电平与 TTL CMOS 相兼容 5V 电源供电时输入电压在 0 5V 之间 工作频率为 250KHZ 转换时间为 32 S 一般功耗仅为 15mW 8P 14P DIP 双列直插 PICC 多种封装 商用级芯片温宽为 0 度 to 70 度 工业级芯片温宽为 40 度 to 85 度 芯片 接口说明 CS 片选使能 低电平芯片使能 CH0 模拟输入通道 0 或作为 IN 使用 CH1 模拟输入通道 1 或作为 IN 使用 GND 芯片参考 0 电位 地 DI 数据信号输入 选择通道控制 DO 数据信号输出 转换数据输出 CLK 芯片时钟输入 Vcc REF 电源输入及参考电压输入 复用 ADC0809 是采样分辨率为 8 位的 以逐次逼近原理进行模 数转换的器件 其内部 有一个 8 通道多路开关 它可以根据地址码锁存译码后的信号 只选通 8 路模拟输入 信号中的一个进行 A D 转换 主要特点 DC0809 是 CMOS 单片型逐次逼近式 A D 转换器 内部结构如图 13 22 所示 它由 8 路模拟开关 地址锁存与译码器 比较器 8 位开关树型 D A 转换器 逐次逼近 ADC0809 芯片有 28 条引脚 采用双列直插式封装 下面说明各引脚功能 IN0 IN7 8 路模拟量输入端 8 位数字量输出端 ADDA ADDB ADDC 3 位地址输入线 用于选通 8 路模拟输入中的一路 ALE 地址锁存允许信号 输入 高电平有效 START A D 转换启动脉冲输入端 输入一个正脉冲 至少 100ns 宽 使其启动 脉冲上升沿使 0809 复位 下降沿启动 A D 转换 EOC A D 转换结束信号 输出 当 A D 转换结束时 此端输出一个高电平 桂林电子科技大学毕业设计 论文 报告用纸 第 7 页 共 51 页 转换期间一直为低电平 OE 数据输出允许信号 输入 高电平有效 当 A D 转换结束时 此端输入一 个高电平 才能打开输出三态门 输出数字量 CLK 时钟脉冲输入端 要求时钟频率不高于 640KHZ REF REF 基准电压 Vcc 电源 单一 5V GND 地 2 3 时钟芯片的简介 DS1302 是 DALLAS 公司推出的涓流充电时钟芯片 内含有一个实时时钟 日历和 31 字节静态 RAM 通过简单的串行接口与单片机进行通信实时时钟 日历电路 提供秒分时 日日期 月年的信息 每月的天数和闰年的天数可自动调整时钟操作可通过 AM PM 指示 决定采用 24 或 12 小时格式 DS1302 与单片机之间能简单地采用同步串行的方式进行 通信 仅需用到三个口线 1 RES 复位 2 I O 数据线 3 SCLK 串行时钟 时钟 RAM 的读 写数据以一个字节或多达 31 个字节的字符组方式通信 DS1302 工作时功耗很低 保持 数据和时钟信息时功率小于 1mW DS1302 是由 DS1202 改进而来 增加了以下的特性 双 电源管脚用于主电源和备份电源供应 Vcc1 为可编程涓流充电电源附加七个字节存储器 它 广泛应用于电话传真便携式仪器以及电池供电的仪器仪表等产品领域 8 位暂存数据存储 RAM 使用串行 I O 口方式使得管脚数量最少 工作电压 2 0 5 0V 工作电流 2 0V 时 小于 300nA 读 写时钟或 RAM 数据时有两种传送方式单字节传送和多字节传送字符组方式 8 脚 DIP 封装或可选的 8 脚 SOIC 封装根据表面装配 简单 3 线接口 与 TTL 兼容 Vcc 5V 可选工业级温度范围 40 85 图 2 1 DS1302 引脚图 图 2 1 示出 DS1302 的引脚排列 其中 Vcc1 为后备电源 VCC2 为主电源 在主电源 关闭的情况下 也能保持时钟的连续运行 DS1302 由 Vcc1 或 Vcc2 两者中的较大者供 桂林电子科技大学毕业设计 论文 报告用纸 第 8 页 共 51 页 电 当 Vcc2 大于 Vcc1 0 2V 时 Vcc2 给 DS1302 供电 当 Vcc2 小于 Vcc1 时 DS1302 由 Vcc1 供电 X1 和 X2 是振荡源 外接 32 768kHz 晶振 RST 是复位 片选线 通过把 RST 输入驱动置高电平来启动所有的数据传送 RST 输入有两种功能 首先 RST 接通 控制逻辑 允许地址 命令序列送入移位寄存器 其次 RST 提供终止单字节或多字节 数据的传送手段 当 RST 为高电平时 所有的数据传送被初始化 允许对 DS1302 进行 操作 如果在传送过程中 RST 置为低电平 则会终止此次数据传送 I O 引脚变为高阻 态 上电运行时 在 Vcc 2 5V 之前 RST 必须保持低电平 只有在 SCLK 为低电平时 才能将 RST 置为高电平 I O 为串行数据输入输出端 双向 SCLK 始终是输入端 根据上述介绍和这次设计的要求 我选择使用 DS1302 作为这次设计的时钟芯片 如图 2 1 2 4 液晶显示器的简介 带中文字库的 128X64 是一种具有 4 位 8 位并行 2 线或 3 线串行多种接口方式 内部含有国标一级 二级简体中文字库的点阵图形液晶显示模块 其显示分辨率为 128 64 内置 8192 个 16 16 点汉字 和 128 个 16 8 点 ASCII 字符集 利用该模块灵 活的接口方式和简单 方便的操作指令 可构成全中文人机交互图形界面 可以显示 8 4 行 16 16 点阵的汉字 也可完成图形显示 低电压低功耗是其又一显著特点 由 该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比 不论硬件电路结 构或显示程序都要简洁得多 且该模块的价格也略低于相同点阵的图形液晶模块 基 本特性 低电源电压 VDD 3 0 5 5V 2 显示分辨率 128 64 点 内置汉字字库 提供 8192 个 16 16 点阵汉字 简繁体可选 内置 128 个 16 8 点阵字符 2MHZ 时钟频率 显示方式 STN 半透 正显 驱动方式 1 32DUTY 1 5BIAS 视角方向 6 点 背光方式 侧部高亮白色 LED 功耗仅为普通 LED 的 1 5 1 10 通讯方式 串行 并口可选 内置 DC DC 转换电路 无需外加负压 无需片选信号 简化软件设计 工作温度 0 度 55 度 存储温度 20 度 60 度 LCD1602 字符型液晶显示器其用法 单 5V 电源电压 低功耗 长寿命 高可靠性 内置 192 种字符 160 个 5 7 点阵字符和 32 个 5 10 点阵字符 具有 64 个字节的自定义字符 RAM 可自定义 8 个 5 8 点阵字符或 4 个 5 11 点 阵字符 显示方式 STN 半透 正显 驱动方式 1 16 并口 1 5 串口 背光方式 底部 LED 桂林电子科技大学毕业设计 论文 报告用纸 第 9 页 共 51 页 通讯方式 4 位或 8 位并口可选 标准的接口特征 适配 MC51 和 M6800 系统 MPU 的操作时序 LCD1602 液晶显示屏的主要技术参数如下表所示 表 2 3 表 2 3 LCD1602 液晶主要参数 显示容量16 2 个字符 芯片工作电压4 5 5 5V 工作电流2 0mA 5 0V 模块最佳工作电压5 0V 字符尺寸2 95 4 35 mm 3 总体方案设计 在这次的整体设计中主要涉及下面几个方面 如图 3 1 图 3 1 整体方案结构图 下面介绍各个模块使用的器件 3 1 STC89C52 单片机 STC89C52 是的低电压 高性能 CMOS 8 位单片机 片内含 8K bytes 的可反复擦写 的只读程序存储器 PEROM 和 256K bytes 的随机存取数据存储器 器件采用高密度 非易失性存储技术生产 与标准 MCS 51 指令系统及 8051 产品引脚兼容 片内置通用 8 位中央处理器和 FLASH 存储单元 功能强大 STC89C52 单片机适合于许多较为复杂 控制应用场合 主要性能参数 8K 字节可重擦写 FLASH 闪存存储器 1000 次写 擦循环 时钟频率 0Hz 24MHz 三级加密存储器 桂林电子科技大学毕业设计 论文 报告用纸 第 10 页 共 51 页 256 字节内部 RAM 32 个可编程 I O 口线 3 个 16 位定时 计数器 6 个中断源 可编程串行 UART 通道 低功耗的空闲和掉电模式 片内振荡器和时钟电路 3 2 ADC0832 数模转换 ADC0832 为 8 位分辨率 A D 转换芯片 其最高分辨可达 256 级 可以适应一般的 模拟量转换要求 其内部电源输入与参考电压的复用 使得芯片的模拟电压输入在 0 5V 之间 芯片转换时间仅为 32 S 据有双数据输出可作为数据校验 以减少数据 误差 转换速度快且稳定性能强 独立的芯片使能输入 使多器件挂接和处理器控制 变的更加方便 通过 DI 数据输入端 可以轻易的实现通道功能的选择 3 3 AT24C02 存储器 在本设计中使用的是 24C02 存储芯片 是电可擦除的 PROM 8 个引脚功能及两线 串行接口 电压允许范围 1 8V 5V 串行 E2PROM 是基于 I2C BUS 的存储器件 遵循二 线制协议 由于其具有接口方便 体积小 数据掉电不丢失等特点 在仪器仪表及工 业自动化控制中得到大量的应用 在一般单片机系统中 24C02 数据受到干扰的情况 是很少的 基本的读写功能外 还对地址功能以及 WP 引脚保护功能进行了全面的检测 发现一种 ATMEL 激光印字 以及 XICOR 牌号的 24C02 具有全面的符合 I2C 总线协议的 功能 而有些牌号 24C02 要么没有 WP 引脚保护功能 要么没有器件地址功能 即 2 片 24C02 不能共用一个 I2C 总线 有些甚至两种功能均无 所以说一些同样功能型号 的电子器件在兼容性上往往会带来意想不到的问题 值得引起注意 3 4 LCD1602 液晶显示 LCD1602 字符型液晶显示模块是一种专门用于显示字母 数字 符号等点阵式 LCD 目前常用 16 1 16 2 20 2 和 40 2 行等的液晶显示模块 模块组件内部主 要由 LCD 显示屏 控制器 列驱动器和偏压产生电路构成 LCD1602 液晶显示屏外形尺寸 LCD1602 液晶显示屏分为带背光和不带背光两种 基控制器大部分为 HD44780 带 背光的比不带背光的厚 是否带背光在应用中并无差别 两者尺寸差别如图 3 2 所示 桂林电子科技大学毕业设计 论文 报告用纸 第 11 页 共 51 页 图 3 2 LCD1602 尺寸图 1602 液晶显示屏采用标准的 16 脚接口 其中各接口的功能如下表 2 4 所示 表 2 4 LCD1602 的 16 管脚功能 引脚号引脚名电平输入 输出引脚说明 1VSS电源地 2VDD电源正极 5V 3VL液晶显示偏压信号 4RS0 1输入 数据 命令选择端 0 输入指令 1 输入数据 5R W0 1输入 读 写选择端 0 向 LCD 写入指令或 数据 1 从 LCD 读取信息 6E1 0输入 使能信号 1 时读取信息 1 0 下降 沿 执行指令 7D00 1输入 输出数据总线 最低位 8D10 1输入 输出数据总线 9D20 1输入 输出数据总线 10D30 1输入 输出数据总线 11D40 1输入 输出数据总线 12D50 1输入 输出数据总线 桂林电子科技大学毕业设计 论文 报告用纸 第 12 页 共 51 页 13D60 1输入 输出数据总线 14D70 1输入 输出数据总线 最高位 15BLA VCCLCD 背光电源正极 16BLK接地LCD 背光电源负极 第 1 脚 VSS 为地电源 第 2 脚 VDD 接 5V 正电源 第 3 脚 VL 为液晶显示器对比度调整端 接正电源时对比度最弱 接地时对比度 最高 对比度过高时会使屏幕显示不清晰 使用时可以通过一个 10K 的电位器调整对 比度 第 4 脚 RS 为数据 命令选择端 高电平时选择数据寄存器 低电平时选择指令寄 存器 第 5 脚 R W 为读写选择端 高电平时进行读操作 低电平时进行写操作 当 RS 和 R W 共同为低电平时可以写入指令或者显示地址 当 RS 为低电平 R W 为高电平时可 以读忙信号 当 RS 为高电平 R W 为低电平时可以写入数据 第 6 脚 E 端为使能端 当 E 端由高电平跳变成低电平时 液晶模块执行命令 第 7 14 脚 D0 D7 为 8 位双向数据线 第 15 脚 背光源正极 第 16 脚 背光源负极 3 5 编译软件介绍 Keil 软件简介 单片机开发中除必要的硬件外 同样离不开软件 我们写的汇编语言源程序要变 为 CPU 可以执行的机器码有两种方法 一种是手工汇编 另一种是机器汇编 目前已 极少使用手工汇编的方法了 机器汇编是通过汇编软件将源程序变为机器码 用于 MCS 51 单片机的汇编软件有早期的 A51 随着单片机开发技术的不断发展 从普遍使 用汇编语言到逐渐使用高级语言开发 单片机的开发软件也在不断发展 Keil 软件是 目前最流行开发 MCS 51 系列单片机的软件 这从近年来各仿真机厂商纷纷宣布全面支 持 Keil 即可看出 Keil 提供了包括 C 编译器 宏汇编 连接器 库管理和一个功能强 大的仿真调试器等在内的完整开发方案 通过一个集成开发环境 uVision 将这些部 份组合在一起 运行 Keil 软件需要 Pentium 或以上的 CPU 16MB 或更多 RAM 20M 以 上空闲的硬盘空间 WIN98 NT WIN2000 WINXP 等操作系统 Keil C51 是美国 Keil Software 公司出品的 51 系列兼容单片机 C 语言软件开发系 统 与汇编相比 C 语言在功能上 结构性 可读性 可维护性上有明显的优势 因而 易学易用 用过汇编语言后再使用 C 来开发 体会更加深刻 Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具 全 Windows 界 桂林电子科技大学毕业设计 论文 报告用纸 第 13 页 共 51 页 面 另外重要的一点 只要看一下编译后生成的汇编代码 就能体会到 Keil C51 生成 的目标代码效率非常之高 多数语句生成的汇编代码很紧凑 容易理解 在开发大型 软件时更能体现高级语言的优势 4 硬件设计 4 1 最小系统的实现 在本次设计中我们采用 STC89C51 来实现一个单片机系统能运行起来的需求最小的 系统 电路图见图 4 1 图 4 1 单片机最小系统图 上图由晶振电路和复位电路 STC89C51 芯片组成 构成最小的单片机系统 下面详细介绍其中的两个电路 晶振电路 单片机工作的过程中各指令的微操作在时间上有严格的次序 这种微操作的时间 次序称作时序 单片机的时钟信号用来为单片机芯片内部各种微操作提供时间基准 89c52 的时钟产生方式有两种 一种是内部时钟方式 一种是外部时钟方式 内部时钟 方式即在单片机的外部接一个晶振电路与单片机里面的振荡器组合作用产生时钟脉冲 信号 外部时钟方式是把外部已有的时钟信号引入到单片机内 此方式常用于多片 89C52 单片机同时工作 以便于各单片机的同步 一般要求外部信号高电平的持续时间 大于 20ns 且为频率低于 12MHz 的方波 对于 CHMOS 工艺的单片机 外部时钟要由 XTAL1 端引入 而 XTAL2 端应悬空 桂林电子科技大学毕业设计 论文 报告用纸 第 14 页 共 51 页 本系统中为了尽量降低功耗的原则 采用了内部时钟方式 电路图见图 4 2 图 4 2 晶振电路图 在 89C52 单片机的内部有一个震荡电路 只要在单片机的 XTAL1 和 XTAL2 引脚外 接石英晶体 简称晶振 就构成了自激振荡器并在单片机内部产生时钟脉冲信号 图 中电容器 C1 和 C2 稳定频率和快速起振 电容值在 5 30pF 典型值是 22pF 晶振 CYS 选择的是 12MHz 复位电路 单片机开始工作的时候 必须处于一种确定的状态 否则 不知哪是第一条程序 和如何开始运行程序 端口线电平和输入输出状态不确定可能使外围设备误动作 导 致严重事故的发生 内部一些控制寄存器 专用寄存器 内容不确定可能导致定时器 溢出 程序尚未开始就要中断及串口乱传向外设发送数据 因此 任何单片机在 开始工作前 都必须进行一次复位过程 使单片机处于一种确定的状态 当在 89C52 单片机的 RST 引脚引入高电平并保持 2 个机器周期时 单片机内部就 执行复位操作 若该引脚持续保持高电平 单片机就处于循环复位状态 实际应用中 复位操作有两种基本形式 一种是上电复位 另一种是上电与按键 均有效的复位 上电复位 要求接通电源后 单片机自动实现复位操作 常用的上电 复位 上电瞬间 RST 引脚获得高电平 随着电容 C1 的充电 RST 引脚的高电平将逐渐 下降 本设计中复位电路采用的是开关复位电路 开关 S9 未按下是上电复位电路 上电 复位电路在上电的瞬间 由于电容上的电压不能突变 电容处于充电 导通 状态 故 RST 脚的电压与 VCC 相同 随着电容的充电 RST 脚上的电压才慢慢下降 选择合理 的充电常数 就能保证在开关按下时是 RST 端有两个机器周期以上的高电平从而使 STC89C52 内部复位 开关按下时是按键手动复位电路 RST 端通过电阻与 VCC 电源接 通 通过电阻的分压就可以实现单片机的复位 电路图见图 4 3 桂林电子科技大学毕业设计 论文 报告用纸 第 15 页 共 51 页 图 4 3 复位电路图 RST 引脚的高电平只要能保持足够的时间 2 个机器周期 单片机就可以进行复 位操作 该电路典型的电阻和电容参数为 晶振为 12MHz 时 C1 为 10uF R4 为 8 2 4 2 数据采集设计 1 从传感器过来的电压信号 必须放大 滤波 采集 转换才能被 MCU 识别和处 理 由于假若每一路都设置放大 滤波等器件 那么成本会很大 所以信号的采集一 般用多路模拟通路进行选择 然而选择多路模拟开关时必须考虑以下的几个因素 通 道数量 切换速度 开关电阻和器件的封装形式 总之数据采集与硬件的选择有很大 的关系 2 传感器的选择 酒精浓度传感器由 MQ3 传感器组成 MQ3 传感器 MQ3 模块详细介绍如下表 4 1 3 测量电路 测量电路由酒精浓度传感器 MQ3 ADC0832 组成 酒精传感 MQ3 经 AD0832 与 STC89C52 单片机相连 在显示器上显示出酒精的浓度 值 当超过国家规定的标准时报警 表 4 1 传感器参数表 名称MQ3 传感器 A 标准工作条件 符号 参数名称 技术条件 备注 Vc 回路电压 15V AC or DC VH 加热电压 5 0V 0 2V AC or DC RL 负载电阻 可调 RH 加热电阻 31 3 室温 PH 加热功耗 900mW B 环境条件 符号 参数名称 技术条件 备注 Tao 使用温度 10 50 Tas 储存温度 20 70 RH 相对湿度 小于 95 RH O2 氧气浓度 21 标准条件 氧气浓度会影响灵敏度特 最小值大于 桂林电子科技大学毕业设计 论文 报告用纸 第 16 页 共 51 页 性 C 灵敏特性 符号 参数名称 技术参数 备注 Rs 敏感体电阻 1M 8 M 200ppm alcohol 200 100 alcohol 浓度斜率 0 6 标准工作条件 温度 20 2 Vc 5 0V 0 1V 相对湿度 65 5 Vh 5 0V 0 1V 预热时间 不少于 24 小时 适用范围 10 1000ppm Alcohol 4 3 A D 转换设计 正常情况下 ADC0832 与单片机的接口应为 4 条数据线 分别是 CS CLK DO DI 但由于 DO 端与 DI 端在通信时并未同时有效并与单片机的接口是双 向的 所以电路设计时可以将 DO 和 DI 并联在一根数据线上使用 当 ADC0832 未工作 时其 CS 输入端应为高电平 此时芯片禁用 CLK 和 DO DI 的电平可任意 当要进行 A D 转换时 须先将 CS 使能端置于低电平并且保持低电平直到转换完全结束 此时芯 片开始转换工作 同时由处理器向芯片时钟输入端 CLK 输入时钟脉冲 DO DI 端则使 用 DI 端输入通道功能选择的数据信号 在第 1 个时钟脉冲的下沉之前 DI 端必须是高 电平 表示启始信号 在第 2 3 个脉冲下沉之前 DI 端应输入 2 位数据用于选择通道 功能 如图 4 4 图 4 4 模数转换电路图 4 4 按键设计 本系统应用有人机对话功能 该功能即能随时发出各种控制命令和数据输入以 桂林电子科技大学毕业设计 论文 报告用纸 第 17 页 共 51 页 及和 LCD 连接显示运行状态和运行结果 键盘分为 独立式和矩阵式两类 每一类按 其编码方法又可以分为编码和非编码两种 由于本系统只有 UP DOWN OK CANCEL 4 个控制命令 所需按键较少 所以本系统选择独立式按键 电路图见图 4 5 图 4 5 按键电路图 独立式按键是直接用 I O 口线构成的单个按键电路 每个独立式按键占有一根 I O 口线 各根 I O 口线之间不会相互影响 在此电路中 按键输入部采用低电平有效 上拉电阻保证了按键断开时 I O 口线有确定的高电平 STC89C52 P1 口内部接有上 拉电阻 所以就不需要再外接上拉电阻 键盘抖动的消除 抖动的消除大致可以分为硬件削抖和软件削抖 硬件削抖是采用硬件电路的方法对键盘的按下抖动及释放抖动进行削抖 经过 削抖电路后使按键的电平信号只有两种稳定状态 软件削抖的基本原理是当检测出键盘闭合时 先执行一个延时子程序产生数毫 秒的延时 待接通时的前沿抖动消失后再判别是否有健按下 当按键释放时 也要经 过数毫秒延时 待后沿抖动消失后再判别键是否释放 由于应用硬件削抖还需要外加器件 成本相对较高 所以本系统选择软件延时 削抖的方法 4 5 外围扩充存储器电路 基于 STC85C52 单片机具有 4KB 的程序存储器 ROM 256B 的数据存储器 RAM 由于考虑到本系统的数据处理与存储所需的容量 现在需要扩充存储器的容量 在应 用中要保存一些参数和状态 据了解基于 EEPROM 的存储芯片是一种很好的选择 我们 选定了 AT24C02 存储器 电路图见图 4 6 桂林电子科技大学毕业设计 论文 报告用纸 第 18 页 共 51 页 图 4 6 外围扩充存储电路图 4 6 时钟芯片电路 因为此系统需要记录测量发生的时间 所以需要时钟芯片来记录不同人在不同时 间的监测数据 因此我们在系统中加入了时钟芯片 对时钟芯片的要求首先是低功耗 其次是编程简单 缩短程序开发时间 实际上也就缩短了系统用于实际生产所用的开 发周期以及成本 在本系统 我们选择了 DS1302 时钟芯片 图 4 7 时钟电路图 我们时钟电路选择的芯片是 DS1302 其内含一个实时时钟 日历和 31 字节静态 RAM 可以通过串行接口与单片机通信 而通信时 仅需要 3 个口线 1 RES 复位 2 I O 数据线 3 SCLK 串行时钟 时钟 RAM 的读 写数据以一字节或多达 31 字节的字符组方式通信 其工作时功耗很低 广泛应用于电话 传真 便携式仪器等 产品领域 桂林电子科技大学毕业设计 论文 报告用纸 第 19 页 共 51 页 表 4 2 时钟控制字对照表 DS1302 主要性能有 时实时钟能计算 2100 年之前的秒 分 时 日 日期 星期 月 年的能力 还有闰年的调整能力 读 写时钟或 RAM 数据时 有单字节和多 字节传送两种方式 与 DS1202 TTL 兼容 DS1302 引脚概述 X1 X2 振荡源 外接 32 768KHZ 晶振 SCLK 串行时钟输 入端 日历 时钟寄存器与控制字对照表 日历 时钟寄存器命令字 取值范围以及 各位内容对照表 见表 4 2 4 7 LCD1602 液晶显示设计 LCD1602 液晶显示模块与计算机的接口电路有两种方式 它与单片机的接口方法分 为直接访问方式和间接控制方式 直接访问方式是把液晶模块作为存储器或 I O 设备直接接在单片机的总线上 单 片机以访问存储器或 I O 设备的方式操作液晶显示模块的工作 间接控制方式则不使 用单片机的数据系统 而是利用它的 I 0 口来实现与显示模块的联系 即将液晶显示 模块的数据线与单片机的 P0 口连接作为数据总线 另外三根时序控制信号线通常利用 单片机的 P2 口中未被使用的 I O 口来控制 这种访问方式不占用存储器空间 它的 接口电路与时序无关 其时序完全靠软件编程实现 本系统采用间接控制方式 以下为液晶显示电路接线原理图见图 4 8 命令字各位内容寄存器名 写操作读操作 取值 范围76543 0 秒寄存器80H81H00 59CH10SECSEC 分寄存器82H83H00 59010MINMIN 时寄存器84H85H01 12 00 23 1 24010 A P HRHR 日寄存器86H87H01 28 29 30 31 0010DATEDATE 月寄存器88H89H01 1200010MMONTH 周寄存器8AH8BH01 070000DAY 年寄存器8CH8DH01 9910YEARYEAR 写保护寄存器8EH8FHWP0000 慢充电寄存器90H91HTCSTCSTCSTCSD S D S R S R S 时钟突发寄存器BEHBFH 桂林电子科技大学毕业设计 论文 报告用纸 第 20 页 共 51 页 图4 8 液晶电路图 在单片机系统中应用液晶显示器作为输出器件有以下几个有点 显示质量高 由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度 恒定发光 而不像阴极射线管显示器 CRT 那样需要不断刷新新亮点 因此 液晶显 示器画质高且不会闪烁 数字式接口 液晶显示器都是数字式的 和单片机系统的接口更加简单可靠 操 作更加方便 体积小 重量轻 液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示 的目的 在重量上比相同显示面积的传统显示器要轻的多 功耗低 相对而言 液晶显示器的功耗主要消耗在其内部的电极和驱动 IC 上 因 而耗电量比其他显示器要少的多 在主电路图中接在 P0 口处有一个排阻 RP1 由于 P0 口没有内接上拉电阻 为了 为 P0 口外接线路有确定的高电平 所以要接上排阻 RP1 使用的是 10K 的排阻 以确 保有 P0 口有稳定的电平 电路连接图见图 4 9 LCD 按其显示方式通常可以分为断式 点字符式 点阵式等 还有黑白 多灰度 彩色显示等 液晶显示原理是利用液晶的物理特性 通过电压对其显示区域进行控制 有电就显示黑色 这样就可以显示出图形 针对于本系统要显示汉字 字母 数字等 以及其在一个界面同时要显示的字数 本系统要以图形的形式显示各运行结果 我们 最 终选择 LCD1602 型号的 LCD 字符显示 字符显示比较复杂 一个字符由 16x8 点 阵组成 即要找到和显示屏是某几个位置对应的 RAM 区的字节 再使不同的位置为 1 其他的为 0 为 1 的点亮 为 0 的不亮 这样就显示出一个字符 桂林电子科技大学毕业设计 论文 报告用纸 第 21 页 共 51 页 图 4 9 上拉电阻电路图 4 8 报警设计 在单片机应用系统中 一般的工作状态可以通过指示灯或数码显示来指示 供操 作人员参考 了解系统的工作状况 但对于某些紧急状态 比如系统检测到的错误状 态等 为了使操作人员不至于忽视 及时采取措施 往往还需要有某种更能引人注意 提起警觉的报警信号 这种报警信号通常有三种类型 一是闪光报警 因为闪动的指 示灯更能提醒人们注意 二是鸣音报警 发出特定的音响 作用于人的听觉器官 易 于引起和加强警觉 三是语音报警 不仅能起到报警作用 还能直接给出警报种类的 信息 其中 前两种报警装置因硬件结构简单 软件编程方便 常常在单片机应用系 统中使用 而语音报警虽然警报信息较直接 但硬件成本高 结构较复杂 软件量也 增加 闪光报警 实现单频音报警的接口电路比较简单 只要当值高于警报值的时候给一个低电频 就能驱动二极管发光 简单易懂 以下为报警电路接线图见图 4 10 图 4 10 报警电路图 这一章比较具体的说明了系统硬件设计的内容 通过模块化的设计思想 把一个 复杂的单片机系统按照功能划分成一个个单独的电路模型 分别进行设计 最后在集 成到一起 这种方法对于设计复杂的单片机系统很有效 大大提高系统设计的效率与 质量 由于我主要负责的是硬件设计 所以只是简单的介绍硬件方面的内容 4 9 电源电路设计 在本次设计中 需要一个比较大的电压源和一个 5V 的单片机供电源 为了实现便 桂林电子科技大学毕业设计 论文 报告用纸 第 22 页 共 51 页 携式 设用一个 9V 的电压源 一般 6 节电池和一个 9V 的电池都可以提供 因而需要 一个电压转换吧 9V 转换成 5V 设用选用了 ASM117 稳压芯片 工作原理如图 4 11 低 压层直流稳压电源电路原理图 该电路是由基准电压 电压放大和电流放大等 3 个环 节组成 其中 基准电压由 TL431 产生 按图中电路连接 当通过 R0 的电流在 0 5 10 mA 时可获得稳定的 2 5 V 基准输出 图 4 11 低压层直流稳压电源电路原理图 输出电压的具体数值由运算放大器 UA 确定 采用同相放大器的优越性在于其输入 阻抗极大 可很好地将 TL431 输出的 2 5 V 电压与后级电路隔离 使其不

温馨提示

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

评论

0/150

提交评论