libcanbus官方主页

libcanbus

canbus(CAN BUS V2.0 B)扩展格式库项目简析

注: 本文假设你已经有linux开发环境

请确保你使用本库时是tag版本。
该库遵循的协议是SAE J1939-21-2006。

target=libcanbus-1.0

本项目采用 GPL 授权协议,欢迎大家在这个基础上进行改进,并与大家分享,为开源事业贡献一点点力量。 

源码下载地址:

libcanbus: 支持canbus多包数据传输协议功能,函数封装简单,易于调用。

下面将简单的解析下项目:

一、项目的目录结构

根目录
|-- src
|-- util
|-- docs
|-- build-aux
`- m4

1、src目录
src目录用于存放项目的包及C源码文件。

下面是src目录的文件:

src
|-- canbus.c
|-- canbus-private.h
`-- canbus.h

  • canbus.c —库中的主文件,定义函数
  • canbus-private.h —库中的私有头文件,声明个别结构体
  • canbus.h —库中的公共头文件,声明函数和结构体等

2、util目录
util目录用于存放测试库的套件程序。

下面是test目录里的文件:

util
|-- recv-test.c
|-- send-test.c
|-- server-cycle2snd.c
|-- client-cycle2snd.c
|-- test-recv-send.c
`-- test-send-recv.c

  • recv-test.c —CAN BUS扩展格式的接收测试程序, 与下面的程序配合使用
  • send-test.c —CAN BUS扩展格式的发送测试程序, 与上面的程序配合使用
  • server-cycle2snd.c —CAN BUS扩展格式中周期发送服务端测试程序, 与下面的程序配合使用
  • client-cycle2snd.c —CAN BUS扩展格式中周期发送客户端测试程序, 与上面的程序配合使用
  • test-recv-send.c —CAN BUS扩展格式中即周期发送又接收服务端测试程序, 与下面的程序配合使用
  • test-send-recv.c —CAN BUS扩展格式中即周期发送又接收客户端测试程序, 与上面的程序配合使用

二、编译流程

1) 下载源代码

$ git clone libcanbus: 支持canbus多包数据传输协议功能,函数封装简单,易于调用。

2) 进入libcanbus目录中

$ cd libcanbus

3) 查看tag版本

$ git tag

4) 选择最新的tag

$ git checkout vx.x.x

注上面命令行中的"x"代表最新的tag版本中的版本号码

5) 配置选项, 检测环境、依赖关系等,然后编译

$ ./configure && make

注: 当然你可以根据实际需要,为configure添加选项,例如加上--enable-static选项以使能静态库编译选项

6) 安装(可以不用安装)

$ sudo make install

三、测试库套件使用

1) 进入util目录

$ cd util

**2) 首先加载虚拟can设备vcan0

$ sudo sh start.sh

**3) 在一个终端中运行接收函数

$ ./recv-test

**4) 在另一个终端中运行发送函数

$ ./send-test

**5) 静态编译
注:静态编译的好处是可以直接在其他平台上运行,而不需要库文件。

$ make CFLAGS+=--static LDFLAGS+=-static

四、libcanbus库主页以及邮件列表

库主页用于详细说明库的相关内容,大家亦可以在issues和博客下面反馈你使用过程中所遇到的问题和想法。希望大家能积极的改进该库,并在git@oschina上发起合并请求,如果确有改进,我会将其合并到master分支上来。当然你首先要是这个网站的用户,并且需要fork该库项目。
你也可以直接通过邮件的方式将问题和想法发给我。

1)库主页
libcanbus官方主页_canbus 开源库-CSDN博客

2)BUG提交
Issues · fulinux/libcanbus - Gitee.com **3)邮件列表
E-mail: fulinux@sina.com
author: fulinux

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fulinux

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值