历史上的今天
返回首页

历史上的今天

今天是:2025年01月30日(星期四)

2018年01月30日 | msp430 ADC10单通道多次转换

2018-01-30 来源:eefocus

MSP430 ADC10单通道多次转换


#include "msp430x22x4.h" 

#define uchar unsigned char 
#define uint unsigned int 

#define LCDen 0X80;       //P3的高三位做控制线

#define lcdrw 0X40; 
#define lcdrs 0X20; 


void delay(uint z)                          //延时程序 

    uint x,y; 
    for(x=z;x>0;x--) 
        for(y=100;y>0;y--); 

void write_com(uchar com)                  //写指令 

    P3OUT&=~lcdrs; 
    P4OUT=com; 
    delay(5); 
    P3OUT |= lcden; 
    delay(5); 
    P3OUT &= ~lcden; 


void write_data(uchar date)                 //写数据 

    P3OUT|=lcdrs; 
    P4OUT=date; 
    delay(5); 
    P3OUT|=lcden; 
    delay(5); 
    P3OUT &= ~lcden; 


void init()                                //初始化 


    P3OUT &= ~lcdrw; 
    P3OUT &= ~lcden; 
    write_com(0x38);//显示模式设置 
    write_com(0x0f);// 
    write_com(0x06);// 
    write_com(0x01);// 
    write_com(0x80+0x00);// 

        uchar num; 
        uchar  table[]="0123456789"; 
        uint dada[5]; 
         
         
volatile float ad_value; 
void main( void ) 

WDTCTL=WDTPW+WDTHOLD; //关看门狗 
BCSCTL1 =CALBC1_1MHz; //设定DCO 为1MHZ 
DCOCTL =CALBC1_1MHZ; 

P2SEL = 0X01; 
P3SEL=0X00; 
P3DIR=0XFF; 
P3OUT=0X00; 
P4SEL=0X00; 
P4DIR=0XFF; 
P4OUT=0X00; 
init(); 

//时钟源选AD 内部时钟并4 分频,选通道10,AD 启动信号来源选TA.OUT1,选单通道连续采样 
ADC10CTL1=ADC10DIV_3+INCH_0+SHS_1+CONSEQ_2; 
//选1.5V 为正向参考,地为负参考,AD 中断使能,打开参考,启动AD 模块(不是启动AD 转换) 
ADC10CTL0=SREF_1+ADC10SHT_3+ADC10IE+REFON+ADC10ON+REF2_5V; 
TACCR0=30; //延时等待参考稳定 
TACCTL0 |=CCIE; //CCR0 中断使能 
TACTL=TACLR+MC_1+TASSEL_2; //TA 增计数,时钟源为smclk 
_BIS_SR(LPM0_bits+GIE); //进入低功耗0,使能总中断,等待参考稳定 
TACCTL0 &=~CCIE; //CCR0 中断禁止 
_BIC_SR(GIE); //关总中断 
ADC10CTL0 |=ENC; //AD 转换使能 
TACCTL1=OUTMOD_4; //CCR1 选输出模式4,当TAR=0 时,输出高电平 
TACTL =TASSEL_2+MC_2; //TA 改为连续计数,smclk 时钟源 
while(1) 

  _BIS_SR(LPM0_bits+GIE); //进入低功耗0,使能总中断,等待10AD 完成 
   
 write_com(0x80+0x00); 
 for(num=0;num<5;num++) 
 { 
   write_data(table[dada[num]]); 
   delay(5); 
 } 
 _BIS_SR(GIE); 








#pragma vector = TIMERA0_VECTOR //TA0 中断服务,用来参考稳定 
__interrupt void ta0_isr(void) 

TACTL=0; //关TA 
_BIC_SR_IRQ(LPM0_bits); //退出低功耗 





#pragma vector = ADC10_VECTOR //ADC10 中断服务 
__interrupt void adc_isr(void) 

_BIC_SR_IRQ(LPM0_bits); 
ad_value=ADC10MEM/409.2; //保存AD 结果 
for(uchar i=0;i<5;i++) 

  dada[i]=ad_value; 
  ad_value=ad_value-dada[i]; 
  ad_value=ad_value*10; 

 _BIC_SR(GIE); 


推荐阅读

史海拾趣

HCC Industries公司的发展小趣事

在2005年,HCC Industries还是一家名不见经传的小型微电子部件制造商。面对市场上激烈的竞争,公司决定加大研发投入,专注于高精度传感器技术的研发。经过数年的不懈努力,HCC成功开发出了一款具有行业领先水平的温度传感器,其精度和稳定性远超同类产品。这一创新不仅赢得了市场的广泛认可,也吸引了多家知名电子企业的合作邀请。随着订单的不断增加,HCC迅速成长为微电子部件领域的佼佼者。

FCI / Amphenol公司的发展小趣事

2005年,FCI迎来了新的发展机遇。贝恩资本,一家在全球近75个工业领域和技术公司有着丰富投资经验的私有投资基金,决定收购FCI。贝恩资本的加入为FCI提供了强大的财力和国际业务支持,使得FCI在连接器市场上更具竞争力。这一收购也标志着FCI正式迈入了一个新的发展阶段。

