Virtual Can 内环通信测试--WT

本文详细介绍了在XENOMAI 3.0.5环境下,如何进行CAN内环通信的测试实验,即使没有硬件CAN接口。通过加载xeno_can.ko和xeno_can_virt.ko模块,创建rtcan0与rtcan1两个虚拟接口,并使用rtcanconfig进行波特率配置和通信测试。实验过程包括代码分析及测试步骤,提供了一种在无硬件条件下的软件开发解决方案。

1.XENOMAI下CAN内环通信测试实验

本文基于 linux-4.9.38+Xenomai 3.0.5
在嵌入式领域工作时,经常会遇到这样的情况:硬件不可用,但应当开发软件。或者说软件开发应该独立于硬件可用性而进行。发生这种情况的原因有很多,但这种情况一定会存在。有些使用模拟器运行整个操作系统。在Linux中,CAN接口是使用SocketCAN处理的,其中CAN总线被视为Berkeley套接字。可以像配置以太网接口一样配置CAN接口。
当然,如果您没有任何硬件CAN,则可以利用在xenomai源文件内rtcan_virt.c定义的两个can接口进行测试:rtcan0与rtcan1:
Virtuai Can

2.测试需要的几个应有模块

与实际的的CAN 卡一样,同样需要加载can设备通用模块xeno_can.ko,
然后需要 xeno_can_virt.ko模块。

3.代码分析:

在rtcan_module.c中

const char rtcan_rtdm_provider_name[] =
    "(C) 2006 RT-Socket-CAN Development Team";

初始化CAN ,并向RTDM 中注册Can设备通用API:

int __init rtcan_init(void)
{
   
   
    int err = 0;

    if (!realtime_core_enabled())
	    return 0;

    
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值