then x=2; else
if((P1IN&0xf0)= = 0x20) // 是否第三个按键 x=3; return(x); }
#pragma vector=PORT1_VECTOR
__interrupt void p1int(void) //端口1 的中断服务程序
{while(p1keyj()!=0xf0) //没有按键按下,返回全1――0xf0 {
delay(500); //延时消除抖动 while(p1keyj()!=0xf0) {
keybuf = keycode();//确信有按键按下,找到按键得出键值,送到全局变量keybuf while(p1keyj()= =0) //等待按键松开 ; //做对应键盘的事务 } }
void main()
WDTCTL = WDTPW + WDTHOLD; // 关闭看门狗 P1IES|=BIT1+BIT2+BIT3;// P1IE|=BIT1+BIT2+BIT3;// _EINT(); P5DIR|=BIT1; P5OUT&=~BIT1; While(1) {//keycode();
Swich(keycode()) {Case 0xf0:break; Case1:采集 Case2:查询 Case3:控制 } }
3.2.5.显示模块
该部分主要完成数据的现实功能,P4.0~P4.7即为LED的段选线,又为LED的位选线,通过373锁存器与P5.1、P5.2的选择来实现。其工作方式为:当P5.1 高电平时,P4.0~P4.7为LED的a、f、b、g、c、h、d、e;当P5.0为高电平时,P4.0~P4.7为LED的位选线,依次对应D4、D3、D2、D1、D0。该模块相对比较简单,其经典程序代码如下: #include
#define LED1 0x3E; #define LED2 0x3D
#define LED3 0x3B; #define LED4 0x37; #define LED5 0x1F;
int Digit[10]={0xD7,0x14,0xCD,0x5D,0x1E,0x5B,0xDB,0x15,0xDF,0x5F}; void Delay(int m) {while(m-->0;) void Display(int x) {P4OUT=Digit[x]; P5OUT=0x02; P5OUT=0x00; P4OUT=Digit[x]; P5OUT=Digit[x]; Delay(500); }
void main() {
WDTCTL=WDTPW+WDTHOLD; //关闭看门狗定时器 while(1) {
P5DIR=0x03; P4DIR=0xFF; P4DIR=0x00; P5DIR=0x02; P5DIR=0x03;
Display(); //要显示的数据 } }
3.2.6数据处理程序
这部分程序主要进行阻值计算、数字滤波、代码转换等处理。数据处理程序思路:先将存储于数据存储器RAM的电压、电流12位二进制数读出,对电压、电流数字量进行双精度数转换和标度变换,再进行回路电阻值参数计算,并进行误差校正和算术平均滤波。将测试电流值和计算的回路电阻值转化为BCD码,进行LED显示。数据处理程序如图3-5所示。
为进一步提高系统抗干扰和噪声的能力,保证测试的精度,对获得的测量值进行数字滤波处理,即进行多次测量后取平均值。经过软、硬件滤波处理后的系统误差大大降低。 数字滤波:用软件来减小或消除测量误差或信号中的无用成分。输入信号为模拟信号经采样和A/D转换后的数字量,对数字量进行一定的计算。设计中,对多次计算的回路接触电阻值进行算术平均滤波。
算术平均滤波就是连续取N个值进行采样,然后算术平均。采样值的个数N视具情况而定,计算阻值时取3~5。
标度变换:将A/D转换的数字量变换为带有工程单位的数字量。先将测量值数字量转换为对应的物理量,再通过代码转换程序转换为相应的BCD码,进行数字显示。
第四章 系统误差分析
4.1数据采集误差分析
在数据处理过程中,软件的计算误差极小,精度主要决定于数据采集通道的精度。采集通道包括电压、电流信号放大和滤波、A/D转换等。
在本系统中,信号部分主要分为两级放大和低通滤波,相当于三级放大电路,故该部分的放大误差等于三者误差的叠加。其中每个放大器都有以下误差情况:开环差模放大倍数位有限值造成的误差、共模抑制比为有限值造成的误差、由输入偏置电流和失调电流电压等影响产生的误差、由运放电路中电阻的阻值不准产生的误差。由于本设计中选用了高精度、低温漂测量放大器MAX495,由此引起的误差较小。
对由ADC12引起的误差主要有量化误差、非量化误差、温度漂移误差和电源波动误差。其中供电电压的不稳定造成的影响较严重。 4.2系统误差的减小与消除 (1) 四端接线法
对于微小电阻的精密测量,测量引线电阻的影响是不容忽视的,必须采取有效措施加以克服。为此目的,我们在前面介绍的四端接线法就是最简单可行的方法。同时应该注意,具体接线时应将电压测量线接开关连接杆的内侧,电流引线接开关连接杆的外侧.为了消除测量回路的影响,应采用足够粗的导线并缩短长度。设计中对开关电压的测量采用两对测试夹子,测试时夹子夹在导电杆上,实现四个端子测量触头两端电压。 (2) 系统误差的减小 1.在检测系统中,用软、硬件结合的办法,通过软件校正获得满意的结果。
2.减小工频信号产生的电磁干扰对测量精度的影响。对于工频信号可能产生的电磁干扰对测量精度的影响,在硬件上可以采用滤波电路,在软件上采用多次数据采样和数字滤波,滤除干扰后取平均值的方法。
3.减小环境温度变化对测量精度的影响。对于环境温度变化而引起的系统性能的变化,一方面在元件选用上予以考虑,如测量放大器环节的分压电阻采用精度高、温度系数低的精密电阻,放大器采用了低温漂、低失调电压的测量放大器MAX495;另一方面调节测量放大器的放大倍数,使电压、电流信号的幅值尽量接近于ADC12转换器的满量程范围,以减小量化误差。
总结 - 31 - 总 结
在对当前测试方法进行分析总结的基础上,本文论证的测试方法,通过智能化的数据处理,设计出一种实用的微小电阻测试系统。采用电流恒流源为基础的微欧仪进行测量,可降低测量仪器的要求,只要控制好通电时间长短,则可大大减少温度的升高,从而减少阻值的改变。由于小电阻一般很小,大约为几到几百m?,若用传统的直流双臂电桥等小电流测量方法进行测量,所产生的压降一般太小,这样对测量压降仪器的灵敏度要求必须很高,不仅测量难度大,也极难做到精确。
本设计中几个有特色的地方: (1)采用恒流电源技术
本文提出的通过恒流源的测量方法,这是一种常用的测试方法。当通电时间短时、被测电阻温度升高不多,电流流过所能达到的温升大大低于稳定温升,小电阻变化不大。同时要确保电流值较大,方便易改、易于提高测试电流,增加信噪比。 (2)采用MSP430F149单片机
MSP430系列是一个16位的、具有精简指令集的、超低功耗的混合型单片机,在运算速度方面,MSP430系列单片机能在8MHz晶体的驱动下,实现125ns 的指令周期。同时它自带
12位模数转换器,有效地减少了测量误差,提高了测量精度,精度可达到万分之一,采样速度完全能够满足采样转换的要求,同时省去元件的数目并降低系统成本,简单好用。 (3)采用四端接线技术
设计中采用四端接线技术实现对测试电流、小电阻电压的测量。测量被测小电阻的电压时,使用两对测试夹。四端子接线技术有效的减少了引线电阻的影响,从而减小了测量误差,提高了测量精度。
参考文献
[1] 秦龙.MSP430单片机C语言应用程序设计实例精讲.电子工业出版社,2006. [2] 康华光.电子技术基础(模拟部分) .高等教育出版社,2006.01.
[3] 胡大可 MSP430系列FLASH型16位超低功耗单片机. 北京航空航天大学出版
社,2005 [4] 沈建华,杨艳琴.MSP430系列16位超低功耗单片机原理与应用. 清华大学出版社,2005 [5] 江思敏,姚鹏翼.Protel电路设计教程.清华大学出版社,2002 [6] 谭博学,苗汇静.集成电路原理及应用.电子工业出版社,2003 [7] 房小翠,王金凤.单片机实用系统设计技术.北京:国防工业出版社.1999 [8] 李建忠.单片机原理及应用.西安:西安电子科技大学出版社.2002 [9] 何立民.单片机应用技术选编(1) .北京:北京航空航天大学出版社.1993 [10] 江思敏,姚鹏翼.Protel99电路设计教程.北京:清华大学出版社,2002 [11] 何希才,张明莉.新型稳压电源及应用实例.北京:电子工业出版
社.2004 [12] Mark N. Hortein. Microelectronic Circuits and Devices.Prentice Hall Inc.1996 [13] Ghausi M. S. Principles and design of linear Active circuits. New York McGraw-Hill, 1995, Chap.4.
致 谢
本课题及毕业论文是在我的导师宋德杰老师的悉心关怀和精心指导下完成的。他严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。从课题的开始到最终完成,我不仅学到了扎实、宽广的专业知识,也学到了许多做人的道理。在我的课题开展过程中倾注着导师辛勤的汗水和心血。导师的为人师表、渊博的知识、宽广的胸怀让我倍受教益,在此谨向导师致以诚挚的谢意和崇高的敬意! 我能顺利地完成学业,与父母多年来一如既往的支持和关怀是分不开的,在此,向任劳任怨、含辛茹苦的父母致以衷心的感谢!
衷心感谢在我成长的路上指点和帮助我的前辈和朋友们! 衷心感谢在百忙之中评阅论文和参加答辩的各位专家、教授。