Я купил K8055n Velleman Experimental Board и по какой-то причине в каждой программе, которую я запускаю, или если я пытаюсь получить доступ к плате, я получаю следующую ошибку:
Could not open the k8055 (port:0)
Please ensure that the device is correctly connected.
Однако я подозреваю, что мои правила неверны но я сохранил файл правил velleman в /etc/udev/rules.d
, но после перезагрузки ОС зависает. Я не могу понять, что не так с моими правилами velleman.
Я также пытался установить графический интерфейс, но не смог создать файл.
~/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
Я наконец нашел проблему о своей плате.....
В программе C был, если statment, который не был верен и заставил плату перестать работать.
В libk8055.c файле statment, "если ((read_status == PACKET_LEN) && (CurrDev-> data_in[1] == CurrDev-> DevNo))" была ложь....
статический международный ReadK8055Data (пусто) {интервал read_status = 0, я = 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;
}