基于msp430数字式电压表

上传人:F****n 文档编号:98813826 上传时间:2019-09-14 格式:DOCX 页数:15 大小:57.96KB
返回 下载 相关 举报
基于msp430数字式电压表_第1页
第1页 / 共15页
基于msp430数字式电压表_第2页
第2页 / 共15页
基于msp430数字式电压表_第3页
第3页 / 共15页
基于msp430数字式电压表_第4页
第4页 / 共15页
基于msp430数字式电压表_第5页
第5页 / 共15页
点击查看更多>>
资源描述

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

1、 课 程 设 计 题 目: 基于MSP430数字式电压表 院 系: 电子与信息工程学院 班 级: 学生姓名: 学 号: 指导老师: 2016年7月6日村民建房委员会应建立村级农房建设质量安全监督制度和巡查制度,选聘有责任心和具有一定施工技术常识的村民作为义务巡查监督员,开展经常性的巡查和督查。 Msp430数字电压表设计1、 目标 采用MSP430单片机来实现数字电压表的功能,本数字电压表由MSP430F5529作为主控器件,A/D转换器采用MSP430自带转换器,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现数字电压表的硬件电路和软件设计。利用外部硬件电路对不同档位的输入

2、电压进行处理,使电压达到单片机测量范围,实现基本的数字电压表功能,使其可以测量016.5V的电压值,并且误差控制在0.02v以内,最后在AY-SEB Module板的液晶屏上显示。 该系统的数字电压表电路元件较少,成本低,调节工作简单等优点。在电压测量中有较强的实用性。2、 器件1.MSP430F5529LP开发板 2.AY-SEB Module核心板3.测试前端(电阻分压和电压跟随器组成)三、原理分析 测试前端包括电阻分压和电压跟随器,即输入电压前接电阻分压电路和LM358运算放大器组成的电压跟随器,电阻分压能增大测量量程(可通过改变两个电阻比值而改变量程)。运算放大器同时起到增加输入阻抗的

3、作用,使得电阻分压得到的电压更稳定,避免影响被测量的电压值。用MSP430F5529开发板P6.0(A0)通道采用中断方式,不间断连续采集输入电压,通过程序控制,由MSP430F5529开发板的AD转换电路完成电压的采集,对采集信息处理换算后,把电压发信息至AY-SEB Module核心板液晶屏上显示。 四、硬件电路原理分析 1.电路设计(测试前端) 2.电路分析经过电阻分压后,检测电压U2=XU1,其中R1=10k,R2=1k,可得U1=11U2,实现扩大11倍量程的作用。在这里将R2定为1K,是为了方便计算,可通过R1的阻值,来改变设计的电压表的量程(阻值越大,量程越大);另外用LM358

4、作为运算放大器来提高精确度。五、数据测量及误差分析输入电压(V)测试电压(V)0.100 0.1080.300 0.2960.700 0.694 0.801 0.791 1.000 0.991 3.000 2.993 5.000 5.000 7.000 7.002 9.000 9.009 11.001 11.006 13.003 13.026 16.504 16.500 1.误差分析 通过分析以上测试数据,得出一下结论由表中数据和图例可以看出电压测量分辨率0.01V,通过统计求均值可得出测量误差1%。达到了设计要求。测量值与实际值有一定的误差,并且误差随着输入电压的增大而变大。其原因是输入电路

5、中由电阻串联构成来实现分压,电阻参数的变化及负载效应会引起分压比的误差;运算放大器本身存在漂移和噪声,开环增益和开环输入电阻不无穷大,因此会引入误差。由图例不难看出输入电压不是线性的,且随着输入电压增大,误差也变大,这说明信号源输入电压给电路,由于电路本身输入阻抗不够高,电路会向信号源索取的电流,输入电压越大,索取的电流就越大,就导致了误差增大。2. 减小误差探究在电路中假如一个射极跟随器,用它连接两电路,减少电路间直接相连所带来的影响,起缓冲作用。由于动态电压放大倍数小于1并接近1,且输出电压与输入电压同相但是输出电阻低,具有电流放大作用,所以有功率放大作用,从而提高精确度。六、结论经过一段

