亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? can.c

?? linux的can總線和看門狗測試源代碼。
?? C
字號:
/* * can.c *  *  * CAN BUS test  */#include <sys/types.h>#include <sys/unistd.h>#include <sys/stat.h>#include <linux/fcntl.h>#include <linux/ioctl.h>#include <pthread.h>#include "can.h"static void can_show_header(struct can_frame_header *header){    printf("\nHeader: id=%d srr=%d ide=%d eid=%d rtr=%d rb1=%d rb0=%d dlc=%d\n",	   header->id,	   header->srr,	   header->ide,	   header->eid,	   header->rtr,	   header->rb1,	   header->rb0,	   header->dlc);}static int device = -1;static int device1 = -1;static void * can_read(void * th) {    struct can_frame frame_recv;    static sid = 0;    int i;    while(1) {	memset(&frame_recv, 0, sizeof(struct can_frame));	if (device1 > 0)	    read(device1, &frame_recv, sizeof(struct can_frame));	else	    read(device, &frame_recv, sizeof(struct can_frame));		if (frame_recv.header.id != sid) {	    can_show_header(&frame_recv.header);	    printf("RECV: \"");	}	for (i=0; i<frame_recv.header.dlc; i++)	    printf("%c", frame_recv.data[i]);	if (frame_recv.header.id != sid)	    printf("\"\n");		sid = frame_recv.header.id;    }    return NULL;}int main(int argc, char *argv[]){    if (argc < 2) {	printf("Useage: %s dev [[dev1 [-f]] [-f]]\n", argv[0]);	printf("   dev dev1 --- can device\n");	printf("   -f       --- filter mode\n");	exit(0);    }        static char buf[256];    static char *pbuf=buf;    struct can_frame frame;        struct can_filter filter = {	.fid = {	    {3,0,0,1},	    {4,1,9,1},	    {5,0,0,1},	    {6,1,13,1},	    {7,0,0,1},	    {8,1,17,1},	},	.sidmask = 0x0f,	.eidmask = 0x00,	.mode = 0,    };        struct can_filter not_filter = {	.sidmask = 0,	.eidmask = 0,	.mode = 0,    };        device = open(argv[1], O_RDWR);    if (device < 0){	perror("open:device");	exit(-1);    }    if (argc > 2) {	if (strcmp(argv[2], "-f") != 0) {	    device1 = open(argv[2], O_RDWR);	    if (device1 < 0) {		perror("open:device1");		exit(-1);	    }	}    }	        int i,can_id = 1;    int rate;    int len;        ioctl(device, CAN_IOCSFILTER, &not_filter);    ioctl(device, CAN_IOCSRATE, 250000);    ioctl(device, CAN_IOCGRATE, &rate);    printf("%s Work Rate: %dbps\n", argv[1], rate);        if (device1 > 0) {	ioctl(device1, CAN_IOCSFILTER, &not_filter);	ioctl(device1, CAN_IOCSRATE, 250000);	if (argc > 3) {	    if (strcmp(argv[3], "-f") == 0) {		ioctl(device1, CAN_IOCSFILTER, &filter);	    }	}	printf("%s Work Rate: %dbps\n", argv[2], rate);    } else {		if (argc > 2) {	    if (strcmp(argv[2], "-f") == 0) {		ioctl(device, CAN_IOCSFILTER, &filter);	    }	}	ioctl(device, CAN_IOCTLOOPBACKMODE);	printf("%s work on loopback mode.\n", argv[1]);    }        pthread_attr_t attr;    pthread_t thread_recv;    pthread_attr_init(&attr);    pthread_attr_setscope(&attr, PTHREAD_SCOPE_SYSTEM);    if (pthread_create(&thread_recv, NULL, can_read, 0)) {	perror("thread_create");	exit(-1);    }        if (((argc == 3) && (strcmp(argv[2], "-f") == 0)) || ((argc > 3) && (strcmp(argv[3], "-f") == 0))) {	printf("\nTest in Filter mode. \n");	printf("Only receive the frame that it's id & 0xf == [3...8]\n"); 	printf("The frame data=id(id=1...2031), and eid=id*2+1\n");    }    else {	printf("\nPress \"\\q\" to quit! \n");	printf("Input the message and press Enter to send!\n");	printf("The frame id=1...2031, and eid=id*2+1\n");    }        while(1)    {	if (getchar() == 'q') break;				memset(&frame, 0, sizeof(struct can_frame));		frame.header.id = can_id;		if ((can_id % 2) == 0) {	    frame.header.ide = 1;	    frame.header.eid = can_id * 2 + 1;	}else{	    frame.header.ide = 0;	    frame.header.eid = 0;	}			if (((argc > 2) && (strcmp(argv[2], "-f") == 0)) || ((argc > 3) && (strcmp(argv[3], "-f") == 0))) {	    sprintf(frame.data, "%d", can_id);	    frame.header.dlc = strlen(frame.data);	    write(device, &frame, sizeof(struct can_frame));	    sleep(1);	}	else {          printf("\nCanTest> ");	    scanf("%s", buf);	    if (strcmp(buf, "\\q") == 0)		break;	    	    len = strlen(buf);	    pbuf = buf;	    for (len; len>CAN_FRAME_MAX_DATA_LEN; len-=CAN_FRAME_MAX_DATA_LEN) {		memcpy(frame.data, pbuf, CAN_FRAME_MAX_DATA_LEN);		frame.header.dlc = CAN_FRAME_MAX_DATA_LEN;		write(device, &frame, sizeof(struct can_frame));		pbuf += CAN_FRAME_MAX_DATA_LEN;	    }	    if (len > 0) {		frame.header.dlc = len;		memcpy(frame.data, pbuf, len);		write(device, &frame, sizeof(struct can_frame));	    }	}	can_id++;	if (can_id > 2031) {	    can_id = 1;	}    }        close(device);    if (device1 > 0)	close(device1);    return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美激情在线一区二区| 亚洲精品国产一区二区三区四区在线| 国产精品夜夜嗨| 免费亚洲电影在线| 亚洲超碰精品一区二区| 亚洲激情五月婷婷| 亚洲免费毛片网站| 中文字幕一区视频| 亚洲天堂av一区| 亚洲免费观看高清完整版在线| 中文字幕一区免费在线观看| 国产精品免费看片| 国产精品的网站| 亚洲欧美日韩久久精品| 欧美成人午夜电影| 五月天婷婷综合| 不卡视频在线观看| 国产aⅴ综合色| a4yy欧美一区二区三区| 91视频国产资源| 日本国产一区二区| 欧美丰满少妇xxxbbb| 日韩午夜三级在线| 久久久久97国产精华液好用吗| 国产欧美日韩不卡| 亚洲女同女同女同女同女同69| 一区二区三区欧美激情| 亚洲va韩国va欧美va精品| 免费观看在线色综合| 国产一区二区三区四区五区美女 | 久久99精品国产麻豆婷婷洗澡| 蜜桃精品视频在线观看| 国产激情精品久久久第一区二区 | 亚洲免费观看高清| 性久久久久久久| 黄网站免费久久| 91一区一区三区| 欧美一级电影网站| 综合婷婷亚洲小说| 免费精品视频最新在线| 99久久精品费精品国产一区二区 | 亚洲va欧美va人人爽| 国产在线精品一区在线观看麻豆| 91在线视频播放地址| 欧美高清视频不卡网| 欧美国产亚洲另类动漫| 午夜欧美2019年伦理| 丁香另类激情小说| 欧美巨大另类极品videosbest | 成人免费视频app| 在线观看国产日韩| 一区二区三区日韩欧美| 亚洲国产日韩在线一区模特| 日韩精品久久理论片| 国产精品一区不卡| 在线播放视频一区| 国产精品久久久久婷婷| 久久se精品一区二区| 欧洲国内综合视频| 中文字幕一区二区三区在线观看 | 午夜亚洲福利老司机| 国产精品99久久久久久宅男| 在线观看视频一区二区欧美日韩| 久久一区二区三区四区| 午夜视频久久久久久| 色综合久久88色综合天天| 久久综合久久综合九色| 蜜臀av性久久久久av蜜臀妖精| 日本韩国欧美三级| 亚洲图片激情小说| 成人app网站| 国产精品三级视频| 丰满放荡岳乱妇91ww| 国产亚洲人成网站| 国产精品资源网站| 久久精品视频一区二区三区| 开心九九激情九九欧美日韩精美视频电影 | 精品国免费一区二区三区| 天天爽夜夜爽夜夜爽精品视频| 91豆麻精品91久久久久久| 国产精品第四页| 不卡的av电影在线观看| 国产午夜精品理论片a级大结局| 久久精品国产99国产| 欧美一级爆毛片| 久久国产精品72免费观看| 精品日韩av一区二区| 国产在线麻豆精品观看| 国产欧美一区二区精品久导航| 国产精品一区一区三区| 欧美高清在线精品一区| 不卡的看片网站| 亚洲精品日韩一| 欧美日韩国产成人在线91| 丝袜美腿亚洲色图| 亚洲精品一区二区在线观看| av高清久久久| 亚洲午夜免费视频| 91精品国产欧美一区二区成人| 免费看精品久久片| 国产午夜亚洲精品理论片色戒| 成人永久aaa| 亚洲最大成人综合| 日韩精品一区二区三区老鸭窝| 国产一区视频在线看| 自拍偷自拍亚洲精品播放| 91精品福利视频| 日本不卡不码高清免费观看| 精品国产91洋老外米糕| 99久久久久免费精品国产| 一区二区三区欧美亚洲| xfplay精品久久| 色综合久久综合网97色综合 | 91浏览器打开| 婷婷激情综合网| 欧美激情一区二区在线| 国内精品写真在线观看| √…a在线天堂一区| 欧美日本视频在线| 国产盗摄女厕一区二区三区| 亚洲乱码国产乱码精品精98午夜| 日韩一本二本av| 色综合天天综合在线视频| 久久精品国产亚洲a| 亚洲品质自拍视频| 亚洲天堂a在线| 欧美r级在线观看| 色婷婷久久久久swag精品| 精品在线观看免费| 亚洲一线二线三线视频| 欧美国产成人在线| 日韩久久久精品| 欧美日韩一区 二区 三区 久久精品| 激情六月婷婷久久| 天天爽夜夜爽夜夜爽精品视频| 欧美激情一二三区| 精品国产乱码久久久久久浪潮| 91成人免费网站| 99久久精品费精品国产一区二区| 免费成人在线视频观看| 亚洲成av人在线观看| 亚洲三级视频在线观看| 久久久精品免费网站| 欧美高清精品3d| 欧美浪妇xxxx高跟鞋交| 91久久国产综合久久| 成人免费高清视频在线观看| 国产综合色视频| 裸体一区二区三区| 免费精品99久久国产综合精品| 亚洲午夜私人影院| 亚洲免费观看高清完整版在线观看熊| 国产精品视频第一区| 国产亚洲精品aa午夜观看| 久久综合成人精品亚洲另类欧美| 在线综合视频播放| 69av一区二区三区| 欧美日韩成人一区二区| 国产成人啪免费观看软件| 三级亚洲高清视频| 亚洲国产视频在线| 欧美丝袜丝交足nylons| 国产成人超碰人人澡人人澡| 一区二区三区欧美激情| 国产精品久久一卡二卡| 91久久精品国产91性色tv| 99国产精品久久| eeuss鲁片一区二区三区| 亚洲成人动漫一区| 欧美日韩午夜影院| 在线日韩av片| 欧美午夜精品一区| 欧美日韩国产成人在线免费| 欧美日韩国产区一| 日韩欧美中文字幕精品| 日韩欧美精品在线| 国产片一区二区| 国产精品丝袜一区| 亚洲综合久久久久| 免费成人在线视频观看| 一区二区三区欧美激情| 欧美日韩国产高清一区二区三区 | 久久99精品久久久久久国产越南| 韩国成人在线视频| 成人小视频在线| 欧美影院精品一区| 日韩免费观看2025年上映的电影| 久久亚洲综合色| 亚洲黄色在线视频| 美女在线观看视频一区二区| 狠狠色丁香久久婷婷综| 国产黄色91视频| 欧洲av一区二区嗯嗯嗯啊| 日韩欧美不卡一区| 亚洲精选在线视频| 久久丁香综合五月国产三级网站 | www.成人网.com| 欧美精品久久久久久久久老牛影院| 久久夜色精品一区| 亚洲国产成人91porn|