注意使用stm32庫函式時,對於不用的引數,一定要初始化,否則有可能影響到有用的位!
比如我在配置adc時,精度配置為12位,但輸出的一直是8位的,最後發現由於沒有初始化adc_initstruct.adc_externaltrigconv這個值,這個值是不確定的。庫函式中做如下計算
tmpreg |= (uint32_t)(adc_initstruct->adc_resolution | ((uint32_t)(adc_initstruct->adc_continuousconvmode) << 13) |
adc_initstruct->adc_externaltrigconvedge | adc_initstruct->adc_externaltrigconv |
adc_initstruct->adc_dataalign | adc_initstruct->adc_scandirection);
/* write to adcx cfgr */
adcx->cfgr1 = tmpreg;
最終該值影響到了cfgr1,又沒有開啟引數檢查功能,因此出現了上述錯誤!所以在類似使用中,一定要用初始化函式如:adc_structinit(adc_inittypedef*adc_initstruct);來將定義的結構體的資料初始化。以防未用到的引數將有效的位改寫。
STM32鍵盤 庫函式
昨天晚上老大回來看我頻繁使用暫存器寫程式給出指點,告訴我盡量使用庫函式,少使用暫存器,畢竟暫存器在後面使用的時候還要乙個乙個查詢手冊可能太麻煩了,nice!這次使用庫函式操作鍵盤,很基礎的實驗,其中摻雜了之前的蜂鳴器和led內容。感覺基礎鍵盤實驗比較有價值的還是那個鍵盤操作函式,以下給出標準模板,m...
stm32 按鍵(庫函式版)
不得不說程序太慢了 感覺很慌 但是幹什麼事情又非常的從容 學的很慢學著學著發現 不止是要學新東西 那些 以前早該知道的東西也忘了好多 還有 一定一定要好好學習 擴充套件知識面 什麼東西都一定要學精 因為知識的封鎖真的真的很可怕 很可怕 所以一定多學習 多動手 要加油 終於可以看這個的重點了 按鍵 就...
STM32 庫函式流水燈程式
我用的stm32f103zet6晶元 led給0亮 先在新建好的專案資料夾syste裡建乙個led資料夾用於存放led.c和led.h 如 接下來直接看 吧!main.c include sys.h include delay.h include led.h intmain void led.c i...