毕业设计(论文)-基于单片机的多功能转速表设计(全套图纸) .pdf_第1页
毕业设计(论文)-基于单片机的多功能转速表设计(全套图纸) .pdf_第2页
免费预览已结束,剩余62页可下载查看

毕业设计(论文)-基于单片机的多功能转速表设计(全套图纸) .pdf.pdf 免费下载

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

文档简介

浙江工业大学浙西分校信电系毕业设计(论文) 1 目录 第 一 章 概 述 3 1.1 单片机的发展 . 3 1.2 单 片 机 的 应 用 . 3 第 二 章 多 功 能 转 速 表 硬 件 电 路 5 2.1 转速信号获取电路 6 2.2 m/t 法测速原理 . 6 2.3 转速计算及误差分析 . 7 2.4 转速测量 . 9 第 三 章 产 生 脉 冲 的 硬 件 部 分 介 绍 . 10 3.1 光电转换电路 . 10 3.1.1 光电探测器的介绍 10 3.1.2 光检测器的设定 11 3.2 运算放大器基本特性 12 3.2.1 常用运算放大器类型 12 3.2.2 运算放大器的基本参数 12 3.3 555 施密特触发器结构图 . 14 3.3.1 施密特触发器的电路特点 . 16 3.3.2 施密特触工作原理 16 3.3.3 施密特触发器的应用 17 第 四 章 单 片 机 . 18 4.1 单片机 at89c51 的了解 . 18 4.2 at89c51 的硬件部分简述 19 第 五 章 显 示 部 分 . 21 5.1 键盘接口: . 21 5.2 显示器接口: . 23 5.3 led 显示器 26 5.3.1 数码管结构 27 5.3.2 数码管工作原理 27 5.3.3 led 七段数码管显示方法 28 第 六 章 直 流 稳 压 电 源 的 研 制 . 29 6.1 + 5v 直流稳压电路原理 . 29 6.2 + 5v 直流稳压电路参数设计 . 30 第 七 章 看 门 狗 电 路 32 浙江工业大学浙西分校信电系毕业设计(论文) 2 7.1 抗干扰与看门狗 . 32 7.2 硬件方式和软件方式看门狗 33 7.2.1 硬件看门狗 33 7.2.2 软件看门狗 33 7.3 硬件方式看门狗 max831l 33 7.3.1 max813l 的封装及引脚功能 34 7.3.2 max813l 与单片机 at89c51 接口电路图 35 7.3.3 max813l 对直流的监控作用 36 第 八 章 报 警 电 路 : . 36 8.1 声音报警电路 36 第 九 章 软 件 设 计 思 路 及 方 案 . 37 9.1 软件设计概述 37 9.2 软件设计方案 . 38 9.2.1 主程序框图及程序编程 . 38 9.2.2 按键框图及程序编程 46 9.2.3 显示程序框图及程序编程 49 9.2.4、报警框图及程序编程 . 52 第 十 章 单 片 机 软 件 和 硬 件 抗 干 扰 设 计 . 54 10.1 抗干扰的设计原则 . 54 10.1.1 干扰的来源: . 55 10.2 软件抗干扰设计 . 55 10.3 硬件抗干扰的设计 . 56 第 十 一 单 片 机 应 用 系 统 调 试 和 维 护 . 56 11.1 系统调试 56 11.1.1 硬件调试 . 57 11.1.2 软件调试 . 57 11.1.3 计算程序的调试方法 . 57 11.1.4 综合调试 . 58 11.2 系统维护和维修 . 58 11.2.1 故障形成的原因 . 58 11.2.2 系统自检程序 . 59 第 十 二 章 打 印 机 的 设 计 59 12.1 p-p-40/16a 微型打印机的接口信号 60 12.2 tp-p-40/16a 微型打印机与单片机的连接 . 60 12.3 打印机程序编程 . 61 总 结 62 参 考 文 献 : 63 致 谢 64 浙江工业大学浙西分校信电系毕业设计(论文) 3 第一章 概述 1.1 单片机的发展 单片微型计算机(简称单片机)也叫做微型控制器,自从 20 世纪 70 年代问 世以来,得到了快速发展,从早期的 8 位机到现在的 32 位机,其硬件资源和软 件资源在不断丰富与完善。那么单片机的发展历史可以分为三个阶段: 第一阶段(19761978 年):初级单片机阶段。以 intel 公司的 mcs- 48 为代表。 这个系列的单片机片内集成有 8 位 cpu,并行 i/o 口、8 位定时/计数器,寻址范 围小大于 4k,并且无串行口。 第二阶段(1978 年1982):高性能单片机阶段。在这一阶段推出的单片机普遍 带有串行 i/o 口,有多级中断处理系统、16 位定时/计数器。片内 ram 、rom 容量加大,并且寻址范围可达到 64k 字节,有的片内还带有 a/d 转换接口。这 类单片机有 intel 公司的 mcs- 51, motorola 公司的 6801 和 zlog 公司的 z8 等。 第三阶段(1982 ):8 位单片机巩固发展以及 16 位单片机推出阶段。这一阶段 的主要特征是一方面发展16位单片机及专用单片机:另一方而同时不断完善高档 8 位单片机,改善其结构,以满足小同的用户需求。 全套图纸,加全套图纸,加 153893706 1.2 单片机的应用 单片机由于其集成度高、体积小、抗干扰能力强和价格低廉、具有独特的控 制功能,它已经成为计算机世界中的重要成员。在一个应用系统中,只用一个单 片机,这是目前应用最多的方式,主要应用领域有: (1).测控系统。用单片机可构成各种工业控制系统、自适应系统、数据采集系统 等。 浙江工业大学浙西分校信电系毕业设计(论文) 4 (2).智能仪表。用单片机改造原有的测量、控制仪表,能迥数字化、智能化、多 功能化、综合化、柔性化发展。 (3).机电一体化产品。单片机与传统的机械产品结合,使系统机械产品结构简化, 控制智能化。 (4).智能接口。在计算机控制系统(特别是较大型的工业测控系统)中,普遍采 用单片机进行接口的控制与管理,因单片机与主机是并行工作,故大大提高了系 统的运行速度。 (5).智能民用产品。在家用电器、玩具、游戏机、声像设备、电子秤、收银机、 办公设备等产品中引入单片机,不仅使产品的功能大大增强,而且获得了良好的 使用效果。 智能仪器是以微处理器为核心的电子仪器,所以对设计的硬件电路的元件 工作原理要熟悉掌握,而且还要求其掌握微型计算机硬件和软件的原理。 设计智能仪器的一般步骤:首先要确定设计任务,编写设计任务说明书,明 确仪器应具备的功能和应达到的技术要求, 设计任务说明书是设计人员设计的基 础,应力求准确简捷;然后要拟定总体设计方案,在这个阶段,设计者要提出几 个设计方案,每个方案应包括仪器的设计原理,采用的技术,关键元器件的性能 等;接着要对各方案进行可行性论证,包括对某些重要部分的理论分析与计算, 以及一些必要的模拟实验,以此来验证方案是否能达到设计的要求;接着再兼顾 各方面因素选择方案之一作为仪器的设计方案确定仪器工作总框图; 最后是硬件 电路和软件电路的设计与调试以及整体联调。 智能仪器实际上是一个专用的微型计算机系统,它有硬件和软件两部分组 成。其中硬件电路主要是 89c52 单片机、测速转换器、键盘设定阈值、报警电 路、以及 led 液晶显示系统与微机接口电路等。软件部分包括监控程序。其中 监控程序面向仪器面板键盘和显示器,其内容包括:通过键盘操作输入并存储所 设置的功能、操作方式与工作参数;通过控制 i/o 接口电路进行数据采集,对仪 器进行预定的设置;对数据存储器所记录的数据和状态进行各种处理;以数字、 字符、图形等形式显示各种状态信息以及测量数据的处理结果。 浙江工业大学浙西分校信电系毕业设计(论文) 5 第二章、多功能转速表硬件电路 多 功 能 转 速 表 硬 件 电 路 框 图 如 图2.1 所 示 .该 电 路 由 转 速 信 号 获 取 电 路 、 功 能 按 键 、led 显 示 、 报 警 电 路 、 看 门 狗 和 at89c51 单 片 机 等 几 部 分 组 成 。 , , 光电传 感 器 整形 电 路 脉冲信号产生 at89c51 单片机 功能 按键 数模 转换 器 显 示 器 报 警 电 路 浙江工业大学浙西分校信电系毕业设计(论文) 6 图 2.1 硬 件 电 路 框 图 2.1 转速信号获取电路 该 电 路 由 二 极 管 d1 d4、电 阻 r1 r7、集 成 运 放 tl062、 555 施 密 特 触 发 器 等 组 成 。 工 作 原 理 如 下 : k1 按 下 后 , d1 导 通 并 发 出 红 外 线 ,经 聚 焦 镜 头 将 光 速 通 过 半 透 膜 聚 集 到 旋 转 体 的 转 轴 上 , 该 光 速 被 贴 在 转 轴 上 的 反 光 条 反 射 至 光 敏 二 极 管 d2 上 , 使 d2 导 通 ,a 点 电 位 升 高( 无 反 射 时 电 位 降 低 ) 。该 信 号 经 隔 直 电 容 c1 及 限 幅 二 极 管 d3、 d4 加 到 运 放 a1 的 反 相 输 入 端 , 由 r3、r4 构 成 的 正 反 馈 网 络 接 至 运 放 的 同 相 输 入 端 。a1 工 作 在 饱 和 或 截 止 状 态 , 使 b 点 波 形 接 近 矩 形 波 ( 高 低 电 平 分 别 为 4.3v 和 0.8v) , 。 通 过 555 定 时 器 构 成 的 斯 密 特 触 发 器 , 不 仅 可 以 将 边 沿 变 化 缓 慢 的 信 号 整 形 成 为 边 沿 陡 峭 的 矩 形 波 ,而 且 可 以 将 叠 加 于 矩 形 波 脉 冲 信 号 上 的 噪 声 有 效 地 消 除 , 从 而 在 d 点 可 获 得 较 理 想 的 转 速 脉 冲 信 号 。 该 信 号 加 至 单 片 机 的 t0 口 进 行 计 数 。 2.2 m/t 法测速原理 目 前 常 用 的 转 速 测 量 方 法 有 m 法 、 t 法 和 m/t 法 。 浙江工业大学浙西分校信电系毕业设计(论文) 7 图 2.2 m/t 法 测 速 时 序 图 m 法( 即 测 频 法 )- - - - - 是 指 在 固 定 的 时 间 内 测 出 转 速 传 感 器 输 出 的 脉 冲 个 数 。 经 分 析 得 知 , m 法 在 测 高 速 时 相 对 误 差 较 小 。 t 法 ( 即 测 周 期 法 ) - - - - 是 指 在 转 速 传 感 器 输 出 脉 冲 周 期 内 对 时 钟 信 号 进 行 计 数 ,测 出 转 速 脉 冲 周 期 ,进 而 计 算 出 转 速 。经 分 析 得 知 , t 法 在 测 低 速 时 相 对 误 差 较 小 。 m/t 法 - - - - 是 指 在 m 法 基 础 上 吸 取 了 t 法 之 优 点 而 形 成 的 。 m/t 法 测 速 时 序 图 2.2 所 示 , 其 测 速 过 程 是 :在 转 速 传 感 器 输 出 脉 冲 是 上 升 沿 到 来 时 启 动 定 时 ( 定 时 时 间 为 tc),同 时 计 传 感 器 输 出 脉 冲 个 数 和 时 钟 脉 冲 个 数 , 定 时 时 间 到 ,先 停 止 对 传 感 器 输 出 脉 冲 的 计 数 ,待 下 一 个 传 感 器 输 出 脉 冲 上 升 沿 到 来 时 在 停 止 对 时 钟 脉 冲 的 计 数 ,由 记 录 的 两 脉 冲 m1 和 m2 求 出 转 速 。假 定 旋 转 体 每 转 一 周 ,转 速 传 感 器 输 出 p 个 脉 冲 , 又 设 转 速 n, 时 钟 频 率 为 f0,则 td=tc + t=m1t= m1 (60/pn) 又 因 td=m2 (1/f0) 所 以 n= ( 60 f0/p) (m1/m2) (1) 通 过 式 ( 1) 可 方 便 地 计 算 出 转 速 , 因 为 m1 不 存 在 误 差 , m2 的 最 大 误 差 为 一 个 时 钟 , 所 以 m/t 法 测 速 时 的 相 对 误 差 为 : n/n=1/(m2- 1) (2) 在 式 (2)中 , 由 于m2 通 常 较 大 , 故 相 对 误 差 较 小 , 即 该 测 量 方 法 精 度 较 高 , 在 多 功 能 转 速 表 的 设 计 中 , 我 们 采 用 的 是m/t 法 。本 设 计 涉 及 到 转 速 范 围 问 题 ,为 了 减 少 误 差 ,故 在 转 速 小 于 3600rpn 时 我 采 用 t 法 计 算 转 速 ,而 大 于 3600rpn 就 进 行 m 法 计 算 转 速 。 2.3 转速计算及误差分析 根 据 转 速 、 周 期 、 频 率 之 间 的 关 系 可 知 n=60/t ( 1) 浙江工业大学浙西分校信电系毕业设计(论文) 8 f=1/t ( 2) t=ntc ( 3) 式 中 , n 被 测 转 速 , r/min; t 转 速 信 号 周 期 , s; f 转 速 信 号 频 率 , hz; tc 计 算 脉 冲 的 周 期 , 又 称 时 基 , 本 仪 表 tc=4us. 将 式 ( 3) 代 入 ( 1) 可 得 n=60/ntc=1.510 7/n ( 4) 用 十 六 进 制 数 表 示 为 n= (e4e1c0)h/(n)h 式 中 n 已 存 入 75h、74h、73h 单 元 。利 用 除 法 子 程 序 ,即 可 求 出 转 速 。 下 边 计 算 该 系 统 的 相 对 误 差 。 分 别 对 式 ( 1) 和 式 ( 3) 求 微 分 n=60 t/=nf t ( 5) t= ntc ( 6) 将 式 (6)代 入 ( 5) , 得 ntcf n n = ( 7) 式 中 , n- 量 化 误 差 , n=1 个 计 数 脉 冲 ,又 已 知 时 基 tc=4us, 故 usf n n 4= ( 8 ) 由 式( 8)可 知 ,相 对 误 差 与 频 率 成 正 比 ,即 相 对 误 差 随 转 速 的 升 高 而 升 高 。因 此 ,为 了 提 高 测 量 精 度 ,高 转 速 时 需 要 连 续 测 量 数 个 周 期 。 本 设 计 中 为 4 个 周 期 , 即 测 得 的 n 为 4 个 周 期 内 的 总 和 , 所 以 t=ntc/4 ( 9) n= 60/t = 60*10 4/n ( 10) 用 十 六 进 制 数 表 示 , 为 n=(3938700)h/(n)h 对 式 ( 9) 进 行 微 分 t= ntc/4 因 此 可 求 出 高 速 测 量 时 的 相 对 误 差 n/n = f t=f ntc/4 同 样 , 代 入 tc=4us, n=1 个 脉 冲 , 则 sfs n f n n 14 4 = = ( 11) 将式(11)与(8)比较可知,采用多周期测量相对精度大大提高。例如,当 n= 3000r/min 时,由式(8)可求出,其相对误差为 浙江工业大学浙西分校信电系毕业设计(论文) 9 = 450 n n 10- 6=0.02% 当 n=6000r/min 时,由式(10)计算出相对误差为 = 100 n n 10- 6= 0.01% 该仪表设置的临界转速为 3662r/min,其对应的每周期计数脉冲个数。开 机时,首先按低转速测量,然后判转速 n 是高于还是低与 3662r/min。若低于此 临界值,则仍按低速测量,若高于它,便主动转入高转速测量,即连续测量 4 个 周期。这样,就可实现量程自动切换。 2.4 转速测量 由式(4)和(10)可知,只要能够求出脉冲个数 n,即可求出转速。为了 得到计数脉冲,可以采用门控方式的硬件技术方法,也可以采用中断方式的软件 计数方法。 1.5.1 门控方式计数:由 at89c51 定时器/计数器 t0 工作原理可知,当其工 作在计数方式时, 只要 t0 口上有负跳变, 计数器就加 1。 cpu 在每个周期的 s5p2 状态时,采样 t0,所以需要 2 个机器周期才能识别一个 t0 的负跳变,即 t0 的 周期至少应等于 2 倍机器周期。若晶振频率为 6mhz,6 分频后得到 ale 信号, 鼓 ale 周期为 1us,机器周期为 2 us。由此可知,最低计数脉冲周期 tc 为 4us, 可由 ale 信号经 74ls74 中的两个 d 触发器 4 分频后取得。 1.5.2 中断方式计数:高转速时为了连续测量 4 个输入周期,可以采用中断 方式计数。在初始化或前一次测量结束时,单片机禁止“外部中断 0”和“定时 器 0 溢出中断” 。设置“外部中断 0”为负跳沿触发方式,设定“计数器 0”为非 门控计数方式,然后等待中断。外部中断负脉冲一到,立即启动“计数器 0”工 作,对 t0 的 4us 计数脉冲进行计数。计到 4 个测量周期时,停止“计数器 0” 工作,禁止外“中断” ,恢复测量周期常数 3,并计得的脉冲数存入相应单元。 门控方式和中断方式计数,有效的解决了精度测量输入脉冲周期和高低量 程自动切换问题,测得计数脉冲个数后,即可转入计算转速 n 的子程序,计算结 果的 bcd 码相应的存入 4 个存储单元,以备显示。 浙江工业大学浙西分校信电系毕业设计(论文) 10 第三章 产生脉冲的硬件部分介绍 3.1 光电转换电路光电转换电路 3.1.1 光电探测器的介绍 光电探测器是一种通过光电效应探测光信号的器件。而光敏二极管就是 一种典型的光电探测器。光敏二极管是在可见光或近红外光波段作探测使用,通 常工作在反偏状态下,以缩短光生载流子的传输时间,减小结电容,提高响应速 度。 pin 结二极管就是一种最常用的光敏二极管。 开始加工的硅片是一块接 近本征的单晶,称为 i 层,它有很高的电阻率和很长的载流子寿命。但完全没有 杂质的本征层是很难实现的,通常 i 层是高阻的 p 层(称为层)或高阻的 n 层 (称为层) ,故实际 pin 二极管为 pn 或 pn 的结构。p 区和 n 区分别利 用扩散或离子注入加工到硅片表面,形成阳极和阴极。这两个极既可以做在硅片 两面,也可以做在同一面的不同区域。由于光敏二极管并非用于射频状态下,所 以对特征频率和传输时间无特殊要求, 因此我们采用两个极做在硅片同一面的方 式,这样的好处还可以增大光感应的面积,提高感应灵敏度。pin 管在低频状态 下的 iv 特性类似于 pi 结 iv 特性。当 pin 管两端加上正向的偏压后,pi 结 和 ni 结的势垒降低,p 区空穴和 n 区电子不断注入到 i 区,不断复合,注入的 浙江工业大学浙西分校信电系毕业设计(论文) 11 电子和空穴使 i 区电导增加,呈现出低阻抗。当 pin 管两端加上反向的偏压后, 耗尽层宽度变大,i 区耗尽层随电压增加更快,这时 pin 管相当于一个平行板电 容器。反向电流 id(暗电流)如下面的方程所示: id=id+ is+ig id 为扩散电流;is 为表面漏电;ig 势垒产生电流。ig=qniw/ni 为本征 载流子浓度;w 为耗尽层宽度;为有效寿命。在反偏压和光强为零的情况下 (h=0mw/cm2),电流为暗电流,如果忽略反向状态下少子扩散电流(id)和表面漏 电流(is),反向电流(id)主要是势垒产生电流(ig)。因为载流子浓度(ni)很低,所 以电流(id)很小,大约是 0.11na。当施加一定色温和强度的光照后,光子深入 半导体内部,能量大于禁带宽度的光子,由本征吸收在结的两边产生电子- 空穴 对,载流子的浓度(ni)变化很大,在势垒区内较强的内建场的驱使下,结两边 的光生少数载流子,各自向相反方向运动,从而在结内部形成光生电流 il,这时 的电流大小约为多少 a 量级. 3.1.2 光检测器的设定 在光检测器在内部增益时,其主要噪声包括量子噪声、光电二极管体材料引 起的暗电流噪声和表面漏电流噪声.还有量子噪声或散弹噪声的产生是由于光信 号入射到光检测器上时,光电子的产生和收集过程具有统计特性.而 pin 光电二极 管的主要噪声电流来自检测器负载电阻和放大器电路的有源器件. 1) pin 的光电流:均方信号电流(i2s) = (i2p(t) ip 是信号光产生的平均光电流 .2 工作过程及 pin 和光源的选择 本次设计pin结光敏二极管由硅(si)材料构成其截止波长为1060nm,硅材料 在波长 800nm900nm 的近红外波段,量子效率 =100%.当它响应度最大 (0.65a/w)时,波长为 900nm 其.所以选用的发光 led 二极管的发射的波长也应在 900 nm 附近,故光源材料选择四元合金 ingaasp。d1 导 通 并 发 出 红 外 线 , 经 聚 焦 镜 头 将 光 速 通 过 半 透 膜 聚 集 到 旋 转 体 的 转 轴 上 ,该 光 速 被 贴 在 转 轴 上 的 反 光 条 反 射 至 光 敏 二 极 管 d2 上 , 使 d2 导 通 , a 点 电 位 升 高 ( 无 光 照 时 低 电 平 ) 。 图 3.1 为光检测器的结构图 浙江工业大学浙西分校信电系毕业设计(论文) 12 3.2 运算放大器基本特性 3.2.1 常用运算放大器类型 运算放大器一般可分为通用型、精密型、低噪声型、高速型、低电压低功率 型、单电源型等几种。本节以美国 ti 公司的产品为例说明各种运算放大器的主 要特点。 (1)通用型运算放大器的参数是按照工业上的普通用途设定的,各方面性 能都较差或中等,价格低廉,其典型代表是:lm358、lm324、lf412、 op07 等 (2) 精密型运算放大器有很好的精确度, 特别是对输入失调电压 ui0 输入 偏置电流 iib 温度漂移共模抑制比 kcmr 等参数有严格要求。如 ui0 不大于 1mv,高精密型运算放大器的 ui0 只有几十微伏,常用需要精确测量的场合。其 典型产品代表:tlc4501、tle2027、tle2037、tlc2201 等。 (3)低噪声型运算放大器要求器件产生的噪声低,即等效输入噪声电压密 度 vnvth 时, 输出 r 为高电平 1; 当 vr1 vr2 时,输出 s 为高电平 1;vtr2/3vcc 以后,vc1 =0 vc2 =1,q = 1,q = 0,故 v0 =vol 不变; 当 vi 上升到 2/3vcc 时,电路的输出状态跃迁 vt+ =2/3vcc. 当 vi 再增大时,对电路的输出状态没有影响. 1.3.3.2 下降的过程: 当vi 高电平逐渐下降,且1/3vcc1000 次) flash rom 32 个双向 i/o 口 可编程 uarl 通道 两个 16 位可编程定时/计数器 全静态操作 0- 24mhz 1 个串行中断 128x8bit 内部 ram 两个外部中断源 共 6 个中断源 可直接驱动 led 3 级加密位 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能 4.2 at89c51 的硬件部分简述 at89c51 的硬件部分可分为端口、控制和电源三类 4.2.1 端口线(32 条) :at89c51 共有四个 i/o 端口,分别为 p0、p1、p2、 p3 都是双向的,且每个端口都有锁存器和 8 条线。 p0 口有三个动能:外部扩充存储器时当作数据总线(d0 - d7) ;外部扩 充存储器时当作地址总线(a0 - a7) ; 不扩充时可做一般 i/ o 使用,但内部无 上拉电阻。在 flash 编程时,p0 口接收指令字节而在校验程序时,则输出指令字 节。验证时,要求外接上拉电阻。 p1 口是一个带有内部上拉电阻的 8 位双向 i/ o 端口。p1 的输出缓冲器可 驱动 4 个 ttl 输入。对端口写 1 时,通过内部的上拉电阻把端口拉倒高电位, 这时可用作输入口。p1 做输入口使用时,因为内部有上拉电阻那些被外不信号拉 低的引脚会输出一个电流(il) 。对 flash 编程和校验程序时,p1 口接收低 8 位 地址。 p2 口有两个功能: 扩充外部存储器时当作地址总线(a8 - a15) ;做一般 i/ o 使用,其内部有上拉电阻。对 flash 编程和校验程序时,p2 口接收高 8 位地 址。和一些控制信号。 浙江工业大学浙西分校信电系毕业设计(论文) 20 p3 口有两个功能: 做一般 i/ o 使用,其内部有上拉电阻;特殊功能, 具体由特殊寄存器来设置如下表 2.1 所示。对 flash 编程和校验程序时,p3 口接 收一些控制信号。 表 4.1 p3 口第二功能定义 4.2.2 控制线(6 条): ale/ prog 地址锁存允许/编程线:地址锁存使能信号端,其功能有三: at89c51 外接 ram/ rom:al e 接地址锁存器 8282 、8212 的 stb 脚,74373 的 en 脚。当 cpu 对外部存储器进行存取时,用以锁住地址的低位地址; at89c51 未外接 ram/ rom:在系统中未使用外部存储器时,al e 脚也会有 1/ 6 石英晶体的振荡频率,可作为外部时钟;在烧写 eprom 时 al e 作为烧 写时钟的输入端。 ea/ vpp 允许访问片内/ 外存储器/ 编程电源线: 其接高电平时,cpu 读取内部程序存储(rom) ;当读取内部程序存储器超过 0fffh 时,在扩充外部 rom 条件下自动读取外部 rom。 psen 片外 rom 选通线:程序存储使能端。 xtal1 片内振荡器反相放大器和时钟发生线路的输入端.使用片内 振荡器时,连接外部石英晶体和微调电容. xtal2 片内振荡器反相放大器的输入端,当使用片内振荡器时,外接 石英晶体和微调电容.。 st/ vpd 复位/ 备用电源线: rst 接高电平, 使 at89c51 处于复位(即 初始化)工作方式。rst/vpd 还可以作为备用电源输入端。当主电源 vcc 降低 到规定电平以下时,rst/ vpd 线上的备用电源自动投入,以保证片内的 ram 中 信息不丢失。 (6).芯片擦除: 整个 perom 阵列和三个锁定位的电擦除可通过正确的控制 信号组合,并保持 ale 管脚处于低电平 10ms 来完成。在芯片擦操作中,代码 阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外,at89c51 设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支 持两种软件可选的掉电模式。在闲置模式下,cpu 停止工作。但 ram,定时器, 计数器,串口和中断系统仍在工作。在掉电模式下,保存 ram 的内容并且冻结 振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 端口引脚 复用功能 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(外部数据存储器读选通) 浙江工业大学浙西分校信电系毕业设计(论文) 21 4.2.3 电源线(2 条):vcc 为+ 5 伏电源线,vss 为接地线。 第五章 显示部分 5.1 键盘接口: 键盘是一组开关的集合,是单片机系统中最常用的输入设备之一,键盘 接口必须解决以下一些问题: (1).检测是否有键按下; (2).如有键按下,判定是哪一个键; (3).确定被按键的读数; (4).反弹跳(去抖动) ; (5).不管一次按键持续的时间有多长,仅采用一个数据; (6).处理同时按键; 键盘功能主要有按键识别、去抖、重键处理、发送扫描码、自动重发、 接收键盘命令、处理命令等。 浙江工业大学浙西分校信电系毕业设计(论文) 22 图 5.1 按键闭合和断开时的抖动: 如图 5.1 所示,键盘是由机械触点构成的,但由于机械触点的弹性作用及 电压突跳等原因,在触点闭合和断开的瞬间,会出现电压抖动。去抖动的方法有 硬件方法和软件方法。在按键数目较多的情况下,一般采用软件延时的方法,本 设计延时时间设为 10ms. 键盘可以分为独立联接式和矩阵式两类,每一类按其译码方法又都可分 为编码及非编码两种形式。 编码键盘程序设计简单, 但硬件电路复杂, 价格较高; 非编码键盘用软件来实现识别键、编码转换、去抖等功能,硬件电路简单,价格 便宜。现代微机系统中广泛采用非编码键盘,采用行扫描法识别按下的按键。 在本次设计中我采用的是独立联接式非编码键盘。 这是最简单的键盘结构, 每一键互相独立地各自接通一条输入数据线, 如图 5.2 所示。 任何一个键按下时, 与之相联的输入数据线即被置 0(低电平) ,而平时该线为 1(高电平) 。要判别 是否有键按下,用单片机的位处理指令,十分简单。 图 5.2 独立联接式非编码键盘 在这次系统设计当中,我预先设置了 4 个按键,1键作为数据写入,2实 现1 功能,3#号键作为左移功能,4键实现报警取消功能键,5#键作为所存 的峰值复位,6#作为显示峰值转速,为系统将来可能进一步的完善作准备。 人机对话是智能化仪器区别于一般仪器的重要标志。在单片机组成的智 能化仪器中,常用功能键进行人机对话。 在本系统中, 报警值的设定、 显示的内容 (如报警值, 实测值或峰值等) 、 打印、 “黑匣子”运行与否等,均需要人工干预。 浙江工业大学浙西分校信电系毕业设计(论文) 23 为了实现上述功能,在 p2.3p2.7 设置“置入” 、 “+1” 、 “左移” “完 成设置” “声警解除”按键。仪表的工作状态管理通过监控程序来实现,程序流 程图如图 8 所示。 p2.3 “置入” 设置的报警值存入 p2.4 “+1” 设置的报警值加 1 p2.5 “左移” 设置的报警值左移一位 p2.6 “确认” 完成设置 p2.7 “声警解除” 解除报警信号 仪表上电复位后,则显示报警初值 3100r/min。若需要改变报警值,首先 利用“+1” 、键将欲设的最高位置于显示值的个位,再用“左移”键左、移一位, 而后设置次高位。如此反复 4 次,完成新的报警值设置。用“置入”键存入相应 单元。每次测量的转速值都与报警值比较,若大于等于报警值,则进行声、光报 警。 此外,仪器还设有“声警解除” 、 “报警复位” 、超速打印/存数、 “检查” 、 “清楚” 、 “60/1” 、 “打印否” 、 “走纸” 、 “复位”等按钮或开关,以供不同情 况下使用。 5.2 显示器接口: 在单片机系统中, 最常用的两种显示器是发光二极管显示器(led)和液晶显 示器(lcd)。本次设计,我采用发光二极管显示器。七段 led 有共阴极与共阳极 两种。为了在七段 led 上显示字母或数字,必须将其转换可通过硬件译码或软 件来实现。 本系统的输出部分就是 led 显示驱动。 驱动电路的主要作用是将从单片机 传送出来的脉冲进行功率驱动, 以便于在数码管上显示。 它由集成电路 mc14499 和 74ls06 来担当。 mc14499 是 motorola 公司的高集成度 led 显示驱动器,采用动态扫 描方式显示驱动 4 个 led 数码管。它集锁存、译码、驱动、扫描、时钟于一体。 (它包括 1 个 20 位移位寄存器、1 個锁存器、1 個多路输出器) 。它所需的辅助 电路简单,在单片机数据传送时采用串行同步方式。用 mc14499 组成的单片机 的显示电路, 具有占用单片机软件资源小, 不再外加电路即可于单片机协调工作, 使用灵活方便,电路简单可靠,无需外加驱动器等特点。 (1).引脚排列:如图 5.3 所示。 浙江工业大学浙西分校信电系毕业设计(论文) 24 图 5.3 mc14499 引脚图 (2).引脚说明: vdd:正电源端; vss:电源地; ag:七段显示输出; dp:小数点显示输出; :4 个位选通端; osc:晶振输入端,外接电容,片內可产生 200800hz 的扫描信号; d:串行数据输入端; clk:时钟输入端,作为串行数据接收的同步信号; en:使能端,为低电平时,允许 mc14499 接收串行输入数据;为高电平 时,片内移位寄存器将数据送入锁存器中锁存。 mc14499 每次接收 20 位串行输入数据,前 4 位为 4 个 led 的小数点选择 位,后 16 位是 4 个 led 的 bcd 码输入数据,一帧数据的传输格式如下 5.1 表 所示: 5.1 mc14499 一帧数据表 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 lsb msb iv 段码 lsb msb iii 段码 lsb msb ii 段码 lsb msb i 段码 lsb msb 小数点选择 一帧数据输入完后,便被锁存起来,供 4 位 led 显示使用,cpu 只提供 显示用的数据,数据的显示則是由 mc14499 对各位进行动态扫描实现,扫描频 率由 osc 端外接电容決定。mc14499 的 bcd 码显示字节如表 5.1 所示 表 5.2 mc14499 的 bcd 码显示表 bcd 码 显示字节 bcd 码 显示字节 0000 0 1000 8 0001 1 1001 9 0010 2 1010 a 0011 3 1011 i 浙江工业大学浙西分校信电系毕业设计(论文) 25 0100 4 1100 ii 0101 5 1101 u 0110 6 1101 - 0111 7 1111 熄灭 由于 mc14499 的这 4 个位选通端必须通过一个反相驱动器后才能控制 4 个 led,所以在这次设计中我使用的是集电极开路高压输出的六反相缓冲器/驱 动器 74ls06,其引脚排列如图 5.4 所示。 如图 5.4 74ls06 的引脚排列 其管脚 1,3,5,9,11,13 为输入端;管脚 2,4,6,8,10,12 为输出 端。其推荐工作条件如表 3.6 所示。注意到 74ls06 输出低电平电流为 40ma, 为了能够驱动 4 个显示器,限流电阻的大小要配备合适。电源电压是 5v,一个 发光二极管的管压降约为 1.2v,经过计算,限流电阻选 1k 左右合适。 在串行口方式下,a t 89c51 单片机的串行输出端 txd 提供时钟信 号, 串行口输入端rxd 输出串行数据, 选定p1 口或p3 口任意一根i/o 线以提 供 mc14499 所需的使能信号。在串行口方式下, 应将 a t 89c51 单片机串行口 的工作方式置为 0 方式。串行口方式特别适合于系统硬件无相互间通道的情况。 在该控制方式下应注意:a t 89c2051 单片机串行口输出数据时, 发送顺序 为从数据低位到高位, 而 mc14499 将 bcd 码数据译为十进制数时, 却是将原 数据的低位作为高位处理的, 如将某次数据的最后八位 10001001b (84h ) 送入 mc14499 时, 从低位到高位被分布于其移位寄存器的 13 20 单元中, 即最低 位 0 在 13 单元, 最高位 1 在 20 单元,mc14499 进行译码时, 却是将 0 作为 最高位, 1 作为最低位处理时, 于是成为00100001b (21h ) , 即段码3 数据 为 0010b,显示器显示“2”, 段码 4 数据为 0001b, 显示器显示“1”, 因此, 必 须将欲显示的压缩 bcd 码进行循环位移(即将最低位移至最高位, 第二位移至第 七位, 其余以次类推) 后再送入 mc14499, 以保证显示的正确性。mc14499 每 次可接收的串行数据最多为 20 位, 而 a t 89c2051 单片机由于是 8 位机, 每次 送出的数据并非一定是 20 位, 特别是在串行口控制方式下, 串行口每次送出数 据为 8 位, 因此 mc14499 每次接收的数据必然多于或少于 20 位。当 a t 89c2051 单片机送出的数据多于 20 位时,mc14499 接收的将是最后 20 位数据, 浙江工业大学浙西分校信电系毕业设计(论文) 26 20 位以前多余的数据在移位过程中被后来的数据挤出; 当 a t 89c2051 单片机 送出的数据少于 20 位时,mc14499 在接收移位过程中将保留一部分移位寄存器 中原来的数据。 a t 89c2051 单片机每次发送完数据后,必须将 mc14499 使能端 置位。这是因为 mc14499 进行译码输出的并非是其移位寄存器内的数据, 而是 其锁存器内的数据。 将使能端置位有两个作用: 第一, 禁止 mc14499 再接收外来 数据; 第二, 将移位寄存器内的数据送入锁存器中, 以提供译码输出。 图 5.5 at89c51 与 mc14499 接口电路 如图 5.5 所示, 在串行口控制方式下, 单片机的串行口 txd 提供时钟信号, rxd 输出串行数据,p1.0 提供使能信号,单片机工作在串行工作方式 0。单片 机在该工作方式下,发送数据循序从数据低位到高位,与 mc14499 接收数据循 序相反。因此,必须将传送的数据各位方向排列,机 d0 与 d7 交换,d1 与 d6 交换,依次类推。然后再发送到 mc14499,以保证显示的正确性。为了使串行 口数据输出与 mc14499 接收速率相匹配,单片机的工作频率为 3mhz.其串行控 制方式程序如下: 5.3 led 显示器 常用的 led 显示器有 led 状态显示器 (俗称发光二极管) 、 led 七段显示 器(俗称数码管)和 led 十六段显示器。发光二极管可显示两种状态,用于系 统状态显示;数码管用于数字显示;led 十六段显示器用于字符显示。本节只 介绍 led 七段显示器。通过数码管显示的数字来获取信息,加直观、快捷。 浙江工业大学浙西分校信电系毕业设计(论文) 27 5.3.1 数码管结构 数码管由 8 个发光二极管(以下简称字段)构成,通过不同的组合可用来 显示数字 0 9、字符 a f、h、l、p、r、u、y、符号“”及小数点“” 。数码 管的外形结构如图 5.6(a)所示。数码管又分为共阴极和共阳极两种结构,分别 如图 5.6(b)和图 5.6(c)所示。 a g d f ec b 10 9876 gf gndab ed gndc dp 12345 vdvd 5 v (a) (b)(c) dp (a)外型结构 (b)共阴极 (c )共阳极 图 5.6 数码管结构图 5.3.2 数码管工作原理 共阳极数码管的 8 个发光二极管的阳极(二极管正端)连接在一起。通常, 公共阳极接高电平(一般接电源) ,其它管脚接段驱动电路输出端。当某段驱动 电路的输出端为低电平时,则该端所连接的字段导通并点亮。根据发光字段的不 同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电 流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。 共阴极数码管的 8 个发光二极管的阴极 (二极管负端) 连接在一起。 通常, 公共阴极接低电平(一般接地) ,其它管脚接段驱动电路输出端。当某段驱动电 路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同 组合可显示出各种数字或字符。 此时, 要求段驱动电路能提供额定的段导通电流, 还需根据外接电源及额定段导通电流来确定相应的限流电阻。为了在七段 led 显示器上显示不同的数字或字符,首先要把数字或字符转换成相应的段码,字符 数据字与 led 段码各代码位的对应关系如表 5.2 所示 表 5.2 字符与 led 段码对应关系 浙江工业大学浙西分校信电系毕业设计(论文) 28 5.3.3 led 七段数码管显示方法七段数码管显示方法 1.3.3.1 静态显示接口 静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒 定截止。 这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或 接正电源(共阳极) 。每个数码管的 8 个字段分别与一个 8 位 i/o 口地址相连, i/o 口只要有段码输出,相应字符即显示出来,并保持不变,直到 i/o 口输出新 的段码。采用静态显示方式,较小的电流即可获得较高的亮度,且占用 cpu 时 间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成 本高,只适合于显示位数较少的场合。 1.3.3.2 动态显示接口 动态显示是一位一位地轮流点亮各位数码管, 这种逐位点亮显示器的方 式称为位扫描。通常,各位数码管的段选线相应并联在一起,由一个 8 位的 i/o 口控制;各位的位选线(公共阴极或阳极)由另外的 i/o 口线控制。动态方式显 示时,各数码管分时轮流选通,要使其稳定显示,必须采用扫描方式,即在某一 时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并 送出相应的段码。依此规律循环,即可使各位数码管显示将要显示的字符。虽然 这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显 示间隔足够短就可以给人以同时显示的感觉。 采用动态显示方式比较节省 i/o 口,硬件电路也较静态显示方式简单,但其 亮度不如静态显示方式,而且在显示位数较多时,cpu 要依次扫描,占用 cpu 较多的时间。所以在本次设计中我采用动态显示驱动发光二极管 led 显示器, 而所谓动态显示驱动就是给欲亮点的 led 通以脉冲电流,即采用分时的方法, 轮流控制各个显示器的 coms 端,使各个显示器轮流点亮,这时 led 的亮度就 是通断的平均亮度。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂 的(约为 1ms) ,但由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际 各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定 的显示数据,不会有闪烁感。但为保证足够的亮度,通过 led 的脉冲电流应数 倍与其额定电流值。动态显示驱动电路是单片机应用中常用的显示方式。led 动态显示接口电路是把所有显示器的 8 个笔划端的同名端连在一起, 而每个显示 器的公共极 com 是各自独立地受 i/o 线控制。cpu 向字段输出口送出字形码时 所有显示器接收到相同的字形码,但究竟是哪个显示器亮,则取决于 com 端, 我们可以通过程序控制那一位显示。 数据字 d7 d6 d5 d4 d3 d2 d1 d0 led 段 dp g f e d c b a 浙江

温馨提示

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

评论

0/150

提交评论