




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题题 目:目: 简易数字电压表的设计简易数字电压表的设计 姓姓 名:周光豆名:周光豆 曾玉曾玉 学学 号:号:201001330122 201001330121 指导老师:指导老师: 粟慧龙粟慧龙 设计时间:设计时间: 2001220012 年年 4 4 月月 2727 日日 班 级:铁道通讯 101 班 (电子信息工程系电子信息工程系) 单片机原理及应用 课程设计报告书 目录 1. 引 言1 1.1.设计意义1 1.2.系统功能要求1 1.3.本组成员所做的工作1 2方案设计.2 2.1 系统的设计任务2 2.2 设计方案2 2.3 软硬件开发环境3 3硬件设计.3 3.1 单片机主电路设计3 3.2 测量、转换电路设计5 3.3 显示电路设计7 4软件设计. 11 4.1 主程序设计.11 4.2 模块程序设计.12 5系统调试15 6设计总结15 7 附录16 附录 7.1 硬件原理图.16 附录 7.2 程序清单.17 8参考文献 20 简易数字电压表的设计 单片机原理及应用课程设计 1 简易数字电压表的设计简易数字电压表的设计 1. 引引 言言 1.1. 设计意义 本文介绍了基于 89c51 单片机的一种 8 路输入电压测量电路,该电路采用 ADC0809 作为 A/D 转换元件。 1.2 .系统功能要求 简易数字电压表可以测量范围 0 至 5 伏范围内的 8 路输入电压值,并在 4 位 LED 数码管上轮流显示或选择显示。其测量最小分辨率为 0.02V。本系统主 要包括四大模块:数据采集模块、控制模块、显示模块、A/D 转换模块。绘制 电路原理图与工作流程图,并进行调试,最终设计完成了该系统的硬件电路。 在软件编程上,采用了汇编语言进行编程,开发了显示模块程序、通道切换程 序、A/D 转换程序。 1.3 .本组成员所做的工作 周光豆: 程序编写及调试,帮助检测硬件电路 周光豆、曾玉: 硬件焊接,系统测试 曾玉: 焊接部分电路、帮助系统测试、论文撰写、心得总结。 2 方案设计 2.1 系统的设计任务 设计单片机主电路、数据采集接口电路、LED 显示电路、拨码控制电路, 能够实现对 8 路电压值进行测量,能够显示当前测量通道号及电压值,电压精 度小数点后 2 位,可以通过键盘选择循环显示 8 路的检测电压值和指定通道的 检测电压值。 2.2 设计方案 将数据采集接口电路输入电压传入 ADC0809 数模转换元件,经转换后通过 D0 至 D7 与单片机 P0 口连接,把转换完的模拟信号以数字信号的信号的形式传 给单片机,信号经过单片机处理从 LED 数码显示管显示。拨码开关连 P3 口,实 现通道选择。 简易数字电压表的设计 单片机原理及应用课程设计 2 P2 口接数码管位选,P1 接数码管,实现数据的动态显示,如下图所示: 89c51 P0 P1 P2 ALE P3 数码管 位选 拨码开关 ADC0809 D0D7 IN0 : IN7 CLOCK VREF+ VREF- 图 2.1 系统总体方案结构图 2.3 软硬件开发环境 硬件选择:选择 89c52 作为单片机芯片,选用 8 段共阴极 LED 数码管实现 电压显示,选用独立式按键作为程序的跳转与选择,利用 ADC0809 作为数模转 换芯片,利用 P0 至 P4 的各个串口来进行不同设备间的连接,计算机进行汇编, H51/L 仿真器,单片机多功能实验箱。 软件开发环境: 用 Protel99SE 软件画电路图 。 能够实现对 8 路电压值进行测量,能够显示当前测量通道号及电压值,电 压精度小数点后 1 位,可以通过键盘选择循环显示 8 路的检测电压值和指定通 道的检测电压值。 3硬件设计硬件设计 3.1 单片机主电路设计 在本次课题设计中我们选择了 8951 芯片,其具有功能强、体积小、成本低、 功耗小等特点,它可单独地完成现代工业控制所要求的智能化控制功能,能在 软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。 3.1.1 复位电路 复位电路如图 3.1.1 所示,单片机系统常常有上电复位和操作复位两种。 上电复位是指单片机上点瞬间,要在 RST 引脚上出现宽度大于 10ms 的正脉冲, 才能使单片机进入复位状态。操作复位是指用户按下“复位”按钮使单片机进 简易数字电压表的设计 单片机原理及应用课程设计 3 入复位状态。 图 31 复位电路图 3.1.2 晶振电路 晶振电路用于产生单片机工作所需的时钟信号,使用晶体震荡器时,c2,c3 取值 2040PF,使用陶瓷震荡器时 c2,c3 取值 3050PF。在设计电路板时,晶振 和电容应尽量靠近芯片,以减小分布电容,保证震荡器的稳定性。18 引脚接 XTAL1,19 引脚接 XTAL2,20 引脚接地。 图 3.2 晶振电路图 简易数字电压表的设计 单片机原理及应用课程设计 4 3.2 测量、转换电路设计 使用 ADC0809 作为数模转换元件,其引脚图如 3.3 所示: 图 3.3 数模转换元件 ADC0809 是带有 8:1 多路模拟开关的 8 位 A/D 转换芯片,所以它可有 8 个 模拟量的输入端,由芯片的 A,B,C 三个引脚来选择模拟通道中的一个。 A,B,C 三端分别与 89C51 的 P0.0P0.2 相接。地址锁存信号(ALE)和启动转换 信号(START) ,由 P2.6 和/WR 或非得到。输出允许,由 P2.6 和/RD 或非得到。 时钟信号,可有 89C51 的 ALE 输出得到,不过当采用 12M 晶振时,应该先进行 二分频,以满足 ADC0809 的时钟信号必须小于 640K 的要求。 图 3.4 数据转换系统电路图 简易数字电压表的设计 单片机原理及应用课程设计 5 3.3 显示电路设计 3.3.1 LED 数码管构成 LED 数码管显示器是由发光二极管显示字段的显示器件,也称为数码管。 其外形结构如图所示。它由 8 个发光二极管构成,通过不同的组合可用来显示 0-9、A-F 及小数点“.”等字符。 数码管有共阴极和共阳极两种结构规格,如图 2.5 所示。图中电阻为外接。 共阴极数码管的发光二极管阴极共地,当某发光二极管的阳极为高电平时,二 极管点亮;共阳极数码管的发光二极管是阳极,并接高电平,对于需点亮的发 光二极管将其阴极接低电平即可。 7 段发光二极管,在加上 1 个小数点位,共计 8 段,因此提供给 LED 显示器的 字形码正好一字节。 数码管原理电路图: 图 35(a)共阴极 图 3.5(b)共阳极 图 3.5(C)字段显示 简易数字电压表的设计 单片机原理及应用课程设计 6 3.4.2 显示方式 (1) 静态显示方式直接利用并行口输出。LED 显示工作于静态显示方式时,各 位的共阴极连接在一起接地;每位的段选线分别于一个 8 位的锁存输出相连。一 般称之为静态显示,是由于显示器中的各位相互独立。而且各位的显示字符一经 确定,相应锁存器的输出将维持不变,直到显示另一个字符为止。利用通信号串 行输出。在实际应用中,多位 LED 显示时,为了简化电路,在系统不需要通信功 能时,经常采用串行通信口工作方式 0,外接移位寄存器 74LS164、CD4094 来 实现静态显示。 (2) 动态显示方式 对多位 LED 显示器的动态显示,通常都时采用动态扫描的方法进行显示, 即逐个循环点亮各位显示器。这样虽然在任一时刻只有一位显示器被点亮,但 是由于间隔时间较短,且人眼具有视觉残留效应,看起来与全部显示器持续点 亮一样。 为了实现 LED 显示器的动态扫描,除了要给显示器提供的输入之外,还要 对显示器加位选择控制,这就是通常所说的段控和位控。因此多位 LED 显示器 接口电路需要有两个输出口,其中一个用于输出 8 位控信号;另一个用于输出 段控信号,其连接图如下。 图 3.6LED 显示电路 简易数字电压表的设计 单片机原理及应用课程设计 7 七段 LED 段选码表 3.1: 显示字符共阴极段显示字符共阴极段 03FHC39H 106HD5EH 25BHE79H 34FHF71H 466HP73H 56DHU3EH 67DH31H 707Hy6EH 87FH8.FFH 96FH “灭” 00H A77H/ B7CH/ 4 软件设计 4.1 主程序设计 4.1.1 工作流程 首先拨动拨码开关 k1,如果是低电平,程序转向选择通道程序,拨动 k2 的次数即是选择的通道号,拨动 k3 表示确认。转向数据读取程序,再到显示程 序,显示出通道号和电压值。如果 k1 是高电平,则转向循环显示程序,即先显 示第 0 路最后显示第 7 路电压值和相应通道号。 4.1.2 存储空间定义安排 60H 用于存放 A/D 转换结果,30H、31H、32H 分别存储显示用的三位数据 表 4.1 存储空间定义表: 70-77H用于存放 A/D 转换结果 7AH电压值整数部分 79H电压值十分位 78H电压值百分位 7BH选择的通道号 简易数字电压表的设计 单片机原理及应用课程设计 8 4.2 模块程序设计 4.2.1 A/D 转换测量程序 A/D 转换的常用方法有:计数式 A/D 转换,逐次逼近型 A/D 转换, 双积分式 A/D 转换, V/F 变换型 A/D 转换。在这些转换方式中,记数式 A/D 转换线路比较简单,但转换速度较慢,所以现在很少应用。双积分式 A/D 转换精度高,多用于数据采集及精度要求比较高的场合,如 5G14433(31/2 位) , AD7555(41/2 位或 51/2 位)等,但速度更慢。逐次逼近型 A/D 转换既照顾了 转换速度,有具有一定的精度,这里选用的是逐次逼近型的 A/D 转换芯片 ADC0809。采用中断控制的方式实现,不浪费时间,效率较高。 ALE 地址锁存, 所有内部寄存器清 零 读取数据 调用拆字函数 转换结束? 调用显示函数 启动转换 N Y 图 4.2 A/D 转换测量程序流程图 开始 简易数字电压表的设计 单片机原理及应用课程设计 9 4.2.2 显示程序 对多位 LED 显示器的动态显示,通常都是采用动态扫描的方法进行显示, 即逐个循环点亮各位显示器。这样虽然在任一时刻只有一位显示器被点亮,但 是由于间隔时间较短,且人眼具有视觉残留效应,看起来与全部显示器持续点 亮一样。 为了实现 LED 显示器的动态扫描,除了要给显示器提供的输入之外,还要 对显示器加位选择控制,这就是通常所说的段控和位控。因此多位 LED 显示器 接口电路需要有两个输出口,其中一个用于输出 8 位为控信号;另一个用于输 出段控信号。 读取判断单元 显示通道 号 显示电压整 数部分 显示电压十 分位 返回 开始程序 7AH79H78H 显示电压百 分位 7BH 图 4.3 多位 LED 显示器的动态显示流程图 4.2.3 元件清单 表 4.4 简易电压表的元件清单 元器件名称参数数量元器件名称参数数量 IC 插座DIP401电阻 10K 1 IC 插座DIP141可调电阻 5K 1 晶体振荡器12MHz1模数转换器ADC08091 瓷片电容30pF2双 D 触发器74LS741 共阳极数码管2或非门74LS021 单片机89C511电解电容22Uf1 弹性按键1IC 插座DIP281 简易数字电压表的设计 单片机原理及应用课程设计 10 电阻 510 2IC 插座DIP161 电阻 300 16 5 系统调试系统调试 按照电原理图连接好硬件电路,并通过编译器进行源程序编译及仿真调试, 烧录好程序后进行软硬件联调。程序可分为数据采集系统、数据转换系统、显 示系统和按键控制系统,这四部分先独立测试,然后整体调试。接通电源后用 万用表测试调理电路的输入端电压是否为+5V,若为+5V 则电源连接正确,LED 是 否进行轮流显示或单路选择显示,显示精度控制在 0.02 伏内。 显示系统的调试: (1) 接通电源后数码管无显示。经过认真检查电路板结果发现,与数码管 相连的两个电阻没焊上。 (2) 焊好电阻后,接通电源后,发现数码管只有一路电压值。再次检查电 路板无误后,确定是实验程序出现问题。经过修改程序后,将新程序烧到单片 机中,数码管稳定显示。 6 设计总结 在做本次课程设计的过程中,我感触最深的当属查阅大量的设计资料了。 为了让自己的设计更加完善,查阅这方面的设计资料是十分必要的,同时也是 必不可少的。 其次,在这次课程设计中,我们运用到了以前所学的专业课知识,如: protel 制图、汇编语言、模拟和数字电路知识等。虽然过去从未独立应用过它 们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计 的又一收获。 最后,要做好一个课程设计,就必须做到:在设计程序之前,对所用单片 机的内部结构有一个系统的了解,知道该单片机内有哪些资源;要有一个清晰 的思路和一个完整的的软件流程图;在设计程序时,不能妄想一次就将整个程 序设计好,反复修改、不断改进是程序设计的必经之路;要养成注释程序的好 习惯,一个程序的完美与否不仅仅是实现功能,而应该让人一看就能明白你的 思路,这样也为资料的保存和交流提供了方便;在设计课程过程中遇到问题是 很正常德,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再 碰到同样的问题。 另外,这次课程设计让我感到了团队合作的重要性。在团队中,我们互帮 互助,对整个课程设计来说,这是至关重要的,缺少每一个人都会对我们的设 计产生影响。还有要感谢指导老师在我们遇到困难时,给予我们的建议与鼓励。 简易数字电压表的设计 单片机原理及应用课程设计 11 7 附附 录录 7.1 硬件原理图: 简易数字电压表的设计 单片机原理及应用课程设计 12 7.2 简易数字电压表程序如下 /程序:ex6_1.c /功能:简易数字电压表程序 #include #define uchar unsigned char /无符号字符型数据定义为 uchar uchar code led=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e; /定义 0-F 显示码 sbit P0_2=P02; /可寻址位定义 sbit P0_3=P03; sbit P0_6=P06; sbit P0_7=P07; void sepr(unsigned char i); /把形式参数 i 的高低位分开,分别存放 在全局变量 /chh,chl 中 void disp(); /显示 chh,chl 中的数据(两位) uchar chh,chl; /全局变量定义 void main() /主函数 uchar a; unsigned char i; while(1) 简易数字电压表的设计 单片机原理及应用课程设计 13 P0_2=1; for(a=0;a50;a+); /延时 P0_2=0; /在 P0.2 引脚产生下降沿,START 和 ALE 引脚产生 上升沿 /锁存通道地址,所有内部寄存器清零 for(a=0;a50;a+); /延时 P0_2=1; /在 P0.2 上产生上升沿,START 上产生下降沿, A/D 转换开始 while(P0_3=0); /等待转换完成,EOC=1 表示转换完成 P0_2=0; / P0_2=0,则 OE=1,允许读数 P1=0xff; /作为输入口,P1 口先置全 1 i=P1; /读入 A/D 转换数据 sepr(i); /数据高地位分开 disp(); /显示数据 /函数名:sepr /函数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 19790:2025 FR Information security,cybersecurity and privacy protection - Security requirements for cryptographic modules
- 【正版授权】 ISO 4211-1:2025 EN Furniture - Tests for surface finishes - Part 1: Assessment of resistance to cold liquids
- 【正版授权】 ISO 20579-2:2025 EN Surface chemical analysis - Sample handling,preparation and mounting - Part 2: Documenting and reporting the preparation and mounting of specimens for a
- 【正版授权】 IEC TS 62271-316:2024 EN High-voltage switchgear and controlgear - Part 316: Direct current by-pass switches and paralleling switches
- 【正版授权】 IEC 60071-1:2006 EN-D Insulation co-ordination - Part 1: Definitions,principles and rules
- 护理部副主任竞聘
- 思想政治教育前沿
- 控烟知识讲座2
- 管理体系审核首次会议
- 给绿植浇水课件
- 带状疱疹课件
- 高三数学二轮复习-解三角形课件
- 2024年人力资源社会保障部所属事业单位招聘考试真题
- 2024年山师附小招生简章
- 食堂7s管理标准
- DEEPSEEK了解及使用攻略高效使用技巧培训课件
- 2025年山西电力职业技术学院单招职业技能考试题库含答案
- 2024-2025学年人教版七下地理第一单元测验卷
- 玉盘二部合唱简谱
- 稻田画种植合同5篇
- 共价键+周测卷 高二下学期化学选择性必修2
评论
0/150
提交评论