电子工程设计第二阶段设计报告11电子工程设计第二阶段报告小型温度测量与控制系统专业:通信工程小组:10组成员:刘志斌12024228高培元12024215指导教师:高新完成日期:2014.12.20电子工程设计第二阶段设计报告22摘要:第一阶段我们已经完成了电源板和变送器。本学期的第二阶段要求是完成这个系统中单片机,A/D,D/A转换电路和显示与键盘控制电路部分。温度控制系统总体概述(一)、总述电子工程设计训练是一门综合理论知识,实践操作,电子电路系统的设计、实现、调试、故障排查等方面的综合性训练。第一阶段只完成了电源以及变送器部分。本阶段工作量非常大,需要完成单片机,数模,模数转换电路和显示与键盘控制电路部分,并且完成测温系统的测试。(二)设计任务与要求一、设计任务设计、制作并调试单片机,数模,模数转换电路和显示电路共四个模块。二、设计要求1.单片机:具有独立电路板结构。片选信号:6个,地址信号:4个,数据总线:AD0~AD7,I/O口线:P3口,P1口。2.数/模(D/A)转换电路:具有独立电路板结构。输入范围:00H~0FFH,对应输出:-10V~+10V,电源供电:+5V,±12V。3.模/数(A/D)转换电路:独立电路板结构输入信号范围:0V~+5V分辨率:8bit精度:1LSB转换时间:1ms4.显示与键盘控制电路:4位7段数码显示,前3位含小数点独立电路板安装结构0~9数字输入键及若干功能设置按键控制电子工程设计第二阶段设计报告33(三)单片机应用电路一、电路设计方案1.芯片介绍MCS-51系列单片机有众多性能优异的兼容产品、成熟的开发环境、世界上最大的单片机客户群、高性价比、畅通的供货渠道,是初学者的首选机型。8051是MCS-51系列单片机早期产品之一,内建一次性可编程只读存储器(PROM),只需要很少的外围元件即可组成最小系统。所以我们选择8051作为我们的单片机2.安装结构3.电路方案的确定通过比较,我们最后选定相对容易实现的部分地址译码,无总线驱动的方案,因为这样可以简化电路。电路图如下:电子工程设计第二阶段设计报告44VCCD03Q02D14Q15D27Q26D38Q39D413Q412D514Q515D617Q616D718Q719OE1LE11U274LS373A0A1A2A3A4A5A6A7A8A9A10A11A12A13A14A15A1B2C3E14E25E36Y015Y114Y213Y312Y411Y510Y69Y77U374LS138DAC131X119X218RESET9P1.7/INT117P1.6/T116P1.2/SCL12P1.3/CEX013P1.4/T014P1.5/INT015P0.0/TX01P0.1/RX02P0.2/SCK3P0.3/MISO4P0.4/MOSI5P0.5/ALE6P0.6/RD7P0.7/WR8P3.0/D039P3.1/D138P3.2/D237P3.3/D336P3.4/D435P3.5/D534P3.6/D633P3.7/D732P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P2.7A1528AIN129DAC030P1.1/SDA11P1.0/NSS10VCC40GND20U1C8051F023coreAD0AD1AD2AD4AD3AD5AD6AD7L1L3L5L7L9L11L13L15A0A1A2A3L34L32L30L28CS0CS1CS2CS3L29L27L25L23CS4CS5L33L31二、电路的调试$include(C8051F020.inc)LOOP:LCALLInit_DeviceMOVXA,@DPTRMOVDPTR,#0000HMOVXA,@DPTRMOVDPTR,#2000HMOVXA,@DPTRMOVDPTR,#4000HMOVXA,@DPTRMOVDPTR,#6000HMOVXA,@DPTRSJMPLOOP电子工程设计第二阶段设计报告55$include(Init_Device.inc)END正确输出波形如图所示:用示波器观察C1~C4引脚,应有图示的波形输出。如果没有输出或者彼此关系错乱,都表明电路中存在故障。3.原理及功能分析(1)电路工作原理①C8051的P3口为数据/地址复用端口,为了得到低8位地址,需要数据/地址分离电路。C8051通过A13、A14、A15三口输出信号给74LS138译码器,经过芯片译码后输出6个片选信号,当输出相应地址时输出相应片选。译码器的E1、E2口接低,E3口接高,7、9两口制空。②C8051接收信号后需要数据/地址分离电路,而74LS373锁存器便充当了这一功能。373从8051的D0~D7口接收到信号后将信号分离,数据信号从锁存器的Q0~Q3口输出,地址信号从锁存器的D0~D7口输出。(四)数/模(D/A)转换电路一、电路设计方案1、DAC8032芯片介绍数模转换器是整个控制系统将计算机输出的数字信号转化成模拟信号的重要部件,它的特性直接影响温度转换的精度。其转换的精度主要由数模转换器的位数和Vref结合电子工程设计的实际要求,结合高性价比的原则我们选择了8位电子工程设计第二阶段设计报告662、安装结构3、电路的选择输出方式:与数字量成比例的电流输出/与数字量成比例的电压输出/数字量和参考电压的相乘输出。二、电路主要参数计算电子工程设计第二阶段设计报告77D/A转换器用于将数字量转换成模拟量,他的输入粮食数字量D,输出量为模拟量VO,要求输出的模拟量与输入的数字量成正比,即:ORVDV其中VR为基准电压。112012002222nnninniiDdddd将D带入ORVDV得到:102niOiRiVdV。三、电路调试运行D/A测试程序数/模数据显示窗口将有相应,数据显示,数据为从00—FF顺序递增并不断循环。另外输出管脚会有锯齿波。测试程序如下:$include(C8051F020.inc)LCALLInit_DeviceMOVDPTR,#4000HABC:MOVX@DPTR,AINCACALLDELAYJMPABCDELAY:MOVR7,#01HJJJ:MOVR6,#20HDJNZR6,$DJNZR7,JJJRET$include(Init_Device.inc)END输出波形如图:(五)模/数(A/D)转换电路电子工程设计第二阶段设计报告88一.ADC0804芯片介绍芯片参数:工作电压:+5V,即VCC=+5V。模拟输入电压范围:0~+5V,即0≤Vin≤+5V。分辨率:8位,即分辨率为1/2=1/256,转换值介于0~255之间。转换时间:100us(fCK=640KHz时)。转换误差:±1LSB。参考电压:2.5V,即Vref=2.5V。二.安装结构原理说明:模数转换器,是将模拟电信号转变成计算机能识别的数字信号。在模数转换中,应根据测量精度要求,考虑转换电路的精度和分辨率,并力求降低成本。模数转换有多种方法可以实现,如采用电压/频率变换器,以频率或脉宽来计算温度,也可以采用A/D变换器或其它方法。如采用A/D变换器,应考虑转换器输入阻抗和变送器输出阻抗对信号的衰减可能引起的测试误差,并尽量降低这一误差。板间连接应注意保护。根据课设要求,温度0~100C的变化是用电压0~5V表示的,转成数字表示,即0~FFH。3.电路的选择电子工程设计第二阶段设计报告99、二、电路主要参数计算(1)8位数模转换电路主要技术指标:分辨率---8位:表示能够分辨的最小电压变化DATA为1时的Vi表示最小电压变化误差---±1LSB转换时间---100微秒三、电路调试调试程序如图:$include(C8051F020.inc)LCALLInit_DeviceABC:MOVDPTR,#2000HMOVX@DPTR,ACALLDELAYMOVDPTR,#2000HMOVXA,@DPTRCALLDELAYJMPABCDELAY:MOVR7,#02HJPP:MOVR6,#0HDJNZR6,$DJNZR7,JPPRET$include(Init_Device.inc)82refiVDataVV电子工程设计第二阶段设计报告1010END结果在示波器上显示锯齿波,波形在-10V~+10V上即可。(六)显示与键盘控制电路一、电路设计方案基本显示控制方式有静态和动态两种,我们选择了静态电路显示控制方式与矩阵键盘电路方案。静态显示电路方案:使用的元件多,成本相对较高。但每位独立控制,程序设计比较简单,适用于显示位数较少的场合。矩阵键盘电路方案:按键较多时,成本低,控制程序较直读电路复杂,适用于显示位数较多的场合。2.安装结构3.电路的选择静态显示电路方案:使用的元件多,成本相对较高。每位独立控制,程序设计比较简单,适用于显示位数较少的场合。使用74LS273,采用此方案。电子工程设计第二阶段设计报告1111键盘接口方法矩阵键盘电路方案:按键较多时,成本低,控制程序较直读电路复杂,适用于显示位数较多的场合。采用此方案。原理图如下:电子工程设计第二阶段设计报告1212二.电路调试(1)显示电路模块调试按照图进行电源板焊接完毕,而后再次认真查线一遍然后再开始测试。测试时,将电源板,单片机,显示电路正确连接。按正确加电顺序供电,如果一切正常可以开始进一步的测试。运行显示模块测试程序,如果电路工作正常,在4个数码管上应有数字0-9滚动显示。否则,说明电路存在故障。调试程序如图:#includeC8051F020.h#includeabsacc.h#includedata_define.c#defineDP1XBYTE[0x0000]#defineDP2XBYTE[0x0001]#defineDP3XBYTE[0x0002]#defineDP4XBYTE[0x0003]#defineTIMER0x8000#includeInit_Device.cunsignedchartable[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};voiddelay(void);voiddisplay(unsignedcharx,y);voidmain(void){unsignedchari,num=0;Init_Device();DP1=DP2=DP3=DP4=0xff;while(1){for(num=0;num10;++num){i++;if(i=4)display(i,num);else{i=1;display(i,num);}delay();}}}voiddisplay(unsignedcharx,y){if(x=1)DP1=table[y];elseif(x=2)DP2=table[y];elseif(x=3)DP3=table[y];elseDP4=table[y];电子工程设计第二阶段设计报告1313}voiddelay(void){unsignedinti;for(i=0;iTIMER;++i);}(1)键盘控制模块调试:运行键盘控制电路的测试程序,如果电路工作正常,在键盘上每按1个键,都会通过2位数码显示管,显示相应的行编码和列编码。否则,说明电路存在故障。调试程序如图:#includeC8051F020.h#includeabsacc.h#includedata_define.c#defineDP1XBYTE[0x0000]#defineDP2XBYTE[0x0001]#defineKEY_WRXBYTE[0x0002]#defineKEY_RDXBYTE[0x0003]#definelinescan10xfe#definelinescan20xfd#definelinescan30xfb#definelinescan40xf7#defineTIMER0x8000#includeInit_Device.