中级会员
 
- 积分
- 323
- 金钱
- 323
- 注册时间
- 2018-8-9
- 在线时间
- 35 小时
|
各位大神: 如题,本人在进行STM32F103X自带ADC采集实验时,发现整个工程采用的是ADC软件触发启动,但是软起库函数的寄存器配置是否错误?具体程序如下: 附件为寄存器中文资料
对于软起库函数:ADC_SoftwareStartConvCmd(ADC1, ENABLE);
/* ADC Software start mask */ --软起标志如下: ADCx->CR2的第20位--EXTTRIG--外部触发转换方式--0-不启用外部转换;1-启用外部转换;若按照下面的配置 为5,即0101,则第20位为1,启用了外部转换,是否应该修改为 0 ,即0x00400000?
#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;
}
}
|
|