STM32 ADC 软件启动转换的问题

[复制链接]
3569|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

粉丝
快速回复 在线客服 返回列表 返回顶部
0