#include <poll.h>
#include <getopt.h>
#include <libgen.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <limits.h>
#include <errno.h>
#include <net/if.h>
#include <sys/ioctl.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <sys/uio.h>
#include <linux/types.h>
#include <linux/can.h>
#include <linux/can/raw.h>
#include <linux/rtnetlink.h>
#include <linux/netlink.h>
浏览源代码.
- 作者
- zhengchuangyong (zheng.nosp@m.chua.nosp@m.ngyon.nosp@m.g@em.nosp@m.bedsk.nosp@m.y.ne.nosp@m.t)
- 版本
- 1.0
- 日期
- 2021-09-07
- 版权所有
- Copyright (c) 2023 广州省天嵌嵌入式技术股份有限公司
- 修改日志:
Date | Version | Author | Description |
2021-09-07 | 1.0 | zhengchuangyong | 第一次发布,对can设备初始化,打开,关闭,读写等操做的封装。 |
关闭can设备
- 参数
-
- 返回
- int 成功返回0,失败返回-1
int can_open |
( |
const char * |
dev | ) |
|
打开can设备
- 参数
-
- 返回
- int 打开成功返回can设备文件描述符,失败返回-1
int can_read_data |
( |
int |
fd, |
|
|
struct can_data * |
data, |
|
|
unsigned int |
timeout_ms |
|
) |
| |
用于向can设备中读取数据
- 参数
-
fd | can设备文件描述符 |
data | 读取的数据结构 |
timeout_ms | 用于设置超时时间 |
- 返回
- int 成功返回读取到的帧数,失败返回-1
int can_write_data |
( |
int |
fd, |
|
|
struct can_data |
data |
|
) |
| |
用于向can设备中写入数据
- 参数
-
- 返回
- int 成功返回写入的帧数,失败返回-2
int check_can |
( |
char * |
dev | ) |
|
查询tq-can-lib库中是否注册了can设备
- 参数
-
- 返回
- int =0 存在设备节点,-1 无该设备节点,=99 设备名为空
int close_can |
( |
const char * |
dev | ) |
|
关闭can设备
- 参数
-
- 返回
- int 关闭成功返回0,失败返回-1
int get_can_data |
( |
const char * |
dev, |
|
|
struct can_data * |
data, |
|
|
unsigned int |
timeout_ms |
|
) |
| |
用于提取can接收到的数据
- 参数
-
dev | can的设备名 |
data | 用于填充读取的数据 |
timeout_ms | 用于设置阻塞时间 |
- 返回
- int 成功返回读取到的帧数,失败返回-1
int init_can |
( |
const char * |
dev, |
|
|
int |
bitrate, |
|
|
int |
mode |
|
) |
| |
初始化can设备
- 参数
-
dev | 为can设备名如can0/can1 |
bitrate | 为设置的波特率 |
mode | 为设置的模式 |
- 返回
- int 初始化成功返回0,失败返回-1
int send_can_data |
( |
const char * |
dev, |
|
|
struct can_data |
data |
|
) |
| |
用于发送can数据
- 参数
-
- 返回
- int 成功返回写入的帧数,失败返回-1