目錄
一、Ubuntu安裝
二、編譯
三、燒錄固件到設備
四、自定義工程如何修改Makefile
五、開發資料
PART 01 Ubuntu安裝
在Linux下編譯速度比windows快很多,一般推薦優先使用linux環境開發。Ubuntu是非常常見Linux操作系統。這里介紹下如何快速搭建Ubuntu虛擬機。
1 安裝VMware Workstation Pro
下載 VMware Workstation Pro 16
剩下的一直點下一步直到安裝完成即可
激活:打開VMware Workstation Pro ->幫助->輸入許可證密鑰。
學習用途:百度一下“vmware workstation 16許可證密鑰”。
商業用途:到VMware官網購買正版許可證。
2 安裝Ubuntu
直接下載安裝好的Ubuntu20.04
百度網盤
提取碼:z22u
下載完成后解壓縮
打開VMware Workstation Pro -> 文件 -> 打開 -> 選擇下載并解壓好的Ubuntu文件路徑
直接開機即可,用戶名和密碼都是axk
Ubuntu虛擬機已經安裝好Ai-WB2系列模組的開發環境,sdk位于主目錄 -> bl_iot_sdk
下面括號內內容針對閱讀此博文前已安裝過Ubuntu的用戶
{無需重新安裝Ubuntu
SDK獲取:git clone https://github.com/bouffalolab/bl_iot_sdk.git
打開終端,安裝make,命令:sudo apt-get update、sudo apt-get install make
安裝串口工具,此處選用cutecom,執行命令:sudo apt-get install cutecom
在 Linux 中添加用戶到 dialout,執行命令:sudo usermod -a -G dialout $USER }
PART 02 編譯
進入需要編譯的工程目錄,如進入hello world工程,命令:cd customer_app/get-start/helloworld,進行編譯,命令./genromap
出現以下日志說明已經編譯成功
編譯生成的固件在build_out文件夾內: helloworld.bin
PART 03 燒錄固件到設備
1 方式一:用命令行燒錄
模組接線
注意IO8在模組背面的圓點上
開發板進入燒錄模式:
接USB到電腦,同時按下BURN和EN兩個按鍵,先松開EN按鍵再松開BURN按鍵
將設備連接到虛擬機
設置串口日志波特率 :
tools/flash_tool/chips/bl602/device_tree/bl_factory_params_IoTKitA_40M.dts,在uart{ }中設置,這里設置為115200
燒錄執行命令行:
出現以下日志表示燒錄成功
燒錄完成后打開串口助手:sudo cutecom
在cutecom中設置好波特率后打開串口
復位模組后打印helloworld
2 方式二:用可視化軟件燒錄(windows)
下載軟件
模組接線
已驗證支持的串口芯片有FT232、CH340。
開發板接線:
直接把usb接到電腦即可
需要燒錄的Parttion Table、Factory Params、Boot2 Bin文件分別位于:
v1.7.4-releasechipsl602partitionpartition_cfg_4M.toml
v1.7.4-releasechipsl602device_treel_factory_params_IoTKitA_40M.dts
v1.7.4-releasechipsl602uiltin_imgsoot2_isp_v5.6oot2_isp_release.bin
編譯生成的應用層固件燒錄到Firmware Bin
注意:燒錄工具和固件不要放到中文路徑內
日志串口默認波特率為2000000,如果需要修改日志串口波特率可以在文件v1.7.4-releasechipsl602device_treel_factory_params_IoTKitA_40M.dts內修改,修改后重新下載即可。
PART 04 自定義工程如何修改Makefile
sdk里面的例程都比較簡單,把所有的源文件都放在同一個文件夾里面就可以了,但是當我們的項目比較大的時候,會有很多的.c和.h文件,都放在同一個文件夾里面就會有點亂了,這時候把不同功能模塊的代碼放在不同的文件夾看起來就舒服很多了,怎么實現呢?
以最簡單的helloworld工程為例,基于官方helloworld工程修改。
需求:
更改工程路徑,把helloworld路徑由bl_iot_sdk/customer_app/get-start/helloworld改為bl_iot_sdk/Ai-WB2-Demo/helloworld
增加一個文件夾component,component文件夾內新增hello.c和hello.h文件,把helloworld打印放到hello.c內
實現:
設置SDK路徑
修改helloworld內的Makeflie的sdk路徑,由原來的
BL60X_SDK_PATH_GUESS ?= $(shell pwd)
BL60X_SDK_PATH ?= $(BL60X_SDK_PATH_GUESS)/…/…/…
改為
BL60X_SDK_PATH_GUESS ?= $(shell pwd)
BL60X_SDK_PATH ?= $(BL60X_SDK_PATH_GUESS)/…/…
在component組件添加到Makeflie
INCLUDE_COMPONENTS += component
EXTRA_COMPONENT_DIRS += $(PROJECT_PATH)/component
component文件夾內增加名為bouffalo.mk的Makeflie文件編譯hello.c,bouffalo.mk內增加代碼:
完整工程見:
https://gitee.com/chencong_cc/Ai-WB2-Demo.git
PART 05 開發資料
安信可官網docs:https://docs.ai-thinker.com/wifi
bouffalolab官方SDK:https://github.com/bouffalolab/bl_iot_sdk,官方例程位于customer_app文件夾內。
編程指南:https://bouffalolab.github.io/bl_iot_sdk
-
Linux
+關注
關注
87文章
11292瀏覽量
209330 -
Ubuntu
+關注
關注
5文章
563瀏覽量
29706 -
虛擬機
+關注
關注
1文章
914瀏覽量
28160 -
Makefile
+關注
關注
1文章
125瀏覽量
19181 -
環境搭建
+關注
關注
0文章
53瀏覽量
9051
原文標題:拿來就能用 | Ai-WB2系列模組linux開發環境搭建
文章出處:【微信號:安信可科技,微信公眾號:安信可科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論