集成电路设计.pdf

上传人:赵** 文档编号:38701097 上传时间:2022-09-04 格式:PDF 页数:21 大小:615.95KB
返回 下载 相关 举报
集成电路设计.pdf_第1页
第1页 / 共21页
集成电路设计.pdf_第2页
第2页 / 共21页
点击查看更多>>
资源描述

《集成电路设计.pdf》由会员分享,可在线阅读,更多相关《集成电路设计.pdf(21页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、摘 要数字电压表是采用数字化测量技术,把连续的模拟量直流输入电压转换成不连续、 离散的数字形式并加以显示的仪表,它是诸多数字化仪表的核心与基础。 以数字电压表为核心扩展成的各种数字化仪表几乎覆盖了电子电工测量、工业测量、 自动化系统等各个领域。本文介绍了一种基于 TI 公司生产的 16 位超低功耗单片机 MSP430F149 的数字电压表系统,系统利用单片机内嵌的 12 位 A/D模块采集测量的电压信号,经过 A/D 转换、软件滤波和标度转换处理后,将测量的电压值实时显示在 LCD 显示器上。文中详细介绍了系统软件模块的程序设计,包括 A/D 转换模块, 数据处理模块及显示模块的设计。本文设计

2、的数字电压表系统可以测量 0-3V 的 1 路模拟直流输入电压值,并通过 LCD 显示器实时显示。系统具有体积小、成本低,电路简单,安全性好,可扩展性强等特点。关键字: 数字电压表;MSP430F149;LCD 显示器;A/D 转换I基于 MSP430F149 的数字电压表系统软件设计1 绪论在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数

3、准确方便、精度高、误差小、测量速度快等特而得到广泛应用 。传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示, 从而精度高、 抗干扰能力强,可扩展性强、集成方便,还可与 PC 实时通信。数字电压表是诸多数字化仪表的核心与基础 。以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目前, 由各种单片机和 A/D 转换器构成的数字电压表作全面深入的了解是很有必要的。最近的几十年来, 随着半导体技术、 集成电路 IC 和微处理器技术的发展

4、,数字电路和数字化测量技术也有了巨大的进步, 从而促使了数字电压表的快速发展,并不断出现新的类型 。数字电压表从1952 年问世以来,经历了不断改良的过程,从最早采用继电器、电子管和形式发展到了现在的全固态化、集成化 IC化 ,另一方面,精度也从 0.01%-0.005%。目前, 数字电压表的内部核心部件是 A/D 转换器, 转换的精度很大程度上影响着数字电压表的准确度,因而, 以后数字电压表的发展就着眼在高精度和低成本这两个方面 。本文介绍了一种基于 TI 公司生产的 16 位超低功耗单片机 MSP430F149 的数字电压表系统,系统利用单片机内嵌的 12 位 A/D 模块采集测量的电压信

5、号,经过 A/D 转换、 软件滤波和标度转换处理后, 将测量的电压值实时显示在 LCD 显示器上。文中详细介绍了系统软件模块的程序设计,包括 A/D 转换模块,数据处理模块及显示模块的设计。本文设计的数字电压表系统可以测量 0-3V 的 1 路模拟直流输入电压值,并通过LCD 显示器实时显示。系统具有体积小、成本低,电路1简单,安全性好,可扩展性强等特点。1.1 数字电压表技术发展现状与前景传统的模拟式即指针式电压表已有 100 多年的发展史,虽然不断改良与完善,仍无法满足现代电子测量的需要,数字电压表自 1952 年问世以来,显示强大的生命力, 现已成为在电子测量领域中应用最广泛的一种仪表。

6、数字电压表简称 DVM Digital Voltmeter , 它是采用数字化测量技术, 把连续的模拟量 直流输入电压转换成不连续、离散的数字形式并加以显示的仪表。智能化数字电压表则是最大规模集成电路LSI 、数显技术、电脑技术、自动测试技术 ATE的结晶。一台典型的直流数字电压表主要由输入电路、A/D 转换器、控制逻辑电路、显示器,以及电源电路等级部分组成。1与传统的指针式电压表相比数字电压表具有以下特点:1.显示清晰、直观、读数准确传统的模拟式电压表必须借助指针和刻度盘进行读数。 在读书过程中不可避免地会引入人为的测量误差例如视差 ,并且还容易造成视觉疲劳,数字电压表则采用了先进的数显技术

7、,使显示结果一目了然,只要仪表不发生跳数现象,测量结果就是唯一的,不仅保证了读书的客观性与准确性,还符合人们的读数习惯,能够缩短读书和记录的时间。数字电压表的准确度是测量结果中系统误差与随机误差的综合。 它便是测量结果与真值的一致程度,也反映测量误差的大小,一般讲准确度愈高,测量误差愈小,反之亦然。数字电压表的准确度远优于模拟式电压表,后者的准确度只有 7 个等级:0.1、0.2、0.5、1.0、1.5、2.5、5.0。而普通的数字电压表的准确度就已经超过这几个等级2。分辨率是数字电压表能够显示的被测电压的最小变化值, 也就是使显示器末位跳一个字所需的输入电压值, 通常用百分数表示。 12位D

8、VM的分辨率为1/4096,这是符合要求的准确度。2在数字电压表的基础上, 还可以扩展成各种专用及通用数字仪表、数字多用表。数字电压表在每秒内对被测量电压的测量次数, 叫测量速率, 单位是 “次/S” 。它主要取决于 A/D 转换器的转换速率。 目前,数字电压表的最高测量速率已到达10 万次/S3。数字电压表具有很高的输入阻抗,通常为10-10000,最高可到104。这样在测量时从测量点路上吸取的电流极小,不会影响被测信号源的工作状态,由此可减小由信号源内阻带来的附加误差。7.集成度高,微功耗新型的数字电压表普遍采用 CMOS 大规模集成电路,整机功耗很低。数字电压表的内部干扰有漂移及噪声,

9、外部干扰有串模干扰及共模干扰。经过数字滤波和浮地保护等技术,数字电压表具有很高的抗干扰能力。由于数字电压表具有以上诸多优点优点,所以在国内外已得到很广泛的应用,具有很好的发展前景。本课题研究目的和意义 MSP430F149 是德州仪器公司TI新推出的高性能的超低功耗16 位微控制器,在测量系统、工业控制、数据采集和智能仪器仪表领域有着广泛的应用,MSP430F149 内嵌 12 位高精度 A/D 转换器4。采用 MSP430F149 的数字电压表精度高、抗干扰能力强,可扩展性强、集成方便,价格低廉,目前在国内外得到了广泛的应用,有很好的发展前景。本课题的设计任务及要求1.基于MSP430F14

10、9 数字电压表系统软件设计的设计任务设计由MSP430F149为控制器的直流数字电压表模块, 对输入的直流电压进行测量,并通过12864C-1 液晶显示器显示测量电压值。学习并掌握MSP430F149工作原理及应用系统的开发,学习并掌握IAR公司的IAR Embedded Workbench EW430开发平台使用和操作。在EW430 设计平台上完成数字电压表模块系统初始化及3A/D转换、LCD显示等程序的设计、编写和调试工作。2.基于MSP430F149 数字电压表系统软件设计的设计要求要求直流电压测量范围:0V3V,01 V。完成数字电压表模块软件程序的设计工作。本章小结随着电子技术的发展

11、,需要高精度的测量工具,而基于 MSP430F149 数字电压表度高、抗干扰能力强,可扩展性强、集成方便,价格低廉,目前在国内外得到了广泛的应用,前景可观,具有极其深远的研究意义。2 基于 MSP430F149 的数字电压表系统数字电压表设计主要部分有电源部分、AD 转换部分、LCD 显示部分、JTAG程序下载接口。1.电源采用 USB 电源加分压电路为整个系统供电。430F149 单片机,单片机自带 ADC12 高精度 12 位模数转换电路。12864C-1 液晶做显示器,实现测量的 4 位电压显示。4.单片机自带程序下载接口可用 14 脚 JTAG 接口连接, 之后就可以通过下载器直接下载

12、程。5.除以上主要部分还有 32.768 的单片机外接晶振电路,连接在单片机复位端脚的复位电路。以上是主要部分介绍具体连接电路在下面介绍。图 2.1 是系统总体结构图:4YJD12864c-1液晶电源电路为液晶提供 5V 电压系统电源:USB 接口和分压电路部分测量电压输入电路P6.0 口模拟电压输入端为单片机提供 3V 电压JTAG 程序下载口晶振电路MSP430F149单片机单片机测试电路复位电路万能板 12*18cm MSP430F149 单片机介绍2.2.1 简单概述MSP430F149 芯片是美国 TI 公司推出的超低功耗微处理器,有 60KB+256 字节 FLASH,2KBRAM

13、,包括基本时钟模块、看门狗定时器、带3 个捕获比较寄存器和 PWM 输出的 16 位定时器、带 7 个捕获比较寄存器和 PWM 输出的 l6 位定时器、2 个具有中断功能的 8 位并行端口、4 个 8 位并行端口、模拟比较器、12位 AD 转换器、2 个串行通信接口等模块。5 MSP430F149 主要特点1.低功耗:电压 1.83.6V 低电压,RAM 数据保持方式下耗电仅 0.1pA,活动模式下耗电 250pA/MIPS(MIPS:每秒百万条指令数),I/O 输入端口的漏电流最大仅 50nA。2.强大的处理能力:MSP430 系列单片机采用了目前流行的精简指令集(RISC)结构,一个时钟周

14、期可以执行一条指令,因此在 8MHz 晶振工作时,指令速度可到达 8MIPS。3.丰富的片上外围模块:MSP430 系列单片机结合 TI 的高性能模拟技术,各成员都集成了较丰富的片内外设,具体到 MSP430F149 单片机有以下功能模块:看门狗(WDT),模拟比较器 A,定时器 A(Timer A),定时器 B(Timer B),串口,51(USART0,1),硬件乘法器,液晶驱动器,12 位 ADC,直接数据存取(DMA),端口 l-6(P1P6),基本定时器。64.系统工作稳定:MSP430 系列单片机均为工业级器件,运行环境温度为-40一+85,运行稳定、可靠性高,所设计的产品适用于各

15、种民用和工业环境。5.方便高效的开发环境:因为器件片内有 JTAG 调试接口,还有可电擦写的FLASH 存储器,因此采用先通过JTAG 接口下载程序到 FLASH 内,再由JTAG 接口控制程序运行、读取片内 CPU 状态,以及存储器内容等信息供设计者调试,整个开发(编译、调试)都可以在同一个软件集成环境中进行。7 MSP430F149 芯片引脚功能介绍MSP430F149 芯片设计时的封装方式为贴片式封装,64 个引脚, 引脚间距为,单片机面积很小很难手工焊接,所以够买的是带有转接板的单片机,贴片式的单片机转接成 4 列 2*8 排针的引脚,排针脚间距约为,能与万能板匹配8。MSP430F1

16、49 单片机引脚如图 2.2 所示:图 2.2 MSP430F149 单片机引脚图6MSP430F149单片机各端口功能。表2.1MSP430端口功能端口P1、P2P3、P4、P5、P6S、COM端口使用特性:1.所有端口都可以单独进行编程;2.可以进行输入输出和中断条件的任意组合;3.对具有中断功能的引脚输入沿可进行选择;4.具有第2 功能选择,以适合不同I/O 口操作;5.所有指令支持端口控制寄存器的读写操作。2.3 本章小结本章主要介绍本课题的总体设计方案以及对于单片机 MSP430F149 的核心芯片的特点及引脚功能进行了介绍。4 系统软件设计本系统设计中采用IAR Embedded

17、Workbench forMSP430 6.0 软件,这是一款非常优秀的LED开发环境具有强大的编译能力和调试功能。4.2 软件设计总体流程图根据模块划分原则,将改程序划分为初始化模块、A/D 转换子程序、LCD显示子程序 ,这三个程序模块构成了整个系统软件的主程序,软件设计总体流程图如图 4.1 所示:功能I/O、中断功能、其他片内外设功能I/O、其他片内外设功能I/O、驱动液晶7开始调用 A/D 转换子程序初始化调用 LCD 显示子程序结束图 4.1总体流程图4.3 程序设计初始化程序所谓初始化, 是对将要用到的 MSP430 系列单片机内部部件或扩展芯片进行初始工作状态设定,初始化子程序

18、的主要工作是设置定时器的工作模式,初值预置,开中断和打开定时器等。9初始化程序如下:#include unsigned char flag=1;/*初始化程序*/void uart_org(void)ME1 |= UTXE0 + URXE0;/ Enable USART0 TXD/RXDUCTL0 |= CHAR;/ 8-bit characterUTCTL0 |= SSEL0;/ UCLK = ACLKUBR00= 0 x03;/ 32768/9600UBR10= 0 x00;UMCTL0= 0 x4a;P3SEL |= 0 x30;/ P3.4,5 = USART0 TXD/RXDP3DI

19、R |= 0 x10;8UCTL0 &= SWRST;/ Initialize USART state machineIE1 |= URXIE0;/ Enable USART0 RX interrupt4.3.2 A/D 转换程序A/D 转换子程序用来控制对输入的模块电压信号的采集测量,并将对应的数值存入相应的内存单元,其转换流程图如图 4.2 所示:待测电压ADC12 模块从 ADC12MEMO中读取数字值均值滤波标度转换数字切割调用显示程序在液晶上显示LCD 显示函数A/D 转换程序如下:/*将模拟电压值显示在 12864c-1 液晶上。-*/#include /9#define E BI

20、T2#define Number_of_Results 200void uart_org(void);void UartStr(unsigned char *p);void delay(unsigned int i);/void delay(unsigned int t) ;void write_com(unsigned char cmdcode);void write_data(unsigned char Dispdata);void lcdreset() ;void hzkdis( char *s) ;void ceshi() ;void clrscreen();unsigned char

21、 shuzi = 0123456789.;static unsigned int resultsNum_of_Results; /保存 ADC 转换结果的数组void Trans_val(unsigned int Hex_Val);void InitADC12();/*主函数*/void main(void) WDTCTL = WDTPW+WDTHOLD; P3DIR|=0 x47; P3OUT&=RES; P3DIR|=0 x47; P3OUT=0 x00;10 P1DIR|=0X20; P1OUT=0 x00; P1OUT&=PSB;delay(300); P1OUT|=PSB; / PS

22、B=1; P3OUT|=RES; P3OUT&=RW; / RW=0; LCD reset(); / 初始化 LCD 屏 ceshi(); delay(25000); Clrscreen(); delay(5000); uartorg( ); UartStr(开始上传数据请稍候-rtn); delay(5000); UartStr(电压测量开始:rtn); P6SEL|=0 x01; / 使能 ADC 通道 A0 ADC12IE = 0 x01; ADC12CTL0 = ADC12ON+MSC ; /开 ADC12 内核,设 SHT0=2 (N=4) /应该加上 MSC 和SHT ADC12C

23、TL1 = SHP+CONSEQ_2 ; /SAMPCON 信号选为采样定时器输出 /应该加上CONSEQ_2 选择单通道多次转化 /ADC12 内部参考电压设置 ADC12CTL0 |= REFON; /内部参考电压打开 delay(5000); ADC12MCTL0 |= SREF_1; /R+=3.3V R-=VSS /转换允许 ADC12CTL0 |= ENC ; /转换允许(上升沿)11 _EINT();/ 使能转换 ADC12CTL0 |= ADC12SC;/*函数名称:ADC12ISR功能:ADC 中断服务函数,在这里用多次平均的参数:无返回值:无*/#pragma vector

24、=ADC_VECTOR_interrupt void ADC12ISR (void) static unsigned int index = 0; resultsindex+ = ADC12MEM0; / Move results if(index = Number_of_Results) unsigned char i; unsigned long sum = 0; index = 0; for(i = 0; i Number_of_Results; i+) sum += resultsi; sum =sum/200; /除以 200 sum=sum*3000/4095;/转换结果,将 AD

25、12 中数据线性平均后的结果,乘以量程再除以最大数字值,12 /转换为可以在 LCD 上显示的模拟电压值,量程扩大 1000 倍,是在后面的数字切割算法中使用方便。Trans_val(sum); /*函数名称:Trans_val功能:将 16 进制 ADC 转换数据变换成 4 位 10 进制真实的模拟电压数据,并在液晶上显示返回值:无*/void Trans_val(unsigned int Hex_Val) int m,n,j=0; unsigned char p5; p0=shuziHex_Val/1000; m=Hex_Val%1000; p2=shuzim/100; n=Hex_Val

26、%100; p3=shuzin/10; j=Hex_Val%10; p4=shuzij; write_com(0 x80); hzkdis(测量电压:); write_com(0 x89); for(int i=0;i=4;i+) unsigned int l=pi; if(i=1)13 hzkdis(.); UartStr(.); goto llb; switch(l) case 0: UartStr(0); delay(1000); break; case 1: UartStr(1); delay(1000); break; case 2: UartStr(2); delay(1000);

27、 break; case 3: UartStr(3); delay(1000); break; case 4: UartStr(4); delay(1000); break; case 5:UartStr(5);14 delay(1000); break; case 6: UartStr(6); delay(1000); break; case 7: UartStr(7); delay(1000); break; case 8: UartStr(8); delay(1000); break; case 9: UartStr(9); delay(1000); break; llb: if(i!=

28、1) write_data(pi); hzkdis(V); UartStr(Vrtn);delay(5000); delay(5000);15 delay(5000); lcdreset(); LCD 显示子程序LCD 程序几乎没有算法只是按寄存器送控制字,就可以实现数据接收显示,所以只要掌握 12864 的控制命令字就可以自由的实现显示功能。LCD 显示子程序如下:#include #define E BIT2#define FIRST_ADDR 0/*-延时子程序-*/void delay(unsigned int t) unsigned int i,j; for(i=0;it;i+)fo

29、r(j=0;j0)write_data(*s);s+;delay(50);/*-首屏显示-*/void ceshi()write_com(0 x01);/清除显示,并且设定地址指针为 00Hdelay(5);write_com(0 x80);/第一行如果是地址是:80H,即 LCD 的第一行的第一个位置显示hzkdis(MSP430 数字电压表);delay(5000);18write_com(0 x90);/第二行如果是地址是:90H,即 LCD 的第二行的第一个位置显示hzkdis(设计人:);delay(5000);write_com(0 x88);/第三行如果是地址是:A0H,即 LC

30、D 的第三行的第一个位置显示hzkdis(10 电子信息工程专升本);delay(5000);write_com(0 x98);/第四行如果是地址是:B0H,即 LCD 的第四行的第一个位置显示hzkdis(许小陪 2010);delay(5000);/*-清屏命令-*/void clrscreen()write_com(0 x01);delay(10);4.4 软件调试软件调试的主要任务是排查错误,错误主要包括逻辑和功能错误,这些错误有些是显性的, 而有些是隐形的, 可以通过仿真开发系统发现逐步改正。 本系统设计中采用IAREmbedded Workbench forMSP430 6.0软件

31、,这是一款非常优秀的LED开发环境具有强大的编译能力和调试功能。本章小结本章主要介绍基于 MSP430F149 的数字电压表系统的软件设计,并在 IAR EW430 设计平台上完成了软件程序设计,并进行了软件调试。5 结论19软件设计程序可以实现 03V 电压测量,并在 LCD 上显示电压值,测量精度为0.001V,测量误差约 1mv,系统各部分软件工作正常。电路设计是本科学习阶段一次非常难得的理论与实际相结合的时机。通过电路设计,自己设计、调试了数字电压表整个小系统,虽然还有许多缺陷但这是自己设计制作的第一个比较完整的软件系统,其中许多的困难也是自己以前没有经历过的,设计平台很陌生、芯片功能

32、不了解甚至根本无从下手、设计错误等等,都要自己耐心的学习和处理。当老师把资料提供并给我讲解和指导后,才对本课题有了初步的认识,当设计出现错误时才知道自己考虑的只是局部而没有注意到总体设计。 通过电路设计才让我真正体会到系统的概念。同时也提高自己的文献查阅和快速学习的能力,一个人不可能掌握所有的知识,在需要时一定要有快速学习的能力,查阅文献借鉴别人的经验可以让自己少走很多弯路。数字电压表是现在电子测量必需的测量设备, 有很好的发展前景。 MSP430 单片机超低功耗,功能强大,有非常大的开发空间。采用 MSP430 单片机设计多功能的电压测量设备很值得去研究,也有很高的实用价值。参 考 文 献1

33、张晞,王德银,张晨. MSP430 系列单片机实用 C 语言程序设计M.北京:人民邮电出版社,2005.2赵亮,侯国锐.单片机语言编程与实例M.北京:人民邮电出版社,2003.3YJD12864C-1 LCD 数据手册R.深圳:亚晶达电子,2006. 5王晓亮. 基于MSP430单片机的数字电压表的设计J.科技创新导报,2009.6MSP430 x13x,MSP430 x14x,MSP430 x14x1 MIXED SIGNAL MICROCONTROLLERR,Texas Instruments Incorporated, 2004.7潘新民,王燕芳.单片微型电脑实用系统设计M. 北京: 人民邮电出版社, 1992.8沈艳华,杨艳琴.MSP430系列16位超低功耗单片机原理与实践M. 北京:北京航空航天大学出版社,2008.9OASISSOA Reerence Model TC.Mapping of W3C Webservice Architecture Wor kto SOA RMworkR USA ,2005 20

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

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com