社区导航

 
快捷导航
  • 首页
  • 论坛
  • 查看新帖
  • 最新回复
  • 社区活动
  • 联系管理员
  • 消灭零回复
  • E金币兑换
  • 干货
搜索
查看: 25|回复: 0

[资料分享] MSP430G2553ADC转换程序

[复制链接]

3413

TA的帖子

19

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2018-5-16 22:33:02 | 显示全部楼层 |阅读模式
#include "msp430G2553.h"
long temp;
long intDegF;
long intDegC;
//***************初始化ADC****/
void ADC10_init(void)
{
  ADC10CTL0 &=~ENC;    //关闭转换
  ADC10CTL0 =ADC10IE + ADC10ON + REFON + ADC10SHT_3 + REF2_5V;
  // ADC10IE  使能ADC转换中断,即开启
  // ADC10ON   使能ADC转换
  // REFON     打开内部参考电压开关
  // DC10SHT_3  时钟及64倍频选择 0-4倍 1-8倍;2-16倍,3-64被
  // SREF_1  参考电压选择,选内部可用REF2_5V ,内部2.5V ;REF1_5V ,内部1.5V
  
  ADC10CTL1 =CONSEQ_0 + ADC10SSEL_0 + ADC10DIV_3 + SHS_0 + INCH_10;
  // CONSEQ_0 ===0单通道转换;1多通道伦流 2复合
  // ADC10SSEL_1 时钟选择 0-ADC10OSC;1-ACLK;2-MCLK;3-SMCLK
  // ADC10DIV_3 ADC时钟
  // SHS_0     ADC控制选择
  //INCH_10    模拟信号输入通道选择
  __delay_cycles(30000);
  ADC10CTL0 |= ENC;  //开启转换
}
//************主函数***************************
void main()
{

  WDTCTL = WDTPW + WDTHOLD;  // Stop WDT
  ADC10_init();
  while(1)
  {
    ADC10CTL0 |=ENC +ADC10SC;
    LPM0;   //__bis_SR_register(CPUOFF + GIE);
    temp =ADC10MEM;  //Read Data
    intDegC =((temp-673)*423)/1024;
    __no_operation();
  }  
}
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_A(void)
{
  __bic_SR_register_on_exit(LPM4_bits);  
}

此帖出自MSP430论坛


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

小黑屋|手机版|Archiver|电子工程世界 ( 京ICP证 060456

GMT+8, 2018-5-26 16:01 , Processed in 0.059288 second(s), 17 queries , Gzip On, Redis On.

快速回复 返回顶部 返回列表