有幸获得第二批试用资格。
开发板是很简洁,没有包装,很环保。
开发板上的灯的颜色是真的很丰富啊,四种颜色,真是有眼前一亮的感觉。
首先安装Keil的pack:ArteryTek.AT32WB415_DFP.2.0.2.pack,否则keil是找不到支持的芯片的。
编译mcu端代码 :SourceCode\wb415_mcu_demo_2.0.3\project\at_start_wb415\at_side\mdk_v5
编译蓝牙代码时,keil会有提示:
那为什么会要安装这个包呢,
打开蓝牙工程后,在keil中有设备界面可以看到,蓝牙部分的芯片类型为:
ARM9E-S based high-performance 32-bit RISC Microcontroller with Thumb and DSP extensions and 64-bit load/store.
在数据手册里,功能框图中,也只是指明了是个蓝牙模块,至于蓝牙模块的具体参数没有找到。这个芯片可能内部封装了一个其他的蓝牙内核。
数据手册里也有定:USART3于芯片内部与无线蓝牙模块连接
从引脚配置上看,两者在晶圆似乎是独立存在的。
要查看蓝牙部分代码时,注意到了一个引用的头文件 是BK3432_reg.h
BK3432本就是博通集成电路的一个蓝牙芯片的型号,所以,WB415可能就是把两个芯片集成封装在了一起了。这样做,产品上市快,也不会有什么技术问题,都是成熟的产品,只是组合了一下。不过,就是做不了低功耗了。比较适合工业应用了。
编译工程时,注意你的licnese啊,如果是Community的,那蓝牙部分的代码是无法编译的,会有如下错:
换成por的licnese后,就可以编译通过了。
编译完成后,会在wb415_ble_demo_2.0.3\projects\ble_app_gatt\output\app下生成四个bin文件。要烧写的是:wb415_ble_app_merge.bin
MCU的编译结果是一个hex文件,路径:wb415_mcu_demo_2.0.3\project\at_start_wb415\at_side\mdk_v5\Objects
之后,使用ArteryICPProgrammer进行烧写。
开发板上的AT-Link的固件版本有一些低,第一次下载程序时,会提示升级固件,升级就好了。
添加文件时,注意,wb415_ble_app_merge.bin是二进制文件,要设置地址是00000000;
点下载后,会提示你进行代码保护,由于是测试,没有进行保护,下载完成后,如下界面:
之后,在手机上下载蓝牙调试助手,搜索到名为“WB415-GATT-21IC”的蓝牙进行连接。
连接后,大部分的服务都是Read的,找到如下这个,
通过发送0、1可以控制LED2的状态。
控制的LED是由MCU控制的,主要函数为:at_cmd_handler,其只处理了0、1、read三种操作。
相对于蓝牙程序中,这部分代码是custom_tack.c中的gattc_write_req_ind_handler函数来处理。
后面,就添加一下其他命令,来上传我的传感器数据。
|