打印

STM32 ADC 软件启动转换的问题

[复制链接]
3014|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
790953623|  楼主 | 2012-11-27 11:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
库函数中有如下定义:
#define CR2_EXTTRIG_SWSTART_Set     ((uint32_t)0x00500000)
void ADC_SoftwareStartConvCmd(ADC_TypeDef* ADCx, FunctionalState NewState)
{
  /* Check the parameters */
  assert_param(IS_ADC_ALL_PERIPH(ADCx));
  assert_param(IS_FUNCTIONAL_STATE(NewState));
  if (NewState != DISABLE)
  {
    /* Enable the selected ADC conversion on external event and start the selected
       ADC conversion */
    ADCx->CR2 |= CR2_EXTTRIG_SWSTART_Set;
  }
  else
  {
    /* Disable the selected ADC conversion on external event and stop the selected
       ADC conversion */
    ADCx->CR2 &= CR2_EXTTRIG_SWSTART_Reset;
  }
}
问题如下:
为什么使用CR2_EXTTRIG_SWSTART_Set,STM32不是将SWSTART也看做一个外部触发么,那么在ADC_CR2中的19至17位即EXTSEL[2:0]应该为111,才是选中SWSTART,可是库函数中CR2_EXTTRIG_SWSTART_Set显然是为其赋值000了?为什么??
沙发
wyq200704| | 2014-1-3 23:58 | 只看该作者
这不是赋值而且位运算。楼主搞混了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

71

帖子

1

粉丝