操作軟件平臺:Keil uVision5, Mac下的Windows10虛擬機
我用的是野火團隊的STM32F103VET6開發板,野火的淘寶店鋪:https://m.tb.cn/h.3pZzHil
OK!開始吧!
第一步: 安裝Keil uVision5 ,該軟件是由ARM公司提供,官網下載地址:http://www.keil.com/download/product/ ,這裏給大家提供以下鏈接含MDK/Keil軟件,F1/F4/F7芯片包及破解工具。該分享由網友提供,免去了大家從官網更新芯片包下載慢的麻煩,破解工具僅供學習交流使用,請支持正版。百度雲下載鏈接:http://pan.baidu.com/s/1bpc7Xmf
第二步: 下載uC/OSIII源碼, 官網地址:https://www.micrium.com/ ,點進download, 在Browse by MCU Manufacturer下面選STMicroelectronics, 點View all STMicroelectronics.
第三步:下載uC/OSIII例程, 這裏提供給大家一個簡單的LED流水燈例程,網盤下載鏈接:https://pan.baidu.com/s/1SbWjigi7V-KnuypTxtYofw ,提取碼:2eee
在LED流水燈 >User下面新建一個APP文件夾 和一個BSP文件夾,
將Micrium源碼裏的Micrium>Software>EvalbBoards>Micrium>uC-Eval-STM32F107>uCOS-III裏的如下文件拷貝到APP文件夾中,
將Micrium源碼裏的Micrium>Software>EvalbBoards>Micrium>uC-Eval-STM32F107>BSP裏的bsp.c和bsp.h拷貝到BSP文件夾裏,
下一步將Micrium>Software>uC-CPU,uC-LIB,uCOS-III拷貝到LED流水燈>User目錄下,這三個文件下每個文件夾下都有兩個這樣的GNU,IAR文件是多餘的,由於Keil MDK僅使用到RealView編譯器,所以這兩個無關編譯器文件可以刪掉
然後將User文件夾下的led文件夾剪切到BSP文件夾裏面,並且刪除main.c文件.
第四步:用Keil打開工程文件,移除廢棄文件
第五步:給工程添加如下組件
爲APP添加\User\APP下的所有文件
爲BSP組件添加\User\BSP文件夾下所有文件和\User\BSP\led下的.c文件
爲uC/CPU組件添加\User\ uC-CPU文件夾下的所有文件和\User\ uC-CPU\ARM-Cortex-M3\ RealView文件夾下的所有文件
爲uC/LIB組件添加\User\ uC-LIB文件夾下的所有文件和\User\ uC-LIB\Ports\ARM-Cortex-M3\ RealView文件夾下的所有文件
爲uC/OS-III Source組件添加\User\ uCOS-III\ Source文件夾下的所有文件。
爲uC/OS-III Port組件添加\User\uCOS-III\Ports\ARM-Cortex-M3\Generic\RealView文件夾下的所有文件。
第六步:打開“Options for Target”窗口,給工程添加包含路徑
第七步:編譯項目, 發現有兩個錯誤, 別慌!
第八步:修改:
將<stm32f10x_lib.h>改成<stm32f10x.h>
在startup_stm32f10x_hd.s中做如下兩處修改
在cpu_cfg.h中的修改CPU_CFG_TS_32_EN,將其改爲使能.
同樣在cpu_cfg.h中,
在bsp.h中修改如下頭文件,
同樣bsp.h中頭文件段落以下代碼全部刪掉,只保留兩個函數原型聲明刪完是這樣的
在bsp.c中刪掉如下兩個驅動函數,並修改初始化函數.
同時在bsp.c中做以下修改,
在app_cfg.h中,將APP_CFG_SERIAL_EN改爲DEF_DISABLED
在app.c中,刪除BSP_InitDisAll();
並在起始任務函數中修改控制LED亮滅的函數
app.c中如下這兩個函數聲明及其函數體都刪掉,因爲這兩個函數的函數體是空的,且這兩個函數沒有被使用,
然後編譯就沒有錯誤啦!
秉火的STM32開發板用的USB轉串口的驅動芯片是CH340,你可以直接去野火的論壇去下載,你要是懶,emmmm點這裏吧(https://pan.baidu.com/s/1VBvrXh2uv3dt31jINSuYyw 密碼:m2pr) ,連接板子,給開發板上電.
第九步:
然後打開 mcuisp 軟件,配置如下:
1搜索串口,設置波特率 115200(儘量不要設置的太高)
2選擇要下載的 HEX 文件
3校驗、編程後執行
4DTR 低電平復位,RTS 高電平進入 bootloader
5開始編程。(如果出現一直連接的情況,按一下開發板的復位鍵即可)
這就是一個簡單的能在STM32開發板上面跑起來的例程, 接下來你就可以發揮你的想象力和編碼能力啦, 想做什麼就自己動手吧!!
更多問題請訪問野火🔥的論壇www.fireBBS.cn
(本篇文章參考野火教程資料,如侵聯)