Linux-CANFD
Loading...
Searching...
No Matches
canfd.h
1/*****************************************************************************
2* 睿感物联_西安研发中心_CANFD内核驱动 *
3* *
4* *
5* @file canfd.h *
6* @brief 打开设备,封装读写接口, *
7* Details. *
8* *
9* @author 姚远 15191436202 *
10* @email 233808393@qq.com *
11* @version 1.0.0.0(版本号) *
12* @date 2024年12月05日 *
13* @license *
14* *
15*----------------------------------------------------------------------------*
16* Remark : *
17*----------------------------------------------------------------------------*
18* Change History : *
19* <Date> | <Version> | <Author> | <Description> *
20*----------------------------------------------------------------------------*
21* xxxxxxxxxx | 1.0.0.1 | xxxxxxxxx | xxxxxxxxxxx *
22*----------------------------------------------------------------------------*
23* *
24*****************************************************************************/
25
26#pragma once
27
28#include <linux/can.h>
29#include <linux/can/raw.h>
30#include <net/if.h>
31#include <sys/socket.h>
32#include <sys/ioctl.h>
33#include <unistd.h>
34#include <string>
35
36#include <vector>
37#include <cstdio>
41class CANFD{
42public:
43 CANFD();
44 ~CANFD();
45 void fdRead(char* p_data);
46 void fdWrite(unsigned int can_id_standard, unsigned int flags, char* p_data, unsigned int length_data);
47
48private:
49 int socket_fd;
50 struct ifreq ifr;
51 struct sockaddr_can addr;
52
53};
54
Definition canfd.h:41
CANFD()
构造函数(配置socket(默认为“can0”)、配置fliters(filter配置直接在源码中更改))
Definition canfd.cpp:14
~CANFD()
析构函数(销毁CANFD句柄)
Definition canfd.cpp:59
void fdWrite(unsigned int can_id_standard, unsigned int flags, char *p_data, unsigned int length_data)
CANFD发送数据。
Definition canfd.cpp:106
void fdRead(char *p_data)
读取CANFD收到的数据。
Definition canfd.cpp:70