1. 新增sqlite文件、协议文档、调试截图、配置ini等各类辅助文件 2. 更新Keil开发包版本与工程配置,调整编译优化等级 3. 重构继电器控制逻辑、串口收发逻辑与线程优先级 4. 新增Modbus寄存器映射、校准结构体与Ymodem升级相关代码 5. 完善南北向协议解析、快充挡位配置与调试日志 6. 修复注释格式、数组越界与线程邮箱溢出问题 7. 新增屏幕控制、功率板调试与协议格式说明文档
87 lines
2.5 KiB
C
87 lines
2.5 KiB
C
/****************************************************************************
|
|
文件名称 : chrg_south.h
|
|
完成日期 :
|
|
当前版本号 : V1.0
|
|
主要功能 : 实现南向通信交互,包括接收命令解析,发送请求命令,切换通路。以独立线程处理。
|
|
版本历史 : 创建原始版本
|
|
说明 :
|
|
******************************************************************************/
|
|
|
|
#ifndef __CHRG_SOUTH_H__
|
|
#define __CHRG_SOUTH_H__
|
|
|
|
#include <rtthread.h>
|
|
|
|
#include "chrg_def.h"
|
|
#include "chrg_tty.h"
|
|
#include "chrg_eload.h"
|
|
|
|
#define THR_NAME_SOUTH "thr.sou"
|
|
#define DEV_NAME_SOUTH "uart6"
|
|
|
|
// 南向选择 组合
|
|
typedef enum {
|
|
IDX_SOU_CH1 = IDX_CH1, // U25_J18
|
|
IDX_SOU_CH2 = IDX_CH2, // U25_J16
|
|
IDX_SOU_CH3 = IDX_CH3, // U24_J14
|
|
IDX_SOU_CH4 = IDX_CH4, // U24_J12
|
|
|
|
TOTAL_SOU_CHS
|
|
} eIDX_SOU_CH;
|
|
|
|
struct chrg_south_t {
|
|
const char *devname;
|
|
|
|
struct chrg_tty_t *tty;
|
|
struct rt_ringbuffer *rb;
|
|
struct pickup_info_t frame;
|
|
|
|
rt_uint8_t rx_buf[SIZE_BUF_TTY];
|
|
|
|
rt_uint8_t enable[TOTAL_SOU_CHS]; // 通路使能
|
|
rt_uint8_t online[TOTAL_SOU_CHS]; // 在线状态
|
|
//rt_uint8_t manual; // 0: 程序自动 1:手动插入命令 2:插入设置模式
|
|
eIDX_SOU_CH idx; // 当前通路
|
|
eIDX_MB_PART part;
|
|
|
|
struct chrg_eload_t eload[TOTAL_SOU_CHS]; // 负载
|
|
|
|
rt_uint8_t rel_flag[8];
|
|
};
|
|
|
|
extern struct chrg_south_t chrgsouth;
|
|
|
|
/*****************************************************************
|
|
函数名称: chrg_south_switch
|
|
函数描述: 南向通道选择
|
|
输入参数: ch: 南向通道
|
|
输出参数: -
|
|
返回说明: <0: 错误
|
|
其它说明: -
|
|
*****************************************************************/
|
|
extern int chrg_south_switch (eIDX_SOU_CH ch);
|
|
|
|
/*****************************************************************
|
|
函数名称: chrg_south_send
|
|
函数描述: 南向数据发送
|
|
输入参数: *data: 数据 length: 数据长度
|
|
输出参数: -
|
|
返回说明: <0: 错误 >0:发送数据长度
|
|
其它说明: -
|
|
*****************************************************************/
|
|
extern int chrg_south_send (rt_uint8_t *data, rt_size_t length);
|
|
|
|
/*****************************************************************
|
|
函数名称: chrg_south_thread_entry
|
|
函数描述: 南向通道数据接收线程体
|
|
输入参数: *data: 本线程信息
|
|
输出参数: -
|
|
返回说明: -
|
|
其它说明: -
|
|
*****************************************************************/
|
|
extern void chrg_south_thread_entry (void *data);
|
|
|
|
|
|
#endif
|
|
|