历史上的今天
返回首页

历史上的今天

今天是:2024年10月12日(星期六)

正在发生

2019年10月12日 | [MSP430]实战 ADC使用, 内部测温使用

2019-10-12 来源:eefocus

首先说说问题, 感觉这个Code Compose Studio 比较奇怪


#include "TFTTFT_Driver.h"

找不到文件, 无法打开

没有include 仅在同一工程下就可以使用函数


每次运行程序结果不同


下面给出一个使用ADC的实例:


ADC初始化函数:


void ConfigureAdcTempSensor(void)

{

  /* Configure ADC Temp Sensor Channel */

  ADC10CTL1 = INCH_10 + ADC10DIV_0 + CONSEQ_2;         // Temp Sensor ADC10CLK/4

  

ADC10CTL0 = SREF_1 + ADC10SHT_3 + MSC + REFON + ADC10ON + ADC10IE;

 // __delay_cycles(1000);                     // Wait for ADC Ref to settle

  ADC10DTC1=0xfe;

 

  ADC10CTL0&=~ENC;

  while(ADC10CTL1&BUSY);

  ADC10SA=0x0200; //(unsigned int)tempMeasured;

  //data buffer start

 

  ADC10CTL0 |= ENC + ADC10SC;               // Sampling and conversion start

  __bis_SR_register(CPUOFF + GIE);          // LPM0 with interrupts enabled

  tempAverage = tempMeasured[0];

  tempCalibrated= tempAverage;

}

对于ADC10CTL1的配置,  如果你只采集一个那么就是CONSEQ_2,  使用内部测温就是INCH_10

想要知道更多的操作寄存器的DEFINE 你需要在 MSP430G25XX.h 里面 以及 User Guide 中进行对照


DTC 某种程度上可以控制采样速度


ADC10SA 是start Address , 我使用0x0200 是因为我知道我采集数据的起始地址是它, 


在你的loop中需要加入这两行代码使得模拟值持续更新


    ADC10CTL0 |= ENC + ADC10SC;             // Sampling and conversion start

    __bis_SR_register(CPUOFF + GIE);        // LPM0 with interrupts enabled


第二句话是指, 让系统进入休眠状态, 降低功耗,  这时候我们的CPU是停止工作的,  进入中断


中断函数:


// ADC10 interrupt service routine

#pragma vector=ADC10_VECTOR

__interrupt void ADC10_ISR (void)

{

  __bic_SR_register_on_exit(CPUOFF);        // Return to active mode

}

这里面只有一句话,  它的意思是结束休眠状态,  进入工作

推荐阅读

史海拾趣

FINECHIPS公司的发展小趣事

随着全球对环保和可持续发展的重视,FINECHIPS公司积极响应号召,将环保理念融入企业发展中。公司采用先进的生产工艺和设备,减少生产过程中的能源消耗和废弃物排放。同时,FINECHIPS还致力于研发环保型电子元器件,为客户提供更加绿色、可持续的解决方案。这些努力不仅提升了公司的社会形象,还为公司赢得了更多关注环保的客户的支持。

电连(ECT)公司的发展小趣事

为了进一步扩大市场份额,ECT积极推进国际化战略。截止2022年初,公司在全球共设立23个分支机构,覆盖了中国台湾、中国香港、韩国、日本、泰国、越南、美国等国家和地区。通过国际化战略的实施,ECT不仅成功将产品推向全球市场,也提升了公司的国际影响力和竞争力。

BLT Circuit Services公司的发展小趣事

品质一直是BLT Circuit Services公司的核心竞争力。公司注重品质管理,建立了严格的质量控制体系,从原材料采购到生产过程中的每一个环节都进行严格把关。正是这种对品质的执着追求,使得BLT Circuit Services的产品在行业内赢得了良好的口碑,为公司赢得了大量的忠实客户。

蓝箭(BLUE ROCKET)公司的发展小趣事

