嵌入式技术论坛
直播中

ss

6年用户 8762经验值
擅长:电源/新能源 制造/封装 RF/无线
私信 关注
[经验]

怎样去设计一款基于RT-Thread和N32G457的CAN网关呢

基于RT-Thread系统和N32G457开发板开发的一款CAN网关;硬件部分由W5500以太网模块,2个VP23405MCAN收发器,N32G457主控板等组成;软件部分将一路高速CAN(CAN1控制器)与一路以太网作为网关输入,低速CAN(CAN2控制器)作为网关输出实现隔离收发数据功能。
硬件框架

硬件框架说明:
如上图所示,硬件部分由W5500以太网模块,VP23405MCAN收发器1,N32G457主控板,VP23405MCAN收发器2等组成;其中:
W5500以太网模块:负责网关输入端网口数据收发功能,采用SPI接口与主控通讯,工作模式为TCPServer
VP23405MCAN收发器1:负责网关输入端高速CAN数据收发功能,通过主控板CAN1控制器进行控制
VP23405MCAN收发器2:负责网关输出端低速CAN数据收发功能,通过主控板CAN2控制器进行控制
N32G457主控板:负责网关输入输出端之间的通讯协议转换
LED灯:用来指示网关数据输入状态以及运行状态,红灯500MS闪烁表示网关运行正常,蓝灯闪烁表示高速CAN有数据输入,绿灯闪烁表示网口有数据输入
软件框架

软件框架说明:
如上图所示,该项目软件架构主要采用上图所示的几个线程完成,其中:
网口收发线程:负责将网口接收到的数据通过低速CAN发出
网口心跳包发送线程:负责检测客户端是否断开连接,并做好网口重连准备
高速CAN收发线程:负责将高速CAN接收到的数据通过低速CAN发出
低速CAN收发线程:负责将低速CAN接收到的数据通过网口和高速CAN发出。

更多回帖

发帖
×
20
完善资料,
赚取积分