douweng1935 2018-10-03 15:13
浏览 233

golang中的usb2can连接

I am trying to set up a car pc that reads canbus data output. I want the computer to automatically set up usb2serial device.

My problem is the command that comes from SocketCAN: sudo ip link set up can0 type can bitrate 125000

I can't get the connection to work properly. when the command is executed in a terminal it shud say link successful but when the go code runs it only return can't find script fork/exec

func Can_connect() error {
    var err error

    if helpers.Can_bitrate == 0 {
        log.Println("can bitrate = 0")
        err = errors.New("can bitrate = 0")
        return err
    }

    //sudo ip link set up can0 type can bitrate 125000
    obd_connect := exec.Command("bash", "-c", "sudo ip link set up can0 type can bitrate "+string(helpers.Can_bitrate))
    obd_connect.Run()

    obd_output, err := obd_connect.Output()
    if err != nil {
        log.Println("Error reading output from connecting to obd", err)
        return err
    }

    i, err := strconv.Atoi(string(obd_output[:len(obd_output)-1]))
    if err != nil {
        log.Println(err)
    }

    if i == 0 {
        log.Println("successful confection to obd")
    } else {
        log.Println("unable to setup obd")
    }

    return nil
}
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥50 永磁型步进电机PID算法
    • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
    • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
    • ¥15 如何处理复杂数据表格的除法运算
    • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
    • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
    • ¥200 uniapp长期运行卡死问题解决
    • ¥15 latex怎么处理论文引理引用参考文献
    • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
    • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?