单片机课程设计-数字电压表.doc_第1页
单片机课程设计-数字电压表.doc_第2页
单片机课程设计-数字电压表.doc_第3页
单片机课程设计-数字电压表.doc_第4页
单片机课程设计-数字电压表.doc_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

单单片片机机课课程程设设计计说说明明书书 数字电压表 学生姓名学生姓名 班级班级BMZ 电气 091 学号学号0961402104 指导教师指导教师 完成日期完成日期2011 年 6 月 1 日 盐城工学院课程设计说明书 2011 2 目目 录录 摘要摘要 3 3 1 1 设计目的与功能要求设计目的与功能要求 4 1 11 1 设设计目的计目的 4 4 1 21 2 功能要求功能要求 4 4 2 2 总体设计总体设计 5 2 12 1 系统设计系统设计 5 2 22 2 设计方案设计方案 5 2 32 3 总体设计框图总体设计框图 5 3 3 硬件电路设计硬件电路设计 7 3 3 1 1 核心元器件介绍核心元器件介绍 7 3 3 1 1 1 1 芯片介绍芯片介绍 7 3 3 1 2 1 2 其它部分简介其它部分简介 19 1 1 模拟电压输入部分模拟电压输入部分 19 2 2 液晶显示器液晶显示器 19 19 4 4 软件设计软件设计 2 21 1 4 14 1 C C 语言流程图语言流程图 21 4 24 2 C C 语言程序清单语言程序清单 22 5 5 调试仿真调试仿真 26 6 6 设计总结设计总结 29 30 盐城工学院课程设计说明书 2011 3 摘要 摘要 数字电压表的诞生打破了传统电子测量仪器的模式和格局 它显示清晰直观 读 数准确 采用了先进的数显技术 大大减少了因人为因素所造成的误差事件 数字 电压表是把连续的模拟量 直流输入电压 转换成不连续 离散的数字形式 并加 以显示的仪表 数字电压表把电子技术 计算技术 自动化技术的成果与精密电测 量技术密切的结合在一起 成为仪器 仪表领域中独立而完整的一个分支 数字电 压表标志着电子仪器领域的一场革命 也开创了现代电子测量技术的先河 本设计 采用了以单片机为开发平台 控制系采用 AT89C52 单片机 A D 转换采用 ADC0808 系统除能保确实现要求的功能以外 还能方便进行 8 路其他 A D 转换量 得测量 远程测量结果传送等扩展功能 简易数字电压测量电路由 A D 转换 数据 处理 显示控制等组成 关键词关键词 单片机 AT98C52 A D 转换 ADC0808 数据处理 盐城工学院课程设计说明书 2011 4 1 1 设计目的与功能要求设计目的与功能要求 1 11 1 设计目的设计目的 利用单片机 AT89C52 及 ADC0808 制作 3 位数字电压表 更好地学习掌握单片机 AT89C52 的工作原理及 A D 的转换编程方法 1 21 2 功能要求功能要求 主控部分 选择单片机为核心元件构成系统 检测部分 测量电压范围分为两档 DC 0 5V 和 DC 0 50V 最小测量电压误 差 50mV 显示部分 用 4 位数码管显示测量电压 2 位整数 2 位小数 盐城工学院课程设计说明书 2011 5 2 2 总体设计总体设计 2 12 1 系统设计系统设计 主要分为两部分 硬件电路及软件程序 硬件电路包括 单片机及外围电路 模 拟信号采集电路 A D 转换电路 数码管显示电路 各部分电路的衔接 软件的程 序可采用 C 语言或汇编 这里采用汇编语言 2 22 2 设计方案设计方案 数字电压表的设计方案很多 但采用集成电路来设计较多 其设计主要是由模 拟电路和数字电路两大部分组成 模拟部分包括 A D 转换器 基准电源等 数字部分 包括振荡器 数码显示 计数器等 其中 A D 转换器将输入的模拟量转换成数字 量 它是数字电压表的一个核心部件 对它的选择一般有两种选择方案 1 采用双积分 A D 转换器 MC14433 它有多路调制的 BCD 码输出端和超量程输 出端 采用动态扫描显示 便于实现自动控制 且具有外接元件少 输入阻抗高 功 耗低 电源电压范围宽 精度高等特点 但芯片只能完成 A D 转换功能 要实现显 示功能还需配合其它驱动芯片等 使得整部分硬件电路板布线复杂 加重了电路设 计和实际焊接的工作 2 逐次逼近式 A D 转换器 它的转换速度更快 而且精度更高 比如 ADC0808 ADC0809 等 它们通常具有 8 路模拟选通开关及地址译码 锁存电路等 它们可以与单片机系统连接 将数字量送单片机进行分析和显示 这样电路设计简 单 电路板布线不复杂 便于焊接 调试 虽然 MC14433 的精度高 功耗低 但是此芯片的成本高 要实现显示功能还需 配合其它驱动芯片等 使得整部分硬件电路板布线复杂 根据本次设计的要求和目 的 我们决定使用第二种方案 2 32 3 总体设计框图总体设计框图 盐城工学院课程设计说明书 2011 6 振荡器 时序脉冲振荡器 时序脉冲 在这个电路图中 单片机 AT89C52 与模数转换器 ADC0808 作为核心元件 晶振 荡器将晶振信号由 XTAL 传入驱动单片机工作 由电阻电容组成的复位电路 通电后 按下开关 上拉电阻使 RES 脚高电平 实现复位 AT89C52 单片机中 P0 口接显示 器的段选信号 控制显示器的段显示 P2 1 P2 3 接显示器的位选信号 控制显示 器的位显示 P2 4 P2 7 接 ADC0808 的控制信号引脚 CLOCK EOC START ALE 其作用 在芯片引脚内有详细介绍 P1 口接 ADC0808 的数据口 用于向码数转换器传输数据 ADC0808 通过 OUT1 OUT8 向 P3 0 传送转换好的数据 经量化编码后传入单片机 为 了明了 这里采用单通道 通道 0 控制 其余通道电平拉低 用双刀双掷开关控 制其量程的选择 ADC0808 在单片机提供的时钟信号下引发中断 当上升沿过来时 进行清零 当下降沿来临时启动芯片开始工作 START 则控制 ADC0808 的运行与否 对于电压的采集 在仿真图中采用电阻分压模拟 实际设计中 采用霍尔传感器 利用其电流计磁场平衡式检测外界电流 转换成电压后送入模数转换器 采采 集集 单单 片片 机机 A D 转换器转换器 ADC0809 外界模拟信号外界模拟信号 数字信号数字信号 量程变换处理量程变换处理 液晶显示器液晶显示器 置置 入入 预先写好的汇预先写好的汇 编程序编程序 显示出模拟电压显示出模拟电压 的数值的数值 盐城工学院课程设计说明书 2011 7 3 3 硬件电路设计硬件电路设计 3 13 1 核心元器件介绍核心元器件介绍 3 1 13 1 1 芯片介绍芯片介绍 1 1 单片机单片机 AT89C52AT89C52 介绍介绍 a a 芯片引脚图 芯片引脚图 b b 描述 描述 AT89C52 是一个低电压 高性能 CMOS 8 位单片机 片内含 8k bytes 的可反 复擦写的 Flash 只读程序存储器和 256 bytes 的随机存取数据存储器 RAM 器件采用 ATMEL 公司的高密度 非易失性存储技术生产 兼容标准MCS 51 指令系统 片内置通用 8 位中央处理器和 Flash 存储单元 功能强大的 AT89C5 2 单片机可为您提供许多较复杂系统控制应用场合 AT89C52 有 40 个引脚 32 个外部双向输入 输出 I O 端口 同时内含 2 个外中断口 3 个 16 位可编程 定时计数器 2 个全双工串行通信口 2 个读写口线 AT89C52 可以按照常规方 法进行编程 但不可以在线编程 S 系列的才支持在线编程 其将通用的微处理 器和 Flash 存储器结合在一起 特别是可反复擦写的Flash 存储器可有效地降 低开发成本 C C 主要特性 主要特性 1 兼容 MCS51 指令系统 盐城工学院课程设计说明书 2011 8 2 8k 可反复擦写 大于 1000 次 Flash ROM 3 32 个双向 I O 口 4 256x8bit 内部 RAM 5 3 个 16 位可编程定时 计数器中断 6 时钟频率 0 24MHz 7 2 个串行中断 可编程 UART 串行通道 8 2 个外部中断源 共 8 个中断源 9 2 个读写中断口线 3 级加密位 10 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能 11 有 PDIP PQFP TQFP 及 PLCC 等几种封装形式 以适应不同产品的需 求 d d 引脚描述引脚描述 A AT T8 89 9C C5 52 2P 为 40 脚双列直插封装的 8 位通用微处理器 采用工业标准的C51 内 核 在内部功能及管脚排布上与通用的8xc52 相同 其主要用于会聚调整时的 功能控制 功能包括对会聚主 IC 内部寄存器 数据 RAM 及外部接口等功能部 件的初始化 会聚调整控制 会聚测试图控制 红外遥控信号IR 的接收解码及 与主板 CPU 通信等 主要管脚有 XTAL1 19 脚 和 XTAL2 18 脚 为振荡器 输入输出端口 外接 12MHz 晶振 RST Vpd 9 脚 为复位输入端口 外接电 阻电容组成的复位电路 VCC 40 脚 和 VSS 20 脚 为供电端口 分别接 5 V 电源的正负端 P0 P3 为可编程通用 I O 脚 其功能用途由软件定义 在本 设计中 P0 端口 32 39 脚 被定义为 N1 功能控制端口 分别与 N1 的相应 功能管脚相连接 13 脚定义为 IR 输入端 10 脚和 11 脚定义为 I2C 总线控制 端口 分别连接 N1 的 SDAS 18 脚 和 SCLS 19 脚 端口 12 脚 27 脚及 2 8 脚定义为握手信号功能端口 连接主板CPU 的相应功能端 用于当前制式的 检测及会聚调整状态进入的控制功能 VCC 电源电压 GNDGND 地 P0P0 口 口 P0 口是一组 8 位漏极开路型双向 I O 口 也即地址 数据总线复用口 盐城工学院课程设计说明书 2011 9 作为输出口用时 每位能吸收电流的方式驱动8 个 TTL 逻辑门电路 对端口 P0 写 1 时 可作为高阻抗输入端用 在访问外部数据存储器或程序存储器时 这组口线分时转换地址 低8 位 和数据总线复用 在访问期间激活内部上拉电阻 在 Flash 编程时 P0 口接收指令字节 而在程序校验时 输出指令字节 校验时 要求外接上拉电阻 P1P1 口 口 P1 是一个带内部上拉电阻的 8 位双向 I O 口 P1 的输出缓冲级可驱 动 吸收或输出电流 4 个 TTL 逻辑门电路 对端口写 1 通过内部的上拉 电阻把端口拉到高电平 此时可作输入口 作输入口使用时 因为内部存在上拉 电阻 某个引脚被外部信号拉低时会输出一个电流 IIL 与 AT89C51 不同之处是 P1 0 和 P1 1 还可分别作为定时 计数器 2 的外 部计数输入 P1 0 T2 和输入 P1 1 T2EX Flash 编程和程序校验期间 P1 接收低 8 位地址 表 P1 0 和 P1 1 的第二功能 引脚 号 功能 特性 引脚 号 功能特性 P1 0 T2 时钟 输出 P1 1 T2EX 定时 计数 器 2 P2P2 口 口 P2 是一个带有内部上拉电阻的 8 位双向 I O 口 P2 的输出缓冲级可 驱动 吸收或输出电流 4 个 TTL 逻辑门电路 对端口 P2 写 1 通过内部 的上拉电阻把端口拉到高电平 此时可作输入口 作输入口使用时 因为内部存 在上拉电阻 某个引脚被外部信号拉低时会输出一个电流 IIL 在访问外部程序存储器或 16 位地址的外部数据存储器 例如执行MOVX DPTR 指令 时 P2 口送出高 8 位地址数据 在访问 8 位地址的外部数据存 盐城工学院课程设计说明书 2011 10 储器 如执行 MOVX RI 指令 时 P2 口输出 P2 锁存器的内容 Flash 编程或校验时 P2 亦接收高位地址和一些控制信号 P3P3 口 口 P3 口是一组带有内部上拉电阻的 8 位双向 I O 口 P3 口输出缓冲级可 驱动 吸收或输出电流 4 个 TTL 逻辑门电路 对 P3 口写入 1 时 它们 被内部上拉电阻拉高并可作为输入端口 此时 被外部拉低的P3 口将用上拉 电阻输出电流 IIL P3 口除了作为一般的 I O 口线外 更重要的用途是它的第二功能 P3 口还接收一些用于 Flash 闪速存储器编程和程序校验的控制信号 RSTRST 复位输入 当振荡器工作时 RST 引脚出现两个机器周期以上高电平将使 单片机复位 ALE ALE 当访问外部程序存储器或数据存储器时 ALE 地址锁存允许 输出 PROG 脉冲用于锁存地址的低 8 位字节 一般情况下 ALE 仍以时钟振荡频率的 1 6 输出固定的脉冲信号 因此它可对外输出时钟或用于定时目的 要注意的是 每 当访问外部数据存储器时将跳过一个ALE 脉冲 对 Flash 存储器编程期间 该引脚还用于输入编程脉冲 PROG 如有必要 可通过对特殊功能寄存器 SFR 区中的 8EH 单元的 D0 位置位 可禁止 ALE 操作 该位置位后 只有一条 MOVX 和 MOVC 指令才能将 ALE 激活 此外 该引脚会被微弱拉高 单片机执行外部程序时 应设置ALE 禁止位无效 PSENPSEN 程序储存允许 PSEN 输出是外部程序存储器的读选通信号 当 AT89C52 由外部程序存储器取指令 或数据 时 每个机器周期两次PSEN 有 效 即输出两个脉冲 在此期间 当访问外部数据存储器 将跳过两次PSEN 信号 EA VPPEA VPP 外部访问允许 欲使 CPU 仅访问外部程序存储器 地址为 0000H FFFFH EA 端必须保持低电平 接地 需注意的是 如果加密位 LB1 被编程 复位时内部会锁存 EA 端状态 如 EA 端为高电平 接 Vcc 端 CPU 则执行内部程序存储器中的指令 Flash 存储器编程时 该引脚加上 12V 的编程允许电源 Vpp 当然这必须 是该器件是使用 12V 编程电压 Vpp 盐城工学院课程设计说明书 2011 11 XTAL1XTAL1 振荡器反相放大器的及内部时钟发生器的输入端 XTAL2XTAL2 振荡器反相放大器的输出端 特特殊殊功功能能寄寄存存器器 在 AT89C52 片内存储器中 80H FFH 共 128 个单元为特殊功能寄存器 SFE SFR 的地址空间映象如表 2 所示 并非所有的地址都被定义 从80H FFH 共 128 个字节只有一部分被定义 还有相当一部分没有定义 对没有定义的单元 读写将是无效的 读出的数值将不确定 而写入的数据也将丢失 不应将数据 1 写入未定义的单元 由于这些单元在将来的产品中可能赋予新的功能 在 这种情况下 复位后这些单元数值总是 0 AT89C52 除了与 AT89C51 所有的 定时 计数器 0 和定时 计数器 1 外 还增加了一个定时 计数器 2 定时 计数 器 2 的控制和状态位位于 T2CON 参见表 3 T2MOD 参见表 4 寄存器对 RCAO2H RCAP2L 是定时器 2 在 16 位捕获方式或 16 位自动重装载方式下的 捕获 自动重装载寄存器 数数据据存存储储器器 AT89C52 有 256 个字节的内部 RAM 80H FFH 高 128 个字节与特殊功能寄 存器 SFR 地址是重叠的 也就是高 128 字节的 RAM 和特殊功能寄存器的地址是相同的 但物理上它们是分开的 当一条指令访问 7FH 以上的内部地址单元时 指令中使用的寻址方式是不 同的 也即寻址方式决定是访问高128 字节 RAM 还是访问特殊功能寄存器 如 果指令是直接寻址方式则为访问特殊功能寄存器 例如 下面的直接寻址指令访问特殊功能寄存器0A0H 即 P2 口 地址单 元 MOV 0A0H data 间接寻址指令访问高 128 字节 RAM 例如 下面的间接寻址指令中 R0 的内容为 0A0H 则访问数据字节地址为 0A0H 而不是 P2 口 0A0H MOV R0 data 堆栈操作也是间接寻址方式 所以 高128 位数据 RAM 亦可作为堆栈区使 用 盐城工学院课程设计说明书 2011 12 定时器 0 和定时器 1 AT89C52 的定时器 0 和定时器 1 的工作方式与 AT89C51 相同 定定时时器器 2 2 定时器 2 是一个 16 位定时 计数器 它既可当定时器使用 也可作为外部 事件计数器使用 其工作方式由特殊功能寄 存器 T2CON 如表 3 的 C T2 位选择 定时器 2 有三种工作方式 捕获方 式 自动重装载 向上或向下计数 方式和波 特率发生器方式 工作方式由 T2CON 的控制位来选择 定时器 2 由两个 8 位寄存器 TH2 和 TL2 组成 在定时器工作方式中 每 个机器周期 TL2 寄存器的值加 1 由于一个机 器周期由 12 个振荡时钟构成 因此 计数速率为振荡频率的1 12 在计数工作方式时 当 T2 引脚上外部输入信号产生由 1 至 0 的下降沿时 寄存器的值加 1 在这种工作方式下 每个 机器周期的 5SP2 期间 对外部输入进行采样 若在第一个机器周期中采到 的值为 1 而在下一个机器周期中采到的值为0 则在紧跟着的下一个周期的 S3P1 期间寄存器加 1 由于识别 1 至 0 的跳 变需要 2 个机器周期 24 个振荡周期 因此 最 高计数速率为振荡频率的 1 24 为确保采样的正确性 要求输入的电平在 变化前至少保持一个完整周期的时间 以保证输 入信号至少被采样一次 捕捕获获方方式式 在捕获方式下 通过 T2CON 控制位 EXEN2 来选择两种方式 如果 EXEN2 0 定时器 2 是一个 16 位定时器或计数器 计数溢出时 对 T2CON 的溢出标志 TF2 置位 同时激活中断 如果 EXEN2 1 定时器 2 完成相同的操作 而当 T2EX 引 脚外部输入信号发生 1 至 0 负跳变时 也出现 TH2 和 TL2 中的值分别被 捕获到 RCAP2H 和 RCAP2L 中 另外 T2EX 引 脚信号的跳变使得 T2CON 中的 EXF2 置位 与 TF2 相仿 EXF2 也会激活 中断 捕获方式如图 4 所示 盐城工学院课程设计说明书 2011 13 自自动动重重装装载载 向向上上或或向向下下计计数数器器 方方式式 当定时器 2 工作于 16 位自动重装载方式时 能对其编程为向上或向下计数 方式 这个功能可通过特殊功能寄存器T2CON 见表 5 的 DCEN 位 允许向下计数 来选择的 复位时 DCEN 位置 0 定时器 2 默认设置为向上计数 当 DCEN 置位时 定时器 2 既可向上计数也可向下计数 这取决于T2EX 引脚的值 参见图 5 当 DCEN 0 时 定时器 2 自动设置 为向上计数 在这种方式下 T2CON 中的 EXEN2 控制位有两种选择 若 E XEN2 0 定时器 2 为向上计数至 0FFFFH 溢 出 置位 TF2 激活中断 同时把 16 位计数寄存器 RCAP2H 和 RCAP2L 重装 载 RCAP2H 和 RCAP2L 的值可由软件预置 若 EXEN2 1 定时器 2 的 16 位重装载由溢出或外部输入端 T2EX 从 1 至 0 的下降沿触发 这个脉冲使 EXF2 置位 如果 中断允许 同样产生中断 定时器 2 的中断入口地址是 002BH 0032H 当 DCEN 1 时 允许定时器 2 向上或向下计数 如图 6 所示 这种方式下 T2EX 引脚控制计数器方向 T2EX 引脚为逻 辑 1 时 定时器向上计数 当计数 0FFFFH 向上溢出时 置位 TF2 同 时把 16 位计数寄存器 RCAP2H 和 RCAP2L 重装 载到 TH2 和 TL2 中 T2EX 引脚为逻辑 0 时 定时器 2 向下计数 当 TH2 和 TL2 中的数值等于 RCAP2H 和 RCAP2L 中的值时 计数溢出 置位 TF2 同时将 0FFFFH 数值重新装入定时寄存器 中 当定时 计数器 2 向上溢出或向下溢出时 置位 EXF2 位 可可编编程程时时钟钟输输出出 盐城工学院课程设计说明书 2011 14 定时器 2 可通过编程从 P1 0 输出一个占空比为 50 的时钟信号 如图 8 所示 P1 0 引脚除了是一个标准的 I O 口外 还可以通过编程使其作为定时 计数器 2 的外部时钟输入和输出占空比 50 的时钟脉冲 当时钟振荡频率为 16 MHz 时 输出时钟频率范围为 61Hz 4MHz 当设置定时 计数器 2 为时钟发生 器时 C T2 T2CON 1 0 T2OE T2MOD 1 1 必须由 TR2 T2CON 2 启动或停止定时器 时钟输出频率取决于振荡频率和定时器2 捕获寄存器 RC AP2H RCAP2L 的重新装载值 公式如下 输出时钟频率 振荡器频率 4 65 536 RCP2H RCP2L 在时钟输出方式下 定时器 2 的翻转不会产生中断 这个特性与作为波特 率发生器使用时相仿 定时器 2 作为波特率发生器使用时 还可作为时钟发生 器使用 但需要注意的是波特率和时钟输出频率不能分开确定 这是因为它们同 使用 RCAP2L 和 RCAP2L U UA AR RT T AT89C52 的 UART 工作方式与 AT89C51 工作方式相同 中中断断 AT89C52 共有 6 个中断向量 两个外中断 INT0 和 INT1 3 个定时器 中断 定时器 0 1 2 和串行口中断 所有这些中断源如图9 所示 这些中断源可通过分别设置专用寄存器IE 的置位或清 0 来控制每一个中 断的允许或禁止 IE 也有一个总禁止位 EA 它能控制所有中断的允许或禁止 注意表 5 中的 IE 6 为保留位 在 AT89C51 中 IE 5 也是保留位 程序员 不应将 1 写入这些位 它们是将来 AT89 系列产品作为扩展用的 定时器 2 的中断是由 T2CON 中的 TF2 和 EXF2 逻辑或产生的 当转向中断 服务程序时 这些标志位不能被硬件清除 事实上 服务程序需确定是 TF2 或 EXF2 产生中断 而由软件清除中断标 志位 定时器 0 和定时器 1 的标志位 TF0 和 TF1 在定时器溢出那个机器周期的 S 5P2 状态置位 而会在下一个机器周期才查 询到该中断标志 然而 定时器 2 的标志位 TF2 在定时器溢出的那个机器 周期的 S2P2 状态置位 并在同一个机器周期内查询到该标志 盐城工学院课程设计说明书 2011 15 时时钟钟振振荡荡器器 AT89C52 中有一个用于构成内部振荡器的高增益反相放大器 引脚XTAL1 和 XTAL2 分别是该放大器的输入端和输出端 这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡 器 外接石英晶体 或陶瓷谐振器 及电容C1 C2 接在放大器的反馈回路中 构成并联振荡电路 对外接电容 C1 C2 虽然没有十分严格的要求 但电容容量 的大小会轻微影响振荡频率的高低 振荡器工作的稳定性 起振的难易程序及温 度稳定性 如果使用石英晶体 我们推荐电容使用30pF 10pF 而如使用陶瓷 谐振器建议选择 40pF 10F 可以采用外部时钟 这种情况下 外部时钟脉冲接 到 XTAL1 端 即内部时钟发生器的输入端 XTAL2 则悬空 由于外部时钟信号 是通过一个 2 分频触发器后作为内部时钟信号的 所以对外部时钟信号的占空 比没有特殊要求 但最小高电平持续时间和最大的低电平持续时间应符合产品技 术条件的要求 电路内部振荡 外部振荡电路 盐城工学院课程设计说明书 2011 16 2 ADC08082 ADC0808 芯片芯片 a a 引脚图引脚图 b b 描述 描述 ADC 0808 和 ADC 0809 除精度略有差别外 前者精度为 8 位 后者精度为 7 位 其余各方面完全相同 它们都是 CMOS 器件 不仅包括一个 8 位的逐次逼近型的 ADC 部分 而且还提供一个 8 通道的模拟多路开关和通道寻址逻辑 因而有理由把 它作为简单的 数据采集系统 利用它可直接输入 8 个单端的模拟信号分时进行 A D 转换 在多点巡回检测和过程控制 运动控制中应用十分广泛 C C 主要特性主要特性 1 8 路输入通道 8 位 A D 转换器 即分辨率为 8 位 2 具有转换起停控制端 盐城工学院课程设计说明书 2011 17 3 转换时间为 100 s 时钟为 640kHz 时 130 s 时钟为 500kHz 4 单个 5V 电源供电 5 模拟输入电压范围 0 5V 不需零点和满刻度校准 6 工作温度范围为 40 85 摄氏度 7 低功耗 约 15mW D D 外部特性 引脚功能 外部特性 引脚功能 IN0IN0 IN7IN7 8 路模拟量输入端 DB0 DB7DB0 DB7 8 位数字量输出端 ADDAADDA ADDBADDB ADDCADDC 3 位地址输入线 用于选通 8 路模拟输入中的一路 ALEALE 地址锁存允许信号 输入 高电平有效 STARTSTART A D 转换启动脉冲输入端 输入一个正脉冲 至少 100ns 宽 使其启动 脉冲上升沿使 0809 复位 下降沿启动 A D 转换 EOCEOC A D 转换结束信号 输出 当 A D 转换结束时 此端输出一个高电平 转 换期间一直为低电平 OEOE 数据输出允许信号 输入 高电平有效 当 A D 转换结束时 此端输入一个高 电平 才能打开输出三态门 输出数字量 CLKCLK 时钟脉冲输入端 要求时钟频率不高于 640KHZ REFREF REFREF 基准电压 VccVcc 电源 单一 5V GNDGND 接地 盐城工学院课程设计说明书 2011 18 3 1 23 1 2 其他部分简介其他部分简介 1 1 模拟电压输入部分模拟电压输入部分 这里设计将实际的模拟信号采集电路简化成一个分压电路模型 实际由霍尔传 感器利用其电流计磁场平衡式检测外界电流 转换成电压 模拟电压 后送入模数 转换器 2 2 液晶显示器液晶显示器 1602液晶也叫1602字符型液晶它是一种专门用来显示字母 数字 符号等的点阵型液晶模块它 有若干个5X7或者5X11等点阵字符位组成 每个点阵字符位都可以显示一个字符 每位之间有 一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用 正因为如此所以他不能显 示图形 用自定义 CGRAM 显示效果也不好 n1602LCD 是指显示的内容为16X2 即可以显示两行 每行16个字符液晶模块 显示字符和数字 n 目前市面上字符液晶绝大 多数是基于 HD44780液晶芯片的 控制原理是完全相同的 因此基于 HD44780写的控制程序可 以很方便地应用于市面上大部分的字符型液晶 管管脚脚功功能能 盐城工学院课程设计说明书 2011 19 LCD1602引脚图 1602 采用标准的 16 脚接口 其中 第 1 脚 VSS 为电源地 第 2 脚 VDD 接 5V 电源正极 第 3 脚 V0 为液晶显示器对比度调整端 接正电源时对比度最弱 接地电源时 对比度最高 对比度过高时会 产生 鬼影 使用时可以通过一个 10K 的电位器调整对比度 第 4 脚 RS 为寄存器选择 高电平 1 时选择数据寄存器 低电平 0 时选择指令寄存器 第 5 脚 RW 为读写信号线 高电平 1 时进行读操作 低电平 0 时进行写操作 第 6 脚 E 或 EN 端为使能 enable 端 第 7 14 脚 D0 D7 为 8 位双向数据端 第 15 16 脚 空脚或背灯电源 15 脚背光正极 16 脚背光负极 1602LCD 的的特特性性 5V 电压 对比度可调 内含复位电路 提供各种控制命令 如 清屏 字符闪烁 光标闪烁 显示移位等多种功能 有 80 字节显示数据存储器 DDRAM 内建有 192 个 5X7 点阵的字型的字符发生器 CGROM 8 个可由用户自定义的 5X7 的字符发生器 CGRAM 1602LCD 特特征征及及应应用用 微功耗 体积小 显示内容丰富 超薄轻巧 常用在袖珍式仪表和低功耗应用系统中 盐城工学院课程设计说明书 2011 20 4 4 软件设计软件设计 4 14 1 C C 语言流程图语言流程图 开始开始 系统初始化系统初始化 启动启动 A D 转换转换 采集采集 A D 转换值转换值 数据转换数据转换 调用显示调用显示 三位是否显示完 三位是否显示完 完 完 读电压值读电压值 Y Y N N ENDEND 转换结束 转换结束 Y N 盐城工学院课程设计说明书 2011 21 4 24 2 C C 语言程序清单语言程序清单 主程序主程序 include include define define ucharuchar unsignedunsigned charchar define define uintuint unsignedunsigned intint intint getdata temp getdata temp charchar ge shi bai qian dat num ge shi bai qian dat num ucharuchar codecode table 0123456789 table 0123456789 ucharuchar codecode table1 diantable1 dian yaya 1 1 0 50 5 v v ucharuchar codecode table2 diantable2 dian yaya 2 2 0 500 50 v v sbitsbit sw2 P3 4 sw2 P3 4 量程切换量程切换 sbitsbit ST P2 4 ST P2 4 AD AD 转换控制信号设置转换控制信号设置 sbitsbit OE P2 6 OE P2 6 sbitsbit EOC P2 7 EOC P2 7 sbitsbit CL P2 5 CL P2 5 sbitsbit rs P2 1 rs P2 1 液晶液晶 16021602 控制信号设置控制信号设置 sbitsbit rw P2 2 rw P2 2 sbitsbit e P2 3 e P2 3 盐城工学院课程设计说明书 2011 22 voidvoid init init voidvoid adzh adzh voidvoid delay uintdelay uint z z voidvoid dis dis voidvoid dis1 dis1 voidvoid zhongd zhongd voidvoid main main zhongd zhongd while 1 while 1 init init while sw2 0 while sw2 0 adzh adzh temp getdata 2 temp getdata 2 bai temp 100 bai temp 100 shi temp 100 bai 10 shi temp 100 bai 10 ge temp 100 bai 10 shi ge temp 100 bai 10 shi qian a qian a dis if bai 5if bai 5shi 0 ge 0 qian a dis while P0 P0 bai 5 shi 0 ge 0 qian a dis while P0 P0 盐城工学院课程设计说明书 2011 23 delay 50 delay 50 while sw2 1 while sw2 1 adzh adzh temp getdata 2 temp getdata 2 bai temp 100 bai temp 100 shi temp 100 bai 10 shi temp 100 bai 10 ge temp 100 bai 10 shi ge temp 100 bai 10 shi qian a qian a dis1 if bai 5if bai 5shi 0 ge 0 qian a dis1 while P0 P0 bai 5 shi 0 ge 0 qian a dis1 while P0 P0 voidvoid adzh adzh OE 0 OE 0 ST 0 ST 0 delay 5 delay 5 ST 1 ST 1 delay 5 delay 5 盐城工学院课程设计说明书 2011 24 ST 0 ST 0 while EOC while EOC OE 1 OE 1 delay 1 delay 1 getdata P1 getdata P1 voidvoid delay uintdelay uint z z uintuint x y x y for x z x 0 x for x z x 0 x for y 100 y 0 y for y 100 y 0 y voidvoid write com ucharwrite com uchar com com rs 0 rs 0 P0 com P0 com delay 5 delay 5 e 1 e 1 delay 5 delay 5 e 0 e 0 delay 5 delay 5 盐城工学院课程设计说明书 2011 25 voidvoid write dat ucharwrite dat uchar dat dat rs 1 rs 1 P0 dat P0 dat delay 5 delay 5 e 1 e 1 delay 5 delay 5 e 0 e 0 delay 5 delay 5 voidvoid init init e 0 e 0 rw 0 rw 0 write com 0 x38 write com 0 x38 write com 0 x0c write com 0 x0c write com 0 x06 write com 0 x06 write com 0 x01 write com 0 x01 write com 0 x80 0 x49 write com 0 x80 0 x49 voidvoid zhongd zhongd 盐城工学院课程设计说明书 2011 26 TMOD 0 x01 TMOD 0 x01 TL0 65536 20 256 TL0 65536 20 256 TH0 65536 20 256 TH0 65536 20 256 EA 1 EA 1 ET0 1 ET0 1 TR0 1 TR0 1 voidvoid dis dis write com 0 x80 0 x00 write com 0 x80 0 x00 for num 0 num 17 num for num 0 num 17 num write dat table1 num write dat table1 num write com 0 x02 write com 0 x02 write com 0 x80 0 x49 write com 0 x80 0 x49 write dat table qian write dat table qian delay 1 delay 1 write dat table bai write dat table bai delay 1 delay 1 write dat table 10 write dat table 10 delay 1 delay 1 write dat table shi write dat table shi delay 1 delay

温馨提示

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

评论

0/150

提交评论