简易数字电压表-路

上传人:千****8 文档编号:115312226 上传时间:2019-11-13 格式:DOC 页数:15 大小:223.50KB
返回 下载 相关 举报
简易数字电压表-路_第1页
第1页 / 共15页
简易数字电压表-路_第2页
第2页 / 共15页
简易数字电压表-路_第3页
第3页 / 共15页
简易数字电压表-路_第4页
第4页 / 共15页
简易数字电压表-路_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《简易数字电压表-路》由会员分享,可在线阅读,更多相关《简易数字电压表-路(15页珍藏版)》请在金锄头文库上搜索。

1、简易数字电压表-路 作者: 日期:15 摘要 单片机是一种集成电路芯片,采用超大规模技术,具有数据处理能力。随着单片机技术的飞速发展,单片机技术已成为一个国家现代化水平的重要标志。本次设计是基于STC89C52单片机为核心的,以AD0809数模转换芯片采样、以数码管显示的具有电压测量功能的具有一定精度的数字电压表。在实现基础功能的要求之上拓展了短路报警、高压报警等功能。关键词:单片机 数模转换 数字电压表 目录设计目的5设计要求51方案51.1芯片的选择51.2A/D采样方案51.3显示方案61.4电源方案71.5键盘部分72系统硬件电路设计83系统程序的设计93.1初始化程序93.2主程序9

2、3.3显示子程序93.4A/D转换测量子程序94调试及性能分析104.1调试与测试104.1.1基础功能测试104.1.2拓展功能104.2性能分析105设计总结116致谢127参考文献13附录1:26单片机C源程序清单26简易数字电压表设计目的本次设计的课题为“简易数字电压表的设计”,作为电子信息工程专业的专业实践课程,主要考察我们对单片机技术,编程能力等方面的情况。设计要求 1、可以测量05V的2路输入电压值; 2、可在4位LED数码管上轮流显示或单路选择显示; 3、测量最小分辨率为0.02V。1方案比较与论证1.1芯片的选择我们平时常用的单片机有AT89c52和STC89C52,这两款单

3、片机都属于低功耗、高性能的单片机,在基础功能差不多的情况下,STC89C52较AT89C52功能更强大,前者不光数据存储空间较后者大,延时较短,同时内带2K字节EEPROM存储空间,并且可直接通过串口进行程序下载,所以我们选用STC89C52芯片(引脚补充见附录一)。1.2A/D采样方案采用8位A/D转换器ADC0809,变成简单方便,价格便宜。采样电路如下图:考虑到设计要求及价格和采购的便利,我们决定采用价格便宜,编程简单的ADC0809芯片来作为AD转换器。1.3显示方案采用4位数码管显示。虽然使用液晶的可以使电压表功能更完美,但考虑到价格,数码管虽然结构单一,但也能完成设计要求,所以我们

4、选用4位数码管来完成显示。(与单片机的连线图,从原理图上把那部分截过来)1.4电源方案采用USB供电,电路图如下: 将U2的USB接口接上电脑USB插口线或者接上电源转换器,这时电源指示灯发亮,表示USB电源供电正常即可。使用十分方便。1.5键盘部分通过程序的扫描,判断按键,并切换到不同的功能模式中。实现模式切换后可以实现电压表单路和循环显示所测电压值。(也可以从原理图上截过来)综上所述,按系统功能实现要求及我们手里边现有的元器件,决定控制系统采用低功耗、高性能的STC89C52单片机,A/D转换采用价格便宜,编程简单的ADC0809,显示部分,考虑到现有资源,采用共阳极4位8段数码管显示。系

5、统除能确保实现要求的功能外,还可以方便的进行8路其他A/D转换的测量和远程测量结果传送等拓展功能。2系统硬件电路设计简易数字电压测量电路由A/D转换、数据处理及显示控制等组成,电路原理图如图1.2所示。(只接D01,满足2路输入)A/D转换由集成电路ADC0809完成。ADC0809具有8路模拟的输入端口,地址线(第2325脚)可决定对哪一路模拟输入作A/D转换。第22脚为抵制锁存控制,当输入高电平时,对地址信号进行锁存。第6脚为测试控制,当输入一个2us宽高电平脉冲时,就开始A/D转换。第7脚为A/D转换结束标志,当A/D转换结束时,第7脚输出高电平。第9脚为A/D转换数据输出允许控制,当O

6、E脚为高电平时,A/D转换数据从端口输出。第10脚为ADC的始终输入端,利用单片机第30脚的6分频晶振频率,再通过14024二分频得到1MHz时钟。单片机的P1、P3.0P3.3端口作为4位LED数码管显示控制。P3.5端口用作单路显示/循环显示转换按钮,P3.6端口用作单路显示时显示的通道。P0端口用作A/D转换数据读入,P2端口用作ADC0809的A/D转换控制。3系统程序的设计3.1初始化程序系统上电时,初始化程序主要用来执行70H73H内存清0和P2口置0等准备工作。3.2主程序 刚上电时,系统默认为循环显示2个通道的电压值状态。当进行一次测量后,将显示每一通道的A/D转换值,每个通道

