問題發(fā)生的背景
某客戶使用 STM32G431 的雙 ADC 注入組同步采樣,兩個 ADC 各采集兩個注入組通道,在選擇獨立模式 independent mode 時是 ok 的,但是配置為僅注入組同步模式 Dualinjected simultaneous mode only 后,只有 ADC1(主)會觸發(fā)采樣,ADC2(從)不會觸發(fā),客戶想了解背后的原因會是什么?
問題的復(fù)現(xiàn)
基于 NUCLEO-G431RB 開發(fā)板(版本號 C04),引腳分配如下,ADC1 采集注入組通道ADC1_IN9 和 ADC1_IN1,而 ADC2 采集注入組 ADC2_IN17 和 ADC2_IN13,引腳PC10~PC12 僅用于測試驗證的目的,通過示波器上 IO 翻轉(zhuǎn)驗證設(shè)計初衷。
問題的解決
通過編譯器查看 ADC1 與 ADC2 的寄存器,會發(fā)現(xiàn)是 ADC2 的中斷使能 JEOSIE 位被清除了,是哪里清除的呢?進(jìn)一步調(diào)試發(fā)現(xiàn),被底層驅(qū)動庫。
閱讀全文