### 无线应用通用封装API-radio/myRadio.c 1. **初始化**-`void myRadio_init(int agr0, void *agr1_ptr)` 射频芯片驱动IO口初始化-`myRadio_gpio_init()` 射频基本参数初始化 2. **射频运行底层执行API**-`void myRadio_process(void)` 放在while循环中执行 3. **射频进入休眠API**-`void myRadio_abort(void)` 4. **获取无线中心频率**-`uint32_t myRadio_getFrequency(void)` 5. **设置无线中心频率**-`void myRadio_setFrequency(uint32_t freq)` 6. **获取发射功率-**`int8_t myRadio_getTxPower(void)` 7. **设置发射功率**-`void myRadio_setTxPower(int8_t power)` 8. **获取无线波特率**-`uint8_t myRadio_getBaudrate(void)` 9. **设置无线波特率**-`void myRadio_setBaudrate(uint8_t br)` 10. **进入数据包发射模式**-`void myRadio_transmit(rfTxPacket_ts *packet)` 11. **进入数据包接收模式**-`void myRadio_receiver(void)` 12. **无线特殊模式功能**-`void myRadio_setCtrl(controlMode_te mode, uint32_t value)` 单载波发射功能,预留 进入direct模式,预留 连续调制波,预留 13. **射频中断回调函数**`void myRadio_gpioCallback(uint8_t index)` 外部中断检测定义在`myRadio_gpio.c` 14. 其他,官方未定义,属于第三方定义的常用API,不同厂家的射频方案不一定都能用 ## 编译软件工具KEIL篇 ### 编译参数选择
keil工程已经设置了4个选项: - `project_AT`:表示该工程的MCU型号选择的是雅特力AT32F413RCT7单片机,不带自定义boot功能,即不设置偏移地址 - `project_ST`:表示该工程的MCU型号选择的是ST意法半导体STM32F103RCT6单片机,不带自定义boot功能,即不设置偏移地址 - `project_AT_APP`:表示该工程的MCU型号选择的是雅特力AT32F413RCT7单片机,带自定义boot功能,设置偏移地址为`0x000C800` - `project_ST_APP`:表示该工程的MCU型号选择的是ST意法半导体STM32F103RCT6单片机,带自定义boot功能,设置偏移地址为`0x000C800` 模块演示板出厂默认烧录`project_ST_APP`工程,该工程是带boot功能的,默认选择的Debug工具是`CMSIS-DAP Debugger`工具,在`Option->Debug->Setting->Flash Download->Programming Algorithm->Start`中设置了起始地址,如果更换了Debug工具,起始地址会恢复默认,需要重新设置起始地址。 ### 更新固件方式 1. 使用Debug工具通过keil的Download下载,需要注意编译参数选择。 2. 使用串口下载,通过USB数据线连接电脑,通过[vollgoKit-update.exe](http://git.cloudpeaks.cn/droplin/vollgoKit-update)工具升级 ## 软件开发篇
**软件功能框图**
软件开发主要就是涉及`射频模块驱动`,与硬件相关的主要就是SPI接口和一些辅助IO口(比如中断信号脚),这部分软件主要放在`./radio/myRadio_gpio.c`中。 中断信号是通过回调函数`RADIO_GPIO_CALLBACK`的方式从`./radio/myRadio_gpio.c`回调到`./radio/myRadio.c`中处理,回调函数的方式只是为了方便软件编写,用户可以直接把外部中断函数直接放在`./radio/myRadio.c`中处理。 ### 版本更新 - V03 - 优化大功率模块PA控制信号,发送接收完后自动关闭PA,避免PA长时间工作导致过热 - V11 - 增加串口实现无线无线数据收发 - V12-2024年7月16日 - 修复近距离通讯丢包问题,修改config配置表(4Mbps) - 优化屏幕成功率显示 ## 二十三、免责说明 1、本工程驱动软件只提供做演示项目使用,未经过大批量项目验证,客户需谨慎使用,如果使用在正式项目中引发的所有问题,本司概不负责。使用过程若发现任何问题,可及时与本司相关人员联系。 2、本工程所有文件可以用于商业性项目移植,无需向本司申请。