已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机课程设计单片机课程设计 设计报告设计报告 设计题目 设计题目 数字电压表数字电压表 班级学号 班级学号 5081016 姓姓 名 名 刘正刘正 设计时间 设计时间 2010 12 30 备备 注 注 2 目 录 第第 1 1 章章 绪论 3 第第 2 2 章章 设计任务与要求 2 1 设计任务 4 2 2 设计要求 4 第第 3 3 章章 方案设计 3 1 方法选择 5 3 2 方案设计 5 第第 4 4 章章 硬件设计 4 1 模块设计电路 6 4 1 1 电路时钟 6 4 1 2 控制电路 7 4 2 逐次逼近式 A D 转换模块设计 7 4 2 1 ADC0808 简介 7 4 2 2 ADC0808 内部结构图 8 4 2 3 A D 转换电路设计 9 4 3 8255 端口扩展模块 9 4 4 LED 显示模块 10 4 5 Protues 仿真电路设计 4 5 1 电路仿真图 10 4 5 2 电路工作原理 11 第第 5 5 章章 系统软件设计 5 1 系统主程序设计 12 5 2 系统源程序说明 13 第第 6 6 章章 调试与测试结果分析 15 第第 7 7 章章 结论 16 附录附录 1 1 源程序代码 17 附录附录 2 2 设计原理图 18 3 第 1 章 绪 论 数字电压表的基本工作原理是利用 A D 转换电路将待测的模拟信号转换成 数字信号 通过相应换算后将测试结果以数字形式显示出来的一种电压表 较 之于一般的模拟电压表 数字电压表具有精度高 测量准确 读数直观 使用 方便等优点 电压表的数字化测量 关键在于如何把随时连续变化的模拟量转化成数字 量 完成这种转换的电路叫模数转换器 A D 数字电压表的核心部件就是 A D 转换器 由于各种不同的 A D 转换原理构成了各种不同类型的数字电压表 一般说来 A D 转换的方式可分为两类 积分式和逐次逼近式 积分式 A D 转换器是先用积分器将输入的模拟电压转换成时间或频率 再 将其数字化 根据转化的中间量不同 它又分为 U T 电压 时间 式和 U F 电压 频率 式两种 逐次逼近式 A D 转换器分为比较式和斜坡电压式 根据不同的工作原理 比较式又分为逐次比较式及零平衡式等 斜坡电压式又分为线性斜坡式和阶梯 斜坡式两种 在高精度数字电压表中 常采用由积分式和比较式相结合起来的复合式 A D 转换器 本设计以 AT89C52 单片机为核心 以逐次比较型 A D 转换器 ADC0809 数码管显示器为主体 构造了一款简易的数字电压表 能够测量 1 路 0 5V 直流电压 最小分辨率 0 019V 4 第 2 章设计任务与要求 2 1 设计任务 利用 ADC0809 AT89C52 单片机及显示电路 设计一个数字电压表 能够 测量 0 5V 之间的直流电压值 能够实时检测显示 2 2 设计要求 测量最小分辨率为 0 019V 能够实时检测显示 5 第 3 章方案设计 3 1 方法设计 设计方法主要采用 ADC0809 AT89C52 8255 液晶显示实现电路 通过程序 设计 将被测信号由 ADC0809 模拟输入 1 端口输入 经过转换将数据采集到单 片机 经过数据转换 将转换数据经 8255 扩展口 PA PB 口送出 其中 PA 口输 出位选码 PB 口输出相应的字形码 在 5 个共阳数码管扫描显示 3 2 方案设计 经过以上方法设计 采用如图 3 1 所示方案逻辑图 模拟量 图 3 1 方案逻辑图 AT89C52 A D 转换转换 ADC 0808 电压电压 信号信号 8255 数码管数码管 显示显示 图 3 2 设计方案原理框图 设计模块说明 本设计方案主要有四大模块 1 AT89C52 单片机控制模块 2 ADC0808 数模转换模块 3 8255 端口扩展模块 逐次逼 A D 转换模块 单片机控制 模块 数码管显示 模块 6 4 LED 显示模块 第 4 章 硬件设计 由上可知数字电压表主要分为四个模块 AT89C52 单片机控制模块 ADC0808 数模转换模块 8255 端口扩展模块 LED 显示模块 4 1 单片机控制模块设计 单片机控制模块的作用是为控制各单元电路的运行并完成数据的换算或 处理 主要由单片机 时钟电路组成 4 1 1 时钟电路时钟电路 单片机工作的时间基准是由时钟电路提供的 在单片机的 XTAL1 和 XYAL2 两个管脚接一只晶振及两只电容就构成了单片机的时钟电路 电路中 电容器和对振荡频率有微调作用 通常取 30 10 pF 石英晶体选择 6MHz 或 12MHz 都可以 时钟电路如所示 图 4 1 时钟晶振 7 4 1 2 单片机控制模块电路图 图 4 2 单片机控制电路 4 2 逐次逼近式 A D 转换模块设计 4 2 1 ADC0808 简介 1 ADC0808 引脚功能 8 2 1MSB 21 ADD B 24 ADD A 25 ADD C 23 VREF 12 VREF 16 IN3 1 IN4 2 IN5 3 IN6 4 IN7 5 START 6 2 5 8 EOC 7 OUTPUT ENABLE 9 CLOCK 10 VCC 11 2 2 20 GND 13 2 7 14 2 6 15 2 8LSB 17 2 4 18 2 3 19 IN2 28 IN1 27 IN0 26 ALE 22 IN0 IN7 8 路模拟量输入 A B C 3 位地址输入 2 个地址输入端 的不同组合选择八路模拟量输入 ALE 地址锁存启动信号 在 ALE 的上升沿 将 A B C 上的通道地址 锁存到内部的地址锁存器 D0 D7 八位数据输出线 A D 转换结果由这 8 根线传送给单片机 OE 允许输出信号 当 OE 1 时 即为高电平 允许输出锁存器输出数据 START 启动信号输入端 START 为正脉冲 其上升沿清除 ADC0808 的 内部的各寄存器 其下降沿启动 A D 开始转换 EOC 转换完成信号 当 EOC 上升为高电平时 表明内部 A D 转换已完 成 4 2 2 ADC0808 内部结构图 图 4 2 1 ADC0808 引脚图 9 图 4 2 2 ADC0808 内部结构 逐次逼近型 A D 转换器 ADC0808 由八路模拟开关 地址锁存与译码器 比较器 D A 转换器 寄存器 控制电路和三态输出锁存器等组成 4 2 3 A D 转换电路设计 10 图 4 2 3ADC0808 转换电路设计 4 38255 端口扩展模块 8255 芯片主要用于 I O 端口的扩展 在此主要将 PA PB 口用做输出端口 接数码管的位选和段选 电路设计图如下 图 4 3 1 8255 扩展端口电路 11 4 4LED 显示模块 主要用于显示数据 为共阴数码管 与 8255 的接线图如下 图 4 3 1 显示电路 4 5 Protues 仿真电路设计 4 5 1 电路仿真图电路仿真图 图 4 5 Protues 仿真电路原理图 12 4 5 2 电路工作原理电路工作原理 Dj 52EH A D 转换由集成电路 0808 完成 0808 具有 8 路模拟输入端口 地址线 23 25 脚 可决定对哪一路模拟输入作 A D 转换 22 脚为地址锁存控制 当 输入为高电平时 对地址信号进行锁存 6 脚为测试控制 当输入一个 2 S 宽 高电平脉冲时 就开始 A D 转换 7 脚为 A D 转换结束标志 当 A D 转换结束 时 7 脚输出高电平 9 脚为 A D 转换数据输出允许控制 当 OE 脚为高电平时 A D 转换数据从端口输出 10 脚为 0808 的时钟输入端 利用 393 分频芯片将 8MHZ 脉冲进行分频得到 1MHz 时钟 8255 的 PA PB 端口作为五位 LED 数码管显 示控制 13 第 5 章 系统软件设计 5 1 系统主程序设计 初始化程序 初始化程序 主要为对 8255 写控制字 启动 A D 转换芯片 主程序 初始化之后 系统等待 A D 转换结束 结束之后 将一通道的 A D 转换 值送入单片机 之后进行相应的数据处理 调用显示子程序在数码管上显示 主程序在调用显示子程序和测试子程序之间循环 程序流程图见图 5 1 开开 始始 初始化初始化 调用调用 A D 转换子程序转换子程序 调用显示子程序调用显示子程序 图 5 1 程序流程图 显示子程序 显示子程序采用动态扫描法实现五位数码管的数值显示 四位有效值 一 位小数点 测量所得的 A D 转换数据赋值给 data1 变量 经过相应的运算处理 分离出个位十分位 百分位 千分位的有效值 通过查询显示表 显示相应的 值 通过调节频率 实现动态扫描 模 数转换测量子程序 模 数转换测量子程序 主要为控制通道 1 来采集电压值 启动转换 并 将对应的数值送入单片机 14 5 2 系统源程序编写 a 程序的相关头文件及变量定义 include include define uchar unsigned char define uint unsigned int uchar ge shifen baifen qianfen double sum 定义相关变量 uchar zhengshu uint xiaoshu uchar xdata wei at 0 xff20 Pa port on 8255 定义 8255 端口指针 uchar xdata duan at 0 xff21 Pb port on 8255 uchar xdata ctrl at 0 xff23 control port on 8255 uchar xdata abc at 0 xff80 定义 A D 端口指针 unsigned char data1 uchar code table 0 xc0 0 0 xf9 1 0 xa4 2 0 xb0 3 0 x99 4 0 x92 5 0 x82 6 0 xf8 7 0 x80 8 0 x90 9 0 x7f 小数点 定义数码管显示数值 b 延时子程序 void delayms unsigned char ms uchar i while ms 0 for i 0 i 50 i c 显示子程序 void changs sum data1 5 00 256 将二进制数转换为电压值 zhengshu unsigned int sum 分离整数变量 xiaoshu sum zhengshu 1000 提取小数部分的 3 位有效值 ge zhengshu shifen xiaoshu 100 分离十分位的小数值 15 baifen xiaoshu 10 10 分离百分位的小数值 qianfen xiaoshu 10 千分位 wei 0 xdf 打开位选 选第一位数码管 duan table ge 打开段选 显示整数部分的电压值 delayms 10 wei 0 xef duan table 10 delayms 10 wei 0 xf7 1111 1101 duan table shifen delayms 10 wei 0 xfb 1111 1011 duan table baifen delayms 10 wei 0 xfd duan table qianfen d 初始化子程序 void sys abc 0 ctrl 0 x80 delayms 3 e 数据采集子程序 void getdata data1 abc f 主函数 void main sys while 1 getdata changs abc 0 16 第 6 章 调试与测试结果分析 1 实验系统连线图 实验系统连线图 8MHz 激励源经 393 分频器接到 ADC0809 的 CLOCK 端 ADC0809 的 0 通道 IN0 接到模拟信号输出端 I O 接口 FF80H 通过或非门单元 74LS02 控制 ADC0809 的启动 2 程序调试 程序调试 采用程序编译软件 KEIL VESION 2 和 DJ 52EH 单片机综合开发实验仪联机在线调 试 3 实验结果与分析 实验结果与分析 实验结果 试验仪上的 5 个数码管显示当前电压值 并能实现动态显示 分析 第一个数码管显示电压值的整数部分 第二个数码管显示小数点 第三到五数码管显示电压值得小数部分 仿真测试表明 系统性能良好 实际调试时 测量读数稳定易读 更新速 度合理 随着调节电位器数字电压表能随时显示测量电压 直流电压测量范围 为 0 4 980V 最小分辨率为 0 0196V 5 255 满足任务书指标要求 但是 该系统也存在一定程度的不足 相关分析如下 1 输入电压易发生干扰不稳定 且驱动能力可能存在不足 需在被测信号 的输入端加上一部分驱动电路 比如将量程转换电路改成带放大能力的自动量 程转换电路 将幅值较小的信号经适当放大后再测量 可显著提高精度 2 输出量可用平均值算法来改善 使测量准确度更高 3 若能将测量的电压值实时保存 使用时将更方便 4 ADC0809 可实现对 8 个通道的输入信号轮流转换 本设计仅仅使用了其 中一个通道 造成了较大的资源浪费 若能对电路稍加改进 实现对多路信号 的轮流测量并自动保存相应结果 其应用价值将会更大 5 由于 ADC0809 为 8 位处理器 当输入电压为 5 00V 时 输出数据值为 255 FFH 因此单片机最大的数值分辨率为 0 0196V 5 255 这就决定了该 电压表的最大分辨率 精度 只能达到 0 0196V 测试时电压数值的变化一般 以 0 02 的电压幅度变化 如要获得更高的精度要求 应采用 12 位 13 位的 A D 转换器 6 简易电压表测得的值基本上均比标准值偏大 0 01 0 02V 这可以通过 校正 0809 的基准电压来解决 因为该电压表设计时直接用 7805 的供电电源作 为基准电压 电压可能有偏差 另外可以用软件编程来校正测量值 17 第 7 章 结论 18 附录 1 源程序程序 include include define uchar unsigned char define uint unsigned int uchar ge shifen baifen qianfen double sum 定义相关变量 uchar zhengshu uint xiaoshu uchar xdata wei at 0 xff20 Pa port on 8255 定义 8255 端口指针 uchar xdata duan at 0 xff21 Pbport on 8255 uchar xdata ctrl at 0 xff23 control port on 8255 uchar xdata abc at 0 xff80 定义 A D 端口指针 unsigned char data1 uchar code table 0 xc0 0 0 xf9 1 0 xa4
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑方案设计任务书范文
- 财税付费咨询方案哪家强
- 湖北企业文化咨询收费方案
- 荆门防锈漆施工方案设计
- 家电行业策划活动策划方案
- 城建集团活动方案策划
- 线上咨询引流方案设计模板
- 饮酒话题策划活动策划方案
- 酸牛奶营销方案
- 青浦区企业策划咨询方案
- 门诊电子病历书写规范考核试卷有答案
- 2025年《党务工作基础知识》题库及答案
- 护士人文知识培训内容
- 2025至2030全球及中国聚醚醚酮垫圈行业项目调研及市场前景预测评估报告
- 2025年防御性驾驶法考核试题(含答案)
- 2025年全国企业员工全面质量管理知识竞赛题库及答案
- 2025年成人高考专升本政治试题及答案
- 医疗机构药品采购招标文件范本
- GB/T 46233-2025纤维增强水泥制品抽样与检验
- 安全生产课题立项申报书
- 印刷包装总结
评论
0/150
提交评论