该软件包是与野火多功能调试助手之PID调试助手通信的协议包。
名称 | 说明 |
---|---|
examples | 例子目录 |
inc | 头文件目录 |
src | 源代码目录 |
遵循 LGPLv2.1 许可,详见 LICENSE
文件。
- 依赖 RT-Thread 的串口设备。
使用 package 需要在 RT-Thread 的包管理器中选择它,具体路径如下:
RT-Thread online packages
tools packages --->
[*] fire PID communication protocol debugging assistant.
然后让 RT-Thread 的包管理器自动更新,或者使用 pkgs --update
命令更新包到 BSP 中。
在打开 package 后,当进行 bsp 编译时,它会被加入到 bsp 工程中进行编译。
-
初始化协议:
/** * @brief 初始化接收协议 * @param name:串口设备名 * @return 初始化结果. */ int32_t protocol_init(const char *name);
初始化调用,传入串口设备名,成功返回0,失败返回-1;
-
协议接收数据
/** * @brief 接收数据处理 * @param *data: 要计算的数据的数组. * @param data_len: 数据的大小 * @return void. */ void protocol_data_recv(uint8_t *data, uint16_t data_len);
在任务中轮询调用,如
protocol_data_recv(0, 0);
; -
发送数据给上位机
/** * @brief 设置上位机的值 * @param cmd:命令 * @param ch: 曲线通道 * @param data:参数指针 * @param num:参数个数 * @retval 无 */ void set_computer_value(uint8_t cmd, uint8_t ch, void *data, uint8_t num);
发送数据给上位机,发送方式请参考example/example.c;
-
接收帧处理
/** * @brief 查询帧类型(命令) * @param *data: 帧数据 * @param data_len: 帧数据的大小 * @return 帧类型(命令). */ uint8_t protocol_frame_parse(uint8_t *data, uint16_t *data_len);
根据返回的命令类型处理不同的命令,请参考example/example.c;
请参考该上位机的通信协议
- 维护:LONGZR007
- 主页:https://gitee.com/LONGZR007