7、的数据显示时间在1s左右。主程序在调用显示子程序与测量子程序之间循环。主程序流程图如下: 3.3显示子程序显示子程序采用动态扫描法实现4位数码管的数值显示。测量所得的A/D转换数据存放在70H73H内存单元中,测量数据在转换时需经过转换成为十进制BCD码存放在74H77H单元中,其中77H存放通道标志数。寄存器R3用作2路循环环控制,R0用作显示数据地址指针。3.4A/D转换测量子程序A/D转换测量子程序用来控制对ADC0809的2路模拟输入电压的A/D转换,并将对应数值移入70H73H内存单元。4调试及性能分析4.1调试与测试采用keil C51编译器进行源程序编译及仿真调试,将程序录进制作

8、好的电路板进行软硬件联调。4.1.1基础功能测试 进行端口电压对比测试。测试对比表如表所列。表中标准电压值采用ut56数字万用表测得。(表)从表中可以看出,简易数字电压表与“标准”数字电压表测得的绝对误差均在0.02V以内,这与采用8位A/D转换器所能达到的理论误差精度相一致,在一般的应用场合课满足要求。4.1.2拓展功能 短路测试:用导线将IN7与地短接,数码管显示为0,同时蜂鸣器报警。 高压报警测试:把单片机接5.5V,蜂鸣器报警。4.2性能分析 (1)由于单片机为8位处理器,当输入电压为5.00V是输出数据值为(),因此单片机最高的分辨率为.(/255)。这就决定了改电压表的最高分辨率只

9、能达到0.0196V,测试电压时一般以0.02V的幅度变化。如果要获得更高的精度要求,应采用12位、13位的A/D转换器。 (2)从表中可以看出,简易数字电压表测得的值基本上均比标准电压值偏大,这可以通过校正ADC0809的基准电压来解决(例如改变下拉电阻值)。因为该电压表设计时直接用5V的宫殿电源作为基准带电压,所以电压可能有偏差。另外也可通过软件怕编程来校正测量值。 (3)ADC0809的直流输入阻抗为1M欧姆,能满足常用的电压测试需要。另外,经测试ADC0809可直接在2MHz的始终频率下工作,这样可省去二进制分频器14024集成块。 (4)当要测量大于5V的电压时,可在输入口使用分压电

10、阻,而程序中只要将计算程序的除数进行调整就可以了。但是量程越大,测量精度会越低。5设计总结通过为期2个星期的简易数字电压表的设计,我们结合所学过的课程,了解了简易仪表的发展状况,掌握了仪表的一把设计要求,工程设计方法,开发及设计工具使用方法,最重要的是通过这一设计实践过程,我们不再约束在理论上,而且锻炼了动手能力和分析解决问题的能力,积累了经验,培养了按部就班,一丝不苟的态度和对所学知识的综合应用能力,了解了很多课本上学不到的知识,为我们以后步入社会工作打下了一定的基础。6致谢首先我们非常感谢系里给我们这次机会来做课程设计,这让我们不仅强化了理论更强化了实践操作能力,也非常感谢指导老师们在本次

11、设计中给予我们小组的帮助,无论是谢四莲老师严厉的指正还是岳舟老师细心的指导都让我们受益匪浅也十分感动,同时也感谢班上的同学在我们遇到困难时的热情帮助,在课程设计中,大家积极的交流与探讨也使我们受益非浅,希望在以后的学习道路中大家能够共同进步。成功不是属于一个人的,而是属于大家的。7参考文献1楼然苗 李光飞. 单片机课程设计指导北京航空航天出版社,2009年3月,P1P122万福君 潘松峰.单片机微机原理系统设计与应用.中国科技大学出版社,2001年8月第2版,P28P150单片机C源程序清单/*/ 2路电压表C程序/ 使用keil C51 ver7.09/*/*使用AT89C52单片机,12M

12、HZ晶振,P0口读入AD值,P2口作AD控制,用共阳LED数码管P1口输出段码,P3口扫描,最高位指示通道(0-7)。*/#include reg52.h /52系列单片机定义文件#include intrins.h /调用_nop_();延时函数用#define ad_con P2 /AD控制口#define addata P0 /AD数据计入读入口#define Disdata P1 /显示数据段码输出口#define uchar unsigned char/无符号字符(8位)#define uint unsigned int /无符号整数(16位)sbit ALE=P23; /锁存地址控

13、制位sbit START=P24; /启动一次转换位sbit OE=P25; /0809输出数据控制位sbit EOC=P37; /转换结束标志位sbit DISX=Disdata7; /LED小数点/uchar code dis_711=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff;/* 共阳七段LED段码表 0 1 2 3 4 5 6 7 8 9 不亮 */ uchar code scan_con4=0xfe,0xfd,0xfb,0xf7; /四位列扫描控制字uchar data ad_data8=0x00,0x00,0x00,0x00;/定义4个数据内存单元uint data dis5=0x00

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 市政工程

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号