Amphenol公司的发展故事

诚润电子(CHEVRON)公司的发展小趣事

诚润电子深知,一个优秀的团队是企业成功的关键。因此,他们一直致力于打造一支高素质、专业化的团队。公司注重员工的培训和发展,为员工提供广阔的职业发展空间和良好的福利待遇。同时,诚润电子还积极营造一种积极向上的企业文化氛围,让员工在工作中感受到归属感和成就感。这种良好的团队建设机制为诚润电子的持续发展提供了有力的保障。

北京人民电器厂公司的发展小趣事

北京人民电器厂有限公司,作为北方地区最大的低压电器制造企业,于1995年成功研发出全球首台高分断微型直流断路器。这一创新成果不仅填补了国内空白,更在国际上展现了中国在低压电器领域的研发实力。该断路器的诞生,标志着北京人民电器在直流断路器技术领域迈出了坚实的一步,为后续的产品研发和市场拓展奠定了坚实的基础。

和芯润德(CoreChips)公司的发展小趣事

在2010年代初,中国的集成电路市场仍被国际巨头所主导,技术壁垒高筑。然而,和芯润德科技有限公司(以下简称“和芯润德”)却勇敢地挑战了这一现状。公司创始人团队凭借对技术的深刻理解和不懈追求,成功研发出首款具有自主知识产权的以太网网络芯片,打破了美系技术的长期垄断。这一突破不仅为和芯润德赢得了市场的认可,也为中国集成电路产业赢得了宝贵的尊严。

Cobham Semiconductor Solutions公司的发展小趣事

品质是Cobham Semiconductor Solutions的生命线。公司始终坚持严格的质量管理体系,从原材料采购到生产流程,再到产品出厂,每一个环节都经过严格把控。公司还引入了先进的生产设备和技术,确保产品质量的稳定性和可靠性。这种对品质的执着追求,使得Cobham的产品在市场上赢得了良好的声誉和口碑。

问答坊 | AI 解惑

电源管理

移动计算设备的供电系统均采用电池供电,电池电量和供电能力对移动计算系统性能和运行时间都有决定性作用。电池供电量与体积大小的发展在一段时间内是相对固定的。因此,如何提高系统部件的电源利用率,降低不必要的电能消耗,就成了移动计算研究和 ...…

查看全部问答>

彩灯循环控制器(急)!!!!

我现在在做毕业设计,题目是.可是我现在缺很多资料,许多东西到网上找也不全 希望谁有这方面题目的东西可以给我发一下,谢谢! 我需要彩灯循环控制器的电路图,我设计的有缺陷,希望能给个能够独立运行出来的进行参考!!!…

查看全部问答>

IP防护等级含义

第一个数字: 0 无防护。 1 防护大于50mm的固体物质。 2 防护大于12mm的固体物质 3 防护大于2.5mm的固体物质 4 防护大于1mm的固体物质 5 防护粉尘(有限侵入) 6 防护粉尘(完全) 第二个数字 0 无防护 1 防护水垂直喷洒 2 防 ...…

查看全部问答>

芯片布局工程师

最近在网上投了简历,昨天接到一个电话,问我对芯片布局(非PCB)这职业感兴趣不,我当时答应了去面试。    但是我不太清楚芯片布局具体是做些什么,也不好意思问他,在网上也没查到,那位知道的可否赐教。…

查看全部问答>

高收入还不满的电子工程师薪酬揭秘

单身、年轻、精力充沛、积极向上的移动工程师坚持不懈地追求更好的收入,硅谷几十年来就扮演着“生手训练营”的角色,但那时的场景现在已经不复存在。非常积极能干的人现在都去了印度。     今年你拿了啊多少?     “EE T ...…

查看全部问答>

单片机按字符发送0XFF给上位机,

单片机按字符发送0XFF给上位机,上位机利用API按字符接收啊,如何转换得到十六进制数,为什么光得到0啊…

查看全部问答>

wdk与DDK有什么区别

wdk与DDK有什么区别,是不是WDK是用来开发VISTA下面的驱动的,开发XP下面的是不是只能用DDK…

查看全部问答>

求《嵌入式系统 硬件与软件架构》这本书的电子书下载?

一直没有找到,哪位仁兄知道,分享一下呢?…

查看全部问答>

求助!!怎样在pcb中添加一个文件的同时可以出现相关联多个库文件

在pcb中建立元器件库,同一个part但是可以导入多个和改封装一样的库文件,如在pads layout 中添加一个SO14封装,右键属性(Properties),弹出一个对话筐,在decal中下拉,可以出现自己另外做的SO14M1,SO14M2,SO14M3等宽体,或窄体的SO14封装…

查看全部问答>

ucos iar软件

我最近正在使用IAR 编写atmega128的ucos系统  不过在isr.r90文件中,有一句汇编语句 小弟不太懂  希望高人指教。 RSEG    CODE:CODE:NOROOT(0) 这条语句中的0代表什么意思?    在写中断汇编的时候, ...…

查看全部问答>