/****************************************************************************** 函数名称: shm_comm_packet_write 函数版本: 01.01 创建作者: zhaoyang 创建日期: 2025-08-25 函数说明: 向共享内存写入数据(自动处理A,B,crc). 参数说明: addr:共享内存的地址 data:写入数据 len:写入数据长度 返回值: 成功返回写入数据的长度, 失败返回-1 修改记录: 使用说明: 输入参数data为带有A,B和crc的结构体,len为整个结构体的长度 应用层不需要理会A,B和crc. */ #ifndef __BSP_PACKET_H__ #define __BSP_PACKET_H__ #include int shm_comm_packet_write(uint32_t addr, uint8_t *data, uint32_t len); /****************************************************************************** 函数名称: shm_comm_packet_read 函数版本: 01.01 创建作者: zhaoyang 创建日期: 2025-08-25 函数说明: 读取共享内存的数据(自动处理A,B,crc). 参数说明: addr:所以读取共享内存的地址 len:需要读取数据的长度 out_data:输出buf out_data_size:输出buf的长度 返回值: 成功返回读取数据的长度, 失败返回 <0 修改记录: 使用说明: 输入参数out_data为带有A,B和crc的结构体,len为整个结构体的长度 应用层不需要理会A,B和crc. */ int shm_comm_packet_read(uint32_t addr, uint32_t len, uint8_t *out_data, uint32_t out_data_size); /****************************************************************************** 函数名称: shm_comm_packet_read_noABcrc 函数版本: 01.01 创建作者: zhaoyang 创建日期: 2025-08-25 函数说明: 读取共享内存的数据(结构体不存在A,B,crc). 参数说明: addr:所以读取共享内存的地址 len:需要读取数据的长度 out_data:输出buf out_data_size:输出buf的长度 返回值: 成功返回读取数据的长度, 失败返回 <0 修改记录: 使用说明: 如:Ad7616采样点结构 本函数只处理不含有A,B和crc的结构体 */ int shm_comm_packet_read_noABcrc(uint32_t addr, uint32_t len, uint8_t *out_data, uint32_t out_data_size); void shm_comm_test(void); #endif