将 K8055n 实验板连接到 Ubuntu

将 K8055n 实验板连接到 Ubuntu

我购买了 K8055n Velleman 实验板,出于某种原因,我运行每个程序或尝试访问该板时都会出现以下错误:

Could not open the k8055 (port:0)
Please ensure that the device is correctly connected.

不过,我怀疑我的规则不正确,但我确实保存了 velleman 规则文件,/etc/udev/rules.d但重启后操作系统冻结了。我无法弄清楚我的 velleman 规则出了什么问题。

我也尝试安装 GUI,但无法创建文件。

~/k8055$ cd k8055gui
~/k8055/k8055gui$ cd src
~/k8055/k8055gui/src$ make g++ wx-config --cxxflags -c MyApp.cpp -o MyApp.o
/bin/sh: 1: wx-config: not found
In file included from MyApp.cpp:1:0: MyApp.h:4:19: fatal error: wx/wx.h: No such file or directory
compilation terminated.
make: *** [MyApp.o] Error 1

答案1

我终于在我的主板上发现了这个问题......

C 程序中有一个 if 语句不成立,导致电路板故障。

在 libk8055.c 文件中,语句“if ((read_status == PACKET_LEN) && (CurrDev->data_in[1] == CurrDev->DevNo ))”为错误....

静态 int ReadK8055Data(void) { int read_status = 0,i = 0;

if (CurrDev->DevNo == 0) return K8055_ERROR;

for(i=0; i < 3; i++)
    {
    read_status = usb_interrupt_read(CurrDev->device_handle, USB_INP_EP, (char *)CurrDev->data_in, PACKET_LEN, USB_TIMEOUT);
   if ((read_status == PACKET_LEN) && (CurrDev->data_in[1] == 11 )) //not sure why it must be 11
return 0;

    if (DEBUG)
        fprintf(stderr, "Read retry\n");
    }
return K8055_ERROR;

}

相关内容