蓝箭电子的前身是佛山市无线电四厂,创建于七十年代初。随着时代的变迁和市场的需求,该厂在1998年成功转制为有限责任公司,迈出了向现代化企业转型的重要一步。这次转型不仅为公司注入了新的活力,也为后续的发展奠定了坚实的基础。

Aplus Flash Technology Inc公司的发展小趣事

随着电子行业的快速发展,Aplus Flash Technology Inc公司意识到单凭自身的力量难以应对市场的快速变化。于是,公司积极寻求与其他企业的战略合作,共同开发新产品、拓展新市场。通过与一家知名手机制造商的合作,Aplus Flash Technology Inc公司的闪存芯片成功应用于多款热销手机中,大大提高了公司的知名度和市场份额。此外,公司还与多家芯片设计公司和半导体制造商建立了紧密的合作关系,共同推动电子行业的发展。

Elpakco Inc公司的发展小趣事

随着电子行业的不断发展,Elpakco Inc公司意识到,只有不断创新才能在激烈的市场竞争中立于不败之地。公司加大研发投入,积极引进先进技术和设备,不断推出具有创新性和竞争力的新产品。其中,公司研发的一款智能封装技术,不仅提高了生产效率,还降低了生产成本,引领了行业的技术潮流。

问答坊 | AI 解惑

好资料“时钟参数shew和jitter介绍”!

这个资料不错,看看很有帮助的!…

查看全部问答>

对中国目前3G的一点看法

3G时代,能否替代原有的固定宽带 2009年元月,中国3张3G牌照发放   电信 cdma2000  推出天翼品牌,声称测试速度已经达到3.3Mbps,年底升级到9Mbps。   联通 WCDMA   声称速度达到7.2Mbps,号称最成熟的3G制式。   ...…

查看全部问答>

问一下 元器件清单的公布问题

本帖最后由 paulhyde 于 2014-9-15 09:42 编辑 今年的元器件清单公布时间是29号? 不会提前公布出来么 早点公布也好早点猜题啊?  …

查看全部问答>

按键切换的动作,全部用串口进行通信???

“所有按键需要通过串口自发自收来调校各种功能” 本人太菜了,遇到了这个问题,虚心请教一下怎么样可以实现这种功能。 假如有4个以上的按键…

查看全部问答>

光耦的CTR

用于开关电路,所以必须要是三极管处于深度饱和区. 一般工程师在设计时,IF*CTR=(2~3)Ic,这里取2~3倍是为了处于饱和区.…

查看全部问答>

大型ARM+linux+android嵌入式技术专题公益讲座

华清远见武汉华嵌中心将于2010年4月24日下午1:00-5:00在武汉大学联手ARM中国公司,开展“基于ARM平台的嵌入式系统设计专题讲座”。 详情请点击: http://www.embedhq.org/html/mianfei/2010/0408/382.html…

查看全部问答>

关于 微信号数据采集系统设计的疑问

   本系统侧重点在微信号的采集,通过设计一个微信号采集和分析的系统,通过特定的集成电路对微小信号放大,转变为标准电流信号并能够传输到远端。通过模数转换器将其转换为数字量。利用相应软件对采集到的数字进行修正,使之能够比较准 ...…

查看全部问答>

是不是有个flable工具或框架

能用于wince上,做pushmail 一朋友说他听到过,问我,我也不知道,来问问大家 单词可能拼写错误.thanks!…

查看全部问答>

重开一贴 ---------WinCE6.0 开机画面

各位大侠:     自己定制了一个WinCE6.0 的操作系统,启动时间大约在10秒钟左右,想在CE系统真正起来之前,加一个画面,以免看着不舒服。看帖子发现一般解决都是在eboot 或者OAL层加。不解。问问大家。     我用的Atmel 公司 ...…

查看全部问答>

TM1722驱动段码式液晶显示屏的程序怎么写呀?

各位好:       我是新加入这个大家庭的一名成员,我是一名即将毕业的大四学生,现在正在做毕业设计,我的专业是电子信息工程。我的课题跟单片机有关,要用C语言编写程序,可是我这方面相当薄弱,希望大家能帮帮我。在此 ...…

查看全部问答>