MSP430F4250 AD解读

引用请标明出处:http://blog.csdn.net/callon_h/article/details/51307809


1.关于MSP430F4250:


2.关于MSP430F4250 AD:

参考MSP430X4XXFamily User’s Guide:

关于16位AD采样有两种:


2.1 MSP430F4250选的是哪种?




其实并不是软件设置哪种,而是型号决定,由上述可知,MSP430F4250使用的是SD16_A

2.2 MSP430F4250 AD的输入电压范围是多少?

此时参考的手册需要更换为MSP430F42X0手册:


2.3 MSP430F4250 AD的转换结果在哪?数据格式是什么?

继续参考MSP430X4XX Family User’s Guide手册:


AD的转换结果就在SD16MEMx这个寄存器里保存,数据格式和设置有关:


其中SD16UNI和SD16DF都是SD16CCTLx(其中x是用户选择的通道编号)寄存器中的两位。

另外补充,关于FSR:

MSP430F4250 AD有内部参考电压1.2V,如果设置了选取内部参考电压,那么FSR = 1.2V/2/GAIN= 0.6V(当GAIN = 1时)。

如果没有选取内部参考电压,那么FSR = Vref/2/GAIN(想得到最大的输入范围,就把AVcc[3.3v]接到单片机的Vref引脚上)。(纯属个人理解和设置,最高只试过1.6V的,但是手册上的意思应该可以0-3.3V,暂时没有尝试)。

是否选择内部参考电压,在SD16CTL寄存器中的:


2.4 MSP430F4250 AD的转换速率?

参考MSP430X4XX Family User’s Guide手册,AD转换速率和单片机时钟配置有关:


可知如果使用32768-Hz的外部晶振,则CPU主时钟MCLK=外设时钟SMCLK=1MHz左右(默认值,如果想要改变则可以通过设置SCFQCTL和SCFI0进行倍频)。AD设置时钟源可以选择是ACLK(32768Hz)和SMCLK(1MHz),AD时钟选择上选择SMCLK(SMCLK=MCLK为最快)即可得到最快的转换速率,下面是一种设置下的转换速率的说明:


256的过采样率,并且每四次采样触发一次中断,那么约244us进行一次AD转换。

AD代码如下:

#include  
   
   
    
    


#define   Num_of_Results   80

/* Arrays to store SD16_A conversion results */
/* NOTE: arrays need to be global to       */
/*       prevent removal by compiler       */
static unsigned int results[Num_of_Results];

void main(void)
{
  volatile unsigned int i;                  // Use volatile to prevent removal
                                            // by compiler optimization

  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  FLL_CTL0 |= XCAP14PF;                     // Configure load caps
  for (i = 0; i < 10000; i++);              // Delay for 32 kHz crystal to
                                            // stabilize
  P1SEL = 0;                                //GPIO
  P1DIR = 0xff;                             //out
  
  SD16CTL = SD16REFON+SD16SSEL0;            // 1.2V ref, SMCLK
  SD16INCTL0 |= SD16INTDLY_0;               // Interrupt on 4th sample
  SD16CCTL0 |= SD16IE ;                     // Enable interrupt
  for (i = 0; i < 0x3600; i++);             // Delay for 1.2V ref startup

  _EINT();                                  // Enable general interrupts

  SD16CCTL0 |= SD16SC;                      // Set bit to start conversion
  _BIS_SR(LPM0_bits);                       // Enter LPM0
  
}

#pragma vector=SD16_VECTOR
__interrupt void SD16ISR(void)
{
  static unsigned int index = 0;

  switch (SD16IV)
  {
  case 2:                                   // SD16MEM Overflow
    break;
  case 4:                                   // SD16MEM0 IFG
    results[index] = SD16MEM0;              // Save CH0 results (clears IFG)
    P1OUT = 0x03;                           //Pin 0,1 out 1
    if (++index == Num_of_Results)
    {
      index = 0;                            // SET BREAKPOINT HERE
      //SD16CCTL0 &=~ SD16SC;
      P1OUT = 0x00;                         //Pin 0,1 out 0   
    }
    break;
  }
}
   
   

AD代码的示波器测试:(通过观察P1.0输出)



连续转换的每次转换时间为224us,转换80次为19.6ms。


以上纯属个人见解,初学者可以参考但一切以官方手册为准。


  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
特 性 2 • 低 电 源 电 压 范 围, ,1.8V 至 至 3.6V • 片 载 比 较 器 • 超 低 功 耗 • 具 有 可 编 程 电 平 检 测 功 能 的 电 源 电 压 监 控器 器/监 监 视 器 – 激 活 模 式: :270μA( (在 在 1MHz 频 频 率和 和 2.2V 电 电 压 • 欠 压 检 测 器 条 件 下 ) • 引 导 加 载 程 序 – 待 机 模式 式 (VLO) :0.3μA • 串 行 板 上 编 程 、 无 需 外 部 编 程 电 压 、 由 安 全 熔丝 丝 实 – 关 闭 模 式( (RAM 保 保 持 ): :0.1μA 现 的 可 编 程 代 码 保 护 • 可 在 不到 到 1μs 的 的 时 间 里 超 快 速 地 从 待 机 模 式 唤 醒 • 系 列 产 品 包 括 : • 16 位 位 精 简 指 令集 集 (RISC) 架 架 构, ,62.5ns 指 指 令 周 期 时 – MSP430F233 间 – 8KB+256B 闪 闪 存 存 储 器 , • 基 本 时 钟 模 块 配 置 : – 1KB RAM – 内 部 频 率 高达 达 16MHz – MSP430F235 – 内 部 极 低 功 耗 低频 频 (LF) 振 振 荡 器 – 16KB+256B 闪 闪 存 存 储 器 – 32kHz 晶 晶 振 – 2KB RAM – 具有 有 4 个 个 精 度为 为 ±1% 校 校 准 频 率 且 高达 达 16MHz – MSP430F247 ,MSP430F2471 (1) 的 内 部 频 率 – 32KB+256B 闪 闪 存 存 储 器 – 谐 振 器 – 4KB RAM – 外 部 数 字 时 钟 源 – MSP430F248 ,MSP430F2481 – 外 部 电 阻 器 – 48KB+256B 闪 闪 存 存 储 器 • 带 内 部 基 准 、 采 样 与 保 持 以 及 自 动 扫 描 功 能的 的 12 – 4KB RAM 位 模数 数 (A/D) 转 转 换 器 – MSP430F249 ,MSP430F2491 • 具有 有 3 个 个 捕获 获/比 比 较 寄 存 器的 的 16 位 位 Timer_A – 60KB+256B 闪 闪 存 存 储 器 • 具有 有 7 个 个 捕获 获/比 比 较 寄 存 器 ( 带 有 影 子 寄 存 器 ) 的 – 2KB RAM 16 位 位 Timer_B – MSP430F2410 • 4 个 个 通 用 串 行 通 信 接口 口 (USCI) – 56KB+256B 闪 闪 存 存 储 器 – USCI_A0 和 和 USCI_A1 – 4KB RAM – 支 持 自 动 波 特 率 检 测 的 增 强 型 通 用 异 步 接 收 发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值