在 ADC 初始化中, 参数 FunctionalState BoostMode; // When selecting an analog ADC clock frequency bigger than 20MHz, it is mandatory to first enable the BOOST Mode.
我们配置的ADC时钟 16MHZ,但是最大可以达到36MHZ,为什么不配32MHZ?
既然配置了16MHZ,为什么要使能BoostMode?还是注释这里写错了?
1,ADC1_Handler.Init.ClockPrescaler=ADC_CLOCK_SYNC_PCLK_DIV4; //4分频,ADCCLK=PER_CK/4=64/4=16MHZ,这里完全可以配置ADC_CLOCK_SYNC_PCLK_DIV2?
2,ADC1_Handler.Init.BoostMode=ENABLE; //BOOT模式关闭
STM32H743 的 ADC 最大的转换速率为 4.5Mhz,也就是转换时间为 0.22us(12 位分辨率时),不要让 ADC 的时钟超过 36M,否则将导致结果准确度下降。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>