1/11
文档分类:通信/电子

数字电压表作业.docx


下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

特别说明:文档预览什么样,下载就是什么样。

0/100
您的浏览器不支持进度条
下载所得到的文件列表
数字电压表作业.docx
文档介绍:
2016—2017学年第2学期《嵌入式控制系统设计》数字电压表专业班级姓得分评人技术要求1、约束性指标:⑴数字显示采用8段数码管,字符高度14.2mm,红色;⑵显示电压范围0~5V,显示分辨率5mV;⑶显示位数:4位,显示结果要紧凑;⑷显示形式:X.XXX,即小数点位于第一位之后。2、扩展性指标:⑴数字电压表具有与PC机通讯功能;⑵用8位晶体管显示电压数值。方案设计总体方案设计利用AW60开发板设计一个四位数字电压表,设计中使用到AW60MUC中的AD转化模块、串口通信模块以及PWM模块。设计实现了显示电压范围0~5V,显示分辨率5mV的数字电压表,实现了8为数码管的动态显示以及PC机的实时通信连接功能。设计方案原理图如图1.图1方案原理图2、四位数字电压表显示①硬件连接按照如下表格对应接插点连接。表1晶体管段选连接PORTPTE7PTE6PTE5PTE4PTE3PTE2PTA1PTA0MCUportSCKMOSIMISOSSTICH1TICH0PA1PA0DisplayDPGFEDCBA表2晶体管位选连接PORTCPORTC3PORTC2PORTC1PORTC0MCUportPORTC3PORTC2PORTC1PORTC0DisplayL1L2L3L4表3参考电压及AD输入接口PowerPower+Power+A/D0~5VMCUportVREFHVREFLPB0②原理图图2四位数码管显示原理图③AD转换程序见附录。④PCB图图3PCB原理图⑤实验结果利用编写的程序以及设计的电路,可以完成四位数字电压表的要求。实验结果如图4。图4数字显示结果3、8段数码管显示①硬件连接按照如下表格对应接插点连接。表48段数码管显示PORTPORTD0PORTD1PORTD2PORTD3PORTG0PORTG1PORTG2PORTG3MCUPD0PD1PD2PD3PG0PG1PG2PG3OUTL7L6L5L4L3L2L1L0②原理图图48段晶体管显示原理图③程序运行程序见附录。④PCB图图5PCB原理图⑤显示结果显示结果如图6.图68段晶体管显示结果4、串口通信利用BDM仿真器连接实验板和PC机,编写程序实现实验板和PC级的通讯功能。①原理图图7串口通信原理图②实验结果图7串口通信结果(3.660V)显示精度测试表5测试结果(由低到高)表6测试结果(由高到低)基于STC89C51的方案设计①原理框图图8C51方案原理框图②两种方案对比使用STC89C51单片机,需要使用外部ADC转换模块AD8040。增加了硬件电路的复杂性和成本,增加了单片机设计工作量,同时降低了系统的可靠性。ADC8040模块使用的是8位ADC转换,精度比使用AW60内ADC模块的精度低。五、附录①主程序#include<hidef.h>/*forEnableInterruptsmacro*/#include"derivative.h"/*includeperipheraldeclarations*//*DefVariable*/unsignedcharLED[4]={0x01,0x02,0x03,0x04};unsignedcharNUM=0;unsignedcharLEDBuffer;unsignedcharLEDBuffer1;constcharLEDTable[4]={0xF7,0xFB,0xFD,0xFE};constcharSGT[10]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};unsignedshortADCTEMP,ADCTEMP1;unsignedcharGRAPH(unsignedcharLEDBuffer1);constunsignedcharLEDtraD[9]={0xFF,0xFE,0xFC,0xF8,0xF0,0xF0,0xF0,0xF0,0xF0};constunsignedcharLEDtraG[9]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFC,0xF8,0xF0};unsignedcharNUMtra=0;unsignedcharj=0;voidmain(void){DisableInterrupts;/*DisableInterrupts*//*Initial_ICG*/{ICGC1=0x78;/*EnabletheExternalCrystal=4MHz,BusFrequency=4MHz*/ICGC2=0x22;while((ICGS1&0x08)==0)__RESET_WATCHDOG();/*CheckFLLLOCK=1?*/}/*Initial_TPM2*/{TPM2SC=0x06;/*SetTPM2'clockisBusratecloc 内容来自淘豆网www.taodocs.com转载请标明出处.