STM32F030開發環境搭建

2021-10-11 02:18:59 字數 730 閱讀 9182

長話短說,由於突然要除錯別人畫的一塊板子,用的是stm32f030除錯乙個adc.

#include "stm32f0xx_hal.h"//這裡這個標頭檔案要放在其他標頭檔案前面,就是乙個順序問題。

//不然會報錯一堆未定義。這個問題可能以後編譯器會優化吧,目前先記著。

然後需要編譯除錯。我只有dap link,但是stm32cube不能直接支援,這個可以用openocd來解決。但是,我遇到的問題是仍然不能正確連線上,這個問題後面說。

從一開始寫程式到除錯完ad,大概花了乙個晚上+乙個上午的時間,這其中費時間的主要是乙個硬體問題,下面說,總體來說,如果不是stm32cubeide不能直接支援dap linker,stm32cubeide上手更快,使用也更方便,個人也比較熟悉eclipse系列軟體的debug流程。

使用keil稍微花了點時間,一開始不是很願意遷移工程,最後決定老老實實看一下用庫函式建立工程,發現比網上那些流程簡單多了,不過keil的使用仍然不是很順手,可以考慮一下用vscode的外掛程式。

由於之前從來沒有用過stm32做東西,這次這個板子也不是我畫的,所以犯了乙個錯。測試keil連線器件成功之後,使用keil開發每次開啟debug都閃退,我一開始沒有明白為什麼,後來發現是因為boot0沒有下拉。。。下拉之後就能正常開發了。這個實際上花了不少時間。

還是和上面說的那樣,善用軟體並嘗試新方法還是能提高效率的,如果開發只會照著網上的部落格來抄,來照著葫蘆畫瓢,並不能給自己以後的路提供什麼經驗。

STM32F030的IAP應用簡介

可以看到函式用了for迴圈將向量表拷貝到0 x20000000 sram的基位址,即將向量表由flash對映到了sram。所以在mdk裡面設定flash偏移位址的時候,同時要設定sram偏移位址。如下截圖 iap set void 函式 falsh address sram address 0x02...

STM32F030 硬體I2C驅動 AT24C16

網路上很多f1系列的atc24的讀寫程式,但f0幾乎沒有。由於f0完全重寫了i2c,所以以往的 並不能直接使用,修改事件 介面上會浪費很多時間,特別是對於使用f0系列進行入門的新手。在此十分感謝 暢學電子網 的對於at24c16的資料,特別是at24c16位址的解釋。除錯過程中這篇文章給了很大的幫助...

微控制器 stm32f030 硬體 I2C

參考文章 i2c hard.c 檔案 include i2c hard.h static int i2c timeout 0 void i2c1 port init void void i2c1 init void brief 從i2c1匯流排上的某一器件的某一起始位址中讀取一定位元組的資料到陣列中...