日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

战舰V3适配oneos系列01:bsp适配

發布時間:2023/12/29 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 战舰V3适配oneos系列01:bsp适配 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

戰艦V3適配oneos系列01:bsp適配

本系列以oneos2.3.0提供的STM32F103ZE模板為基礎,將oneos在戰艦V3上運行起來,并逐步適配相關外設
本系列計劃周更
本系列相關代碼將上傳gitee供測試體驗,倉庫:
https://gitee.com/dreamfly233/OneOS/tree/projects_OneOS-v2.3.0/

準備項

  • 獲取oneos2.3.0的代碼:https://gitee.com/cmcc-oneos/OneOS/tree/OneOS-V2.3.0/
  • 安裝oneos cube:https://os.iot.10086.cn/v2/doc/detailPage/documentHtml?idss=157067959888781312&proId=156799478777782272
  • 安裝stm32cubemx,推薦6.3.0

生成工程:

在oneos/project文件夾下執行project.bat,
選擇如圖:

注意SUB MODEL選擇STM32F103ZE
按esc退出并保存后,將生成STM32F103ZE的工程,建議將生成的文件夾改名, 以開發板型號為名方便區分, 這里將生成的STM32F103ZE文件夾更名為stm32f103zet6-atk-warship_v3

打開stm32f103zet6-atk-warship_v3文件夾,可以看到熟悉的目錄結構:

在該目錄下打開oneos cube,進入menuconfig

  • 注意:BOOT項需要修改:將text section addr項修改為0x08000000,否則工程不能正常啟動;
  • 若按默認的boot偏移制作并燒錄了bootloader,則可忽略該項

保存退出后,使用scons --ide=mdk5命令生成mdk5工程:

雙擊project.uvprojx打開工程

編譯后是可以直接下載進板子運行的(默認配置使用內部時鐘HSI),stlink等下載器選項自行修改

  • 下載器選項、下載算法等內容可在template.uvprojx工程修改,修改后生成的mdk工程將使用模板工程的配置

在board.c中修改LED引腳, 戰艦為PB5和PE5, 修改后如下

重新編譯后燒錄運行, 即可看到LED閃爍
默認是配置了shell命令行的,使用串口1,將串口1接入電腦,可以看到shell正常運行

修改時鐘:

使用stm32cubemx打開"board\CubeMX_Config\CubeMX_Config.ioc",選中外部時鐘

修改時鐘樹: 主頻改為72Mhz:

另外需要檢查debug是否已開啟,若sw被禁用會給燒錄程序帶來不便:

其他選項暫時不修改, 選擇生成代碼

cubemx生成的"stm32f1xx_hal_msp.c"已被包含進工程, 主要對外設的時鐘,引腳復用,DMA等進行配置,并對外設引腳進行初始化

cubemx生成的main.c中, 含有時鐘初始化函數和外設功能初始化函數, 這里只需要修改時鐘配置

打開"board\CubeMX_Config\Src\main.c" ,將SystemClock_Config函數復制并替換oneos工程bsp.c中的SystemClock_Config函數, 結果如下:

至此,oneos在戰艦v3上的適配初步完成,時鐘已修改為外置時鐘, 串口1和shell已適配,添加外設將在后續更新

這里注意:

  • scons --ide=mdk5生成mdk工程時, 將會通過腳本自動將外設初始化函數從cubemx生成的main.c中復制到bsp.c中(會使用cubemx的外設初始化配置, 例如串口波特率配置等, 需要在cubemx中正確配置), 包含時鐘配置函數, 只需生成mdk工程后進行檢查

  • 另外scons --ide=mdk5生成工程時會根據cubemx中的配置生成"board/peripherals.c", 這將是設備驅動模型注冊設備信息的依據,該.c文件通過include包含,無需也不能加入工程編譯,該文件可實現cubemx添加外設后,自動注冊到設備驅動模型

總結:在cubemx修改外設配置、時鐘后,調用一次scons --ide=mdk5可以自動將相關配置復制到工程

總結

以上是生活随笔為你收集整理的战舰V3适配oneos系列01:bsp适配的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。