你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
举报
toofree 发表于 2019-9-27 19:37 在void ADCx_IRQHandler(void)函数中增加两条 HAL_ADC_IRQHandler(&AdcHandle); HAL_ADC_IRQHandler(&AdcHa ...
斯文人 发表于 2019-9-30 13:26 我用的说标准库
HAL_ADC_IRQHandler(&AdcHandle);
HAL_ADC_IRQHandler(&AdcHandle1);
在有中断到来的时候,两条函数都执行,进去查看是哪个中断来的,就去处理哪个中断。
AdcHandle,AdcHandle1自己定义,对应上相应的ADC号
看一下HAL_ADC_IRQHandler()的原型,分为三个if,说明总共有三种中断源
每个if下都会有一条,“HAL_ADC_ConvXXXXXCallback()”的函数,这条默认是个弱函数,编译的时候可以使用用户自定义的函数来代替。
在用户程序中写的HAL_ADC_ConvCpltCallback(),具体要做什么工作,自己定。
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
{
if(hadc->Instance == ADC1)
{
}
}
我用的说标准库
标准库更好办,放屁不用脱几条裤子,看看样例程序就明白了