cantest.c

来自「HMS30C7202下的CAN驱动」· C语言 代码 · 共 42 行

C
42
字号
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <linux/types.h>


#include "can.h"

int main(void)
{
  struct canmsg_t sendmsg={0,0,5,0,8,{1,2,3,4,5,6,7,8}};
  int fd, ret,i,j;
  
  if ((fd=open("/dev/can0",O_RDWR)) < 0 )  {
    perror("open");
    printf("Error opening /dev/can0\n");
    exit(1);
  }
  
  j=0;
  while (1) {
    for(i=0;i<10;i++) {
      sendmsg.data[0]=i;
      sendmsg.data[1]=j;
      if ((ret=write(fd,&sendmsg,sizeof(struct canmsg_t))) < 0) {
	perror("write");
	printf("Error sending message\n");
	break;
      }
    }
    printf("Sent block of 10 messages #: %u\n",j);
    j++;
    usleep(500000);
  }
  close(fd);
  return 0;
}

	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?