|
你好,我对STM8的AD转换有个疑问。
1. STM8的ADC2转换的触发有定时器1触发和外部中断触发,清风给的代码是这样的, ADC2_Init(ADC2_CONVERSIONMODE_CONTINUOUS , ADC2_CHANNEL_10, ADC2_PRESSEL_FCPU_D18,\
ADC2_EXTTRIG_TIM, DISABLE, ADC2_ALIGN_RIGHT, ADC2_SCHMITTTRIG_CHANNEL10,DISABLE);
问题是: ADC2的转换一定要开定时器1吗? 如果不开定时器1呢,因为有时定时器1有其他用途? 还有ADC2转换函数是要写在定时器1的中断里呢还是写在ADC2的中断函数里呢? 清风给的代码是定时器1中断函数和ADC2的中断函数里都有ADC转换函数。 如下所示
__interrupt void ADC2_IRQHandler(void)
{
/* Get converted value */
Conversion_Value = ADC2_GetConversionValue();
ADC_Value(Conversion_Value);
ADC2_ClearITPendingBit();
}
_interrupt void TIM1_UPD_OVF_TRG_BRK_IRQHandler(void)
{
Conversion_Value = ADC2_GetConversionValue();
Delay(0xffff);
Delay(0xffff);
ADC_Value(Conversion_Value);
TIM1_ClearITPendingBit(TIM1_IT_UPDATE);
}
我试过如果把ADC2的函数删掉,LCD不能显示。 视频教程里对ADC2的讲解不太清晰,麻烦在解答下,谢谢。
|
|