一、硬件准备
这里可以选择安信可的BW16模块和开发板
资料:https://docs.ai-thinker.com/rtl87xx
注意一下,我这里用的是旧板,这里的串口,接的是另外的IO,不是下载口,重新开发固件,需要外接一下USB-TTL
二、环境准备
官网:https://www.amebaiot.com/cn/ameba-sdk-summary/
SDK地址:https://github.com/ambiot/ambd_sdk
-
Ubuntu 20.04
使用阿里的源http://mirrors.aliyun.com/ubuntu-releases/ -
拉一些常用的包
sudo apt-get nstall -y make build-essential zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm tk-dev libc6-dev gcc libssl-dev sudo apt-get install git wget flex bison gperf python python-setuptools cmake ninja-build ccache libffi-dev libssl-dev sudo apt-get install python3-distutils
三、编译和下载流程
SDK的用户文档,可以参考一下:https://www.amebaiot.com/?s2member_file_download=AN0400_Ameba-D_Application_Note_v3.pdf
这里需要编译2个核的固件,一个KM0,一个KM4
分别位于:
ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_lp
ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_hp
-
拉取SDK
git clone https://github.com/ambiot/ambd_sdk
-
打开蓝牙配置(不打开用不了蓝牙的AT命令)
进入工程ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_hp
make menuconfig
< MENUCONFIG FOR CHIP CONFIG —> < CONFIG BT —>
使能蓝牙后,还需要手动在源码打开一个宏ambd_sdk\component\soc\realtek\amebad\fwlib\usrcfg\rtl8721dhp_intfcfg.c #define FTL_MEM_CUSTEM 1
-
进入工程编译
工具链什么的,整个SDK都做好了,直接进目录就可以编译了然后
make all
即可
编译成功画面
-
下载
拉低PA7,再上电,进入下载模式
打开下载工具:
ambd_sdk\tools\AmebaD\Image_Too\ImageTool.exel
- 选择芯片为 8721D
- 下载3个固件
项目 Value 0x08000000 ambd_sdk\project\realtek_amebaD_va0_example\GCC-RELEASE\project_lp\asdk\image\km0_boot_all.bin 0x08004000 ambd_sdk\project\realtek_amebaD_va0_example\GCC-RELEASE\project_hp\asdk\image\km4_boot_all.bin 0x08006000 ambd_sdk\project\realtek_amebaD_va0_example\GCC-RELEASE\project_hp\asdk\image\km0_km4_image2.bin
四、固件测试
-
WIFI测试,参考
ambd_sdk\component\common\api\at_cmd\atcmd_wifi.c
ATWS 扫描当前WIFI
连接wifi(这里我就不贴图了)ATW0=SSID ATW1=PASSOWRD ATWC
-
BLE测试 参考
ambd_sdk\component\common\api\at_cmd\atcmd_bt.c
测试从机:ATBp=1
手机可以搜索到设备
测试主机
ATBc=1//蓝牙主机启动 ATBS=1//开始scan