MSP430F149实现读单路单次A7然后进行数值显示

2008年01月01日 22:01    MSP430
关键词: MSP430F149 , A7
//文件名:main.c //版本: 1.0 //描述:MC430F14开发板的主程序,实现读单路单次A7然后进行数值显示。 //编程环境:IAR WE430 3.40A //时期: 2006.8.26. # include # include "f14demo_1.h" //**************************************************** //定义区 unsigned int value; unsigned char ADVAL[5]={'x','x','x','x','\0'}; unsigned char number_tab[]={'0','1','2','3','4','5','6','7','8','9'}; //**************************************************** //说明:实验标题1,应用单实形式发送. void send_title() //标题显示 { //sendCMD(DDRAM_0); //DDRAM sendCMD(off_cursor); //关光标 sendCMD(LCD_L21); display(LCD_L21,0xBD,0xE1); //结 display(LCD_L22,0xB9,0xFB); //果 sendDAT('A'); sendDAT('D'); sendDAT('7'); sendDAT('='); } //**************************************************** //说明:单片机初始化 void init(void) { initlcm(); //LCD初始化 char_string (title,LCD_L11); //发送本实验标题1 send_title(); //发送本实验标题2 sendCMD(off_cursor); //关光标 //ADC12初始化---------------------- //单通道,单次采样模式 P6SEL |= 0x80; //使能A/D通道 A7 ADC12CTL0 = ADC12ON + SHT0_2; //开ADC12内核和设置SHIT0=2(N=4) ADC12CTL1 |= SHP; //SAMPCON信号选择为采样定时器输出 ADC12CTL1 |= CSTARTADD_7; //定义单次转换地址 ADC12MCTL7 |= INCH_7; //ADC12MCTL0 = SREF_2; // 使用外部参考电压 Vr+ = VeREF+ ADC12CTL0 |= ENC; //ADC转换允许 //Timer_A初始化-------------------- P1DIR = 0x02; CCR0 = 1638-1; CCTL0 = CCIE; TACTL = TASSEL_1+MC_1; //timerA CLK=ACLK,增计数模式 _EINT(); //开总中断 } //**************************************************** //说明:数值转换 void conv(unsigned int intdata, unsigned char *pc) { unsigned int a,b,c; pc[0]=number_tab[intdata/1000] ; a=intdata%1000 ; pc[1]=number_tab[a/100] ; b=a%100 ; pc[2]=number_tab[b/10] ; c=b%10; pc[3]=number_tab[c/1] ; } //**************************************************** //TimerA0中断服务程序 #pragma vector=TIMERA0_VECTOR __interrupt void Timer_a(void) { LPM0_EXIT; } //---------------------------------------------------- void main(void) { WDTCTL=WDTPW+WDTHOLD; //停止WDT init(); LPM3; while(1) {ADC12CTL0 |= ADC12SC; // 开始转换 while((ADC12IFG & BIT7)==0); _NOP(); P1OUT ^= BIT1; //反转 P1.1 value=ADC12MEM7; // 读取结果 conv(value,ADVAL); //数据转换调用 char_string (ADVAL,LCD_L25); //发送本实验标题1 LPM3; } }
欢迎分享本文,转载请保留出处:http://www.eechina.com/thread-2853-1-1.html     【打印本页】
您需要登录后才可以发表评论 登录 | 立即注册

相关文章

厂商推荐


关于我们  -  服务条款  -  使用指南  -  站点地图  -  友情链接  -  联系我们
电子工程网 © 版权所有   京ICP备11013910号 | 京公网安备11010502021702
回顶部