From 2adfbd69b37ff56f429fb1898ebaba9988166acb Mon Sep 17 00:00:00 2001 From: Xiao Pan Date: Sat, 26 Apr 2025 21:32:33 -0700 Subject: cli option to specify can device name, useful for testing to specify vcan0 --- mycan.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'mycan.c') diff --git a/mycan.c b/mycan.c index 453a6da..355dd24 100644 --- a/mycan.c +++ b/mycan.c @@ -13,6 +13,8 @@ sudo ip link set dev vcan0 type vcan sudo ip link set dev vcan0 up cansend vcan0 630#02.00.02.00.02.00.02.00 cansend vcan0 680#02.00.02.00.02.00.02.00 +# if cell temperature is signed (can be negative), 00.FF sends -256 +cansend vcan0 680#00.FF.02.00.02.00.02.00 */ #include @@ -35,7 +37,7 @@ static uint64_t u64_from_can_msg(const uint8_t m[8]) { | ((uint64_t)m[3] << 24) | ((uint64_t)m[2] << 16) | ((uint64_t)m[1] << 8) | ((uint64_t)m[0] << 0); } -int main(void) +int main(int argc, char **argv) { int ret; int s, nbytes; @@ -63,8 +65,10 @@ int main(void) } //2.Specify can0 device - strcpy(ifr.ifr_name, "can0"); - //strcpy(ifr.ifr_name, "vcan0"); + if(argc>1) + strcpy(ifr.ifr_name, argv[1]); + else + strcpy(ifr.ifr_name, "can0"); ret = ioctl(s, SIOCGIFINDEX, &ifr); if (ret < 0) { perror("ioctl failed"); -- cgit v1.2.3-70-g09d2