6、时间的努力,基于单片机的简易数字电压表基本完成。但设计中的不足之处仍然存在。这次设计是我第一次设计电路,在这过程中,我对电路设计,单片机的使用等都有了新的认识。通过这次设计熟练了软件的使用方法,积累了不少经验。本文设计主要实现了简易数字电压表测量一路电压的功能,详细说明了从原理图的设计到软件的调试。其中有苦也有乐。苦的是自己的知识太贫乏,到处找资料,问同学;乐的是在付出过程中,同学的帮助,让我学到了许多的东西。在整个设计过程中,经常经常出现这样那样的问题,但是最后还是都得以解决,当看到自己的设计课题成功时,心中有一种成就感。 忙了几个星期的设计终于要结束了,从开始布置题目的期待,到着手设计时,

7、因为知识匮乏的迷惘,再到同学诚心的帮助和老师的释疑,最后到作品的成功。虽然是一个简单的数字电压表设计,但这期间,对我来说就是一笔丰富的财富,是一种成长。七、另附程序/*数字电压表程序*/ MSP430F5529LP - MSP-EXP430F5529LP + AY-SEB Module核心板/ 描 述:P60(A0)通道采用中断方式,不间断连续采集输入电压,再经液晶屏显示。/*#include #include grlib.h#include LCD_driver/Template_Driver.h#include images/images.h#include driverlib.h/*/变

8、量来存储振荡器故障标志的状态/*uint16_t status;#define Num_of_Results 16#define ADC_REF 1500 / adc基准参考电压(1.5V与2.5V)#define ADC_RANGE4095/ adc转换位数volatile uint16_t resultsNum_of_Results;volatile uint16_t adc_filter;Graphics_Context g_sContext;#if defined(_IAR_SYSTEMS_ICC_)int16_t _low_level_init(void) / Stop WDT (W

9、atch Dog Timer) WDTCTL = WDTPW + WDTHOLD; return(1);#endiftContext g_sContext;extern void GrStringNumberCentered(const tContext *pContext, int16_t Number, uint8_t ui8Dot,uint8_t ui8X, uint8_t ui8Y);void main(void)volatile unsigned int i;volatile unsigned int vin_mv;_system_pre_init(); / 设置LCD Templa

10、te_DriverInit(); Graphics_initContext(&g_sContext, &g_sTemplate_Driver); Graphics_setForegroundColor(&g_sContext, ClrBlack); / 设置前景为白色 Graphics_setBackgroundColor(&g_sContext, ClrWhite);/ 设置背景为黑色 Graphics_setFont(&g_sContext, &g_sFontCm16b);/ 设置字体 Graphics_clearDisplay(&g_sContext); / 清空显示页面/ 绘制LCD界

11、面GrStringDraw(&g_sContext, =shuzidianya=, AUTO_STRING_LENGTH, 5, 17, OPAQUE_TEXT);GrStringDraw(&g_sContext, zhi: v, AUTO_STRING_LENGTH, 5, 34, OPAQUE_TEXT);GrFlush(&g_sContext); / 打开全局中断 _bis_SR_register(GIE);while(1)/ 转换成电压值(单位:mv)并乘于电阻分压倍数11,得到电阻分压电压,在加上射级跟随电压0.707,最后得到检测电压。vin_mv =(adc_filter*1.0

12、*11)/ADC_RANGE*ADC_REF+707; / 擦除旧的LCD显示数据GrStringDrawCentered(&g_sContext, , AUTO_STRING_LENGTH, 70, 40, OPAQUE_TEXT);/ 显示电压并把电压换算成V(1V=1000mV)GrStringNumberCentered(&g_sContext,vin_mv,3,70,40);GrFlush(&g_sContext);/=数字转字符串函数=void Num2String(int16_t i16Number,uint8_t ui8Dot,uint8_t *p)int8_t i=0 ,ds=0;uint8_t pos=0,m=0;uint8_t DispBuff11=0;uint8_t tempBuff11=0; if(i16Number0) i16Number=-i16Number;/处理负数DispBuff0=-; /显示负号m=1;/跟踪缓存位置

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

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