




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、阚“先浦学虎HUBEIUMVERSITYOFECONOMICS湖北经济学院电子设计大赛设计报告课题名称:数字智能万用表指导教师:汪成义王金庭刘光然学生姓名:汪凡夏晶晶张薇学生院系:电子工程系时间:2011年7月智能数字万用表一设计目的1、培养综合性电子线路的设计能力。2、掌握综合性电子线路的安装和调试方法。3、学会基于M3进行软件设计。二任务及要求1、任务设计并制作一台具有直流电压、交流电压和电阻测量功能的智能数字万用表。示意图如图1所示。功能转换与输入电路A/D转换器单片机键盘与显示;.图1智能数字万用表示意图2、要求1、基本要求(1)31数码显示,最大读数1999。2(2)直流电压量程:、
2、2V、20V,精度为1个字;输入阻抗10ML(3)交流电压量程:、2V、20V,精度为2个字(以50Hz为基准);输入阻抗方10a;频率响应范围为401000Hz(4)电阻量程:2Q、200Q>2MQ,精度2个字。2、发挥部分(1)直流电压测量具有自动量程转换功能。(2)具有“自动关机”功能,即在测量过程中,若1分钟内无任何键按下,仪器会自动关闭显示并处于低功耗状态;再按任意键,仪器能返回“自动关机”前的工作状态。(3)具有相对误差(的测量功能,即在进行某项测量时,首先通过示屏提示用户从键盘输入标称值,一旦输入确认后,仪器能显示相对误差中的值。(4)其它。三总体设计方案1、系统模块图根据
3、题目要求和本系统的设计思想,系统主要包括图2所示的模块:电阻测量电路里 程 自 动 转 换 电 路电测阻被测量输测直流入kOhm °0.2 k Ohm测交流交测直流转换电路图2系统模块框2、总体方案分析若被测量为电阻,则须经过电阻测量电路将电阻量转化为直流电压量后才可以进入量程自动转换电路;若被测量为直流电压,则可以直接进入量程自动转换电路;若被测量为交流电压,则需要先经过交直流转换电路将交流电压转换为直流电压后再进入量程自动转换电路。单片机系统通过对CD4052®片AB端的控制实现量程自动转换。A/D转换电路将测得的模拟量转化为数字量之后通过单片机系统在液晶显示屏上显示出
4、来。四单元电路设计与计算1、电阻测量电路利用运算放大器采用反相比例运算的方法,将测电阻转化为测电压,电路图如下:ETDETL-w1 KOhm图3电阻测量电路由反相比例电路可知:Uo=(Rx/500)X5V,可推出Rx=UO<100,测量电阻时若输出电压Uo=2V则被测电阻Rx=20(?如上图所示。2、父直流转换电路利电路测量交流电压时须先将交流转化为直流,这里采用全波精密整流电路,用二极管的单向导电性,运放A1构成反相器,运放A2构成反相加法器,图如下所示:20 k Ohm741 + I100 uF10k Ohm-AAA*10kOhm图4交直流转换电路Uo= - U O1-UI =U|当
5、UI>0时D1导通、D2截止UO1=-2UI当UI<0时D1截止、D2导通UO1=0UO=-UO1-UI=-U|输入与输出信号波形如下:图5交直流转换电路输入与输出波形3、量程自动转换电路自动量程转换电路的作用是按输入信号条件(过量程、欠量程信号)和时钟信号(EOCDS1DS4发生相应的量程信号控制。通过单片机读取MC14433勺数字信号,通过数字信号的大小来控制模拟开关,从而改变反馈电阻的大小来实现档位的不同选择。模拟开关的导通由Q3和Q0决定,当被测电压过量程时(Q3=0且Q0=D,向高量程变化;欠量程时(Q3=1且Q0=D,向低量程变化;当量程适当时,保持原来状态不变。其中,
6、Au=-Rf/R,R=10K,如果要实现3个档位,可以将Rf设为1k、10k、100k,然后通过控制开关来接通电阻,从而实现换档。CD4052g一个双4选一的多路模拟选择开关,其使用真值表如表1所示:TNMBA送d率拜共oouDX,OYoo1IX,ITo10NX.2YQ113X3Y1XXNone图6CD4052芯片真值表应用时可以通过单片机对A/B的控制来选择输入哪一路,这里选择Y通道,电路图如下:cn语I05J5 10116i-Ui ULU.x IM OUT.YDfOUll*15*TUQkIa>insMegp TPCZF:(!:图7量程自动转换电路4、A/D转换电路采用MC14433集
7、成芯片MC1443配是一个31/2位A/D转换器,其中集成了双积分式A/D转换器所有的CMOS8拟电路和数字电路。具有外接元件少,输入阻抗高,功耗低,电源电压范围宽,精度高等特点,并且具有自动校零和自动极性转换功能。MC1403提供输出可调基准电压Vref,当输入一个直流电压时,将进行A/D转换,用单片机来处理MC14433I勺控制信号。当A/D转换结束时,MC14433勺EOCS唧输出一个高电平脉冲给单片机,单片机进入中断处理程序。单片机对MC14433勺DS1DS进行动态扫描,然后将Q0Q3a行转换之后由LCD显示。相关理论推导:双积分过程可以由下面的式子表示:V01R1C1t2t1 Vx
8、dtR1C1TiV021 t2VREF dtRC1 t1 * *VREF 丁RC1 X因为 VoiV02,故有 Vx9 VrefT1,式中Ti=4000Tcp , T1是定时时间,Tx是变时间,由WG确定斜率,若用时钟脉冲数N来表示时间Tx ,则被测电压就转换成了相应的脉冲数,实现了A/D转换。R1g的参数计算:_VX(max)TR1C1Vc式中Vc为积分电容上充电电压幅度,Vc=VddVx(max)V,V二,fclk=66kHZ=当Vx(max)=2V时,代入式1,可得R1=480k,取标称值470k电路图如下图所示:单片机图8A/D转换电路VESTEicnI1V1011国CTgDU%CPI
9、OfL'POEOL:江EE五软件设计1、软件设计流程图:开始初始化进入休眠触键唤醒单片机控图9软件设计流程2、程序代码:程序清单#include""unsignedlongTheSysClock=UL;=1Busy;WriteNum(bai);WriteNum(shi);WriteNum(ge);WriteData('v');WriteNum(n);WriteNum(c);WriteNum(d);WriteData('v');/定义电阻显示voiddianzu_judge_display()unsignedcharqian=0,bai
10、=0,shi=0,ge=0;unsignedcharm,n,c,d,dianzu;if(a3&0x08)=0x08)qian=0;elseqian=1;bai=a2;shi=a1;ge=a0;dianzu=(qian*1000+bai*100+shi*10+ge)/10;m=dianzu/1000;n=(dianzu-m*1000)/100;c=(dianzu-m*1000-n*100)/10;d=dianzu%10;WriteCommand(0x85);WriteNum(m);WriteNum(n);WriteNum(c);WriteNum(d);/WriteData('
11、39;);voidGPIO_Port_B_ISR(void)unsignedlongulStatus;ulStatus=GPIOPinIntStatus(READDATA_PORT,true);GPIOPinIntClear(READDATA_PORT,ulStatus);if(ulStatus&INT)while(!(flag0=1)&&(flag1=1)&&(flag2=1)&&(flag3=1)scan();GPIOPinWrite(READDATA_PORT,LED,0xff);flag0=0;flag1=0;flag2=0;fl
12、ag3=0;程序清单#include""#include""#defineSysCtlPeriClkGatingSysCtlPeripheralClockGating#defineSysCtlPeriSlpEnableSysCtlPeripheralSleepEnable#defineLED_PERIPHSYSCTL_PERIPH_GPIOA#defineLED_PORTGPIO_PORTA_BASE#defineLED_PINGPIO_PIN_0/定义KEY#defineKEY_PERIPHSYSCTL_PERIPH_GPIOD#defineKEY_P
13、ORTGPIO_PORTD_BASE#defineKEY_PINGPIO_PIN_7voidkeyInit(void)SysCtlPeriEnable(KEY_PERIPH);GPIOPinTypeIn(KEY_PORT,KEY_PIN);GPIOIntTypeSet(KEY_PORT,KEY_PIN,GPIO_LOW_LEVEL);GPIOPinIntEnable(KEY_PORT,KEY_PIN);IntEnable(INT_GPIOD);IntMasterEnable();/定义睡眠程序voidsleep(void)jtagWait();clockInit();keyInit();Sys
14、CtlPeriEnable(LED_PERIPH);GPIOPinTypeOut(LED_PORT,LED_PIN);GPIOPinWrite(LED_PORT,LED_PIN,0x00);SysCtlDelay(2500*(TheSysClock/3000);SysCtlPeriClkGating(true);SysCtlPeriSlpEnable(KEY_PERIPH);for(;)GPIOPinWrite(LED_PORT,LED_PIN,0xff);SysCtlSleep();GPIOPinWrite(LED_PORT,LED_PIN,0x00);SysCtlDelay(2500*(T
15、heSysClock/3000);voidGPIO_Port_D_ISR(void)unsignedlongulStatus;ulStatus=GPIOPinIntStatus(KEY_PORT,true);GPIOPinIntClear(KEY_PORT,ulStatus);if(ulStatus&KEY_PIN)SysCtlDelay(10*(TheSysClock/3000);while(GPIOPinRead(KEY_PORT,KEY_PIN)=0);SysCtlDelay(10*(TheSysClock/3000);程序清单#defineSCKLGPIOPinWrite(CT
16、L_PORT,SCK,0x00);/定义信#defineSID_LGPIOPinWrite(CTL_PORT,SID,0x00);#defineCS_LGPIOPinWrite(CTL_PORT,CS,0x00);#definePSB_LGPIOPinWrite(CTL_PORT,PSB,0x00);#defineSCK_HGPIOPinWrite(CTL_PORT,SCK,0xFF);号输出高电平#defineSID_HGPIOPinWrite(CTL_PORT,SID,0xFF);#defineCS_HGPIOPinWrite(CTL_PORT,CS,0xFF);#definePSB_HG
17、PIOPinWrite(CTL_PORT,PSB,0xFF);号输出低电平/定义信#defineSIDREADGPIOPinRead(CTL_PORT,SID);/定义读回的数据#defineSIDINGPIOPinTypeGPIOInput(CTL_PORT,SID);/定义SID信号为输入#defineSID_OUTGPIOPinTypeGPIOOutput(CTL_PORT,SID);voidLCD_init(void);voidSendByte(unsignedcharDbyte);unsignedcharReceiveByte(void);voidCheckBusy(void);vo
18、idWriteCommand(unsignedcharCbyte);voidWriteData(unsignedcharDbyte);unsignedcharReadData(void);voidDelay(unsignedintMS);voidDelayKey(unsignedintSecond,unsignedintMS100);voidLcmInit(void);voidLcmClearTXT(void);voidPutStr(unsignedcharrow,unsignedcharcol,unsignedchar*puts);voidWriteNum(unsignedcharnum);
19、#endif程序清单#ifndef_TEST_H_#define_TEST_H_#include""#include""#defineREADDATA_PERIPHSYSCTL_PERIPH_GPIOB#defineREADDATA_PORTGPIO_PORTB_BASE#defineREADDATAGPIO_PIN_3|GPIO_PIN_2|GPIO_PIN_1|GPIO_PIN_0#defineINTGPIO_PIN_4#defineLEDGPIO_PIN_5#defineSCAN_PERIPHSYSCTL_PERIPH_GPIOA#defineSC
20、AN_PORTGPIO_PORTA_BASE#defineSCANGPIO_PIN_3|GPIO_PIN_2|GPIO_PIN_1|GPIO_PIN_0#defineOUTPUT_PERIPHSYSCTL_PERIPH_GPIOE#defineOUTPUT_PORTGPIO_PORTE_BASE#defineOUTPUTGPIO_PIN_1|GPIO_PIN_0voidscan(void);voidzhiliu_judge_display(void);voidjiaoliu_judge_display(void);voiddianzu_judge_display(void);voiddisplay_wucha_val(void);#endif六系统联调、测试与分析1、测试使用的仪器(1) 函数信号发生器(2) 直流电源(3) 示波器(4) 数字万用表2、系统联调测试结果(1)直流电压的测试测试方法:通过单片机系统选择直流电压档,将直流电源作为整机系统的输入端,在LCD上显示出所测直流电压值。测试结果:档位测得电压实际电压误差(的200mV78mV74mV5134mV126mv174mV167mV2V506mV483mV992mV620V交流电压的测试测试方法:通过单片机系统选择交流电压档,由函数信号发生器提供一个正弦交流电压,作为整机系统的输入端,最后在LCD上显示出所测交流
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 域名注册行业面临的挑战与机遇分析-洞察及研究
- 城市绿色交通体系建设-洞察及研究
- 八年级语文知识点复习总结
- 礼嘉中心小学建筑方案设计
- 装修管道营销方案
- 北京机械传动方案咨询公司
- 酒泉耐酸碱地坪施工方案
- 蚌埠古建筑施工方案设计
- 筹建教育心理咨询所方案
- 互利共生营销方案
- 游戏公司玩家充值协议
- 2025-2030中国鞋楦市场发展状况与未来竞争力优势分析研究报告
- 反对邪教崇尚科学班会课件
- 下肢离断伤护理查房
- 《北京市建设工程规划设计技术文件办理指南》
- 儿童急性发热的处理及合理用药
- DBJ04-T 303-2024 高性能混凝土应用技术规程
- BIM基础知识讲座
- 韩餐服务员培训
- 数字化解决方案设计师职业技能竞赛参考试题库(含答案)
- 监理管理交底
评论
0/150
提交评论