LPCUSB na zestawie Kamami

Witam, próbuję uruchomić USB na Armie LPC2148. Mam zestaw ZL9ARM i środowisko Exclipse z gcc-arm-elf. Dopiero zaczynam z C i z Arm. Zestaw troszkę zmieniłem aby dostosować go do roziązańz wzorcowego dla LPCUSB modułu Quickstart Board (zmiana na liniach P026 i P031). Z możliwych urządzeń ( hid, audio, mass storage i custom) wybrałem custom. Po załadowaniu custom.hex dostaję taki wynik z programu testlibusb-win.exe:

DLL version: 0.1.10.1 > Driver version: 0.1.10.1 > > bus/device idVendor/idProduct > bus-0/\\.\libusb0-0000--0xffff-0x0004 FFFF/0004 > - Manufacturer : LPCUSB > - Product : MemoryAccess > - Serial Number: DEADC0DE > wTotalLength: 32 > bNumInterfaces: 1 > bConfigurationValue: 1 > iConfiguration: 0 > bmAttributes: 80h > MaxPower: 50 > bInterfaceNumber: 0 > bAlternateSetting: 0 > bNumEndpoints: 2 > bInterfaceClass: 255 > bInterfaceSubClass: 0 > bInterfaceProtocol: 0 > iInterface: 0 > bEndpointAddress: 82h > bmAttributes: 02h > wMaxPacketSize: 64 > bInterval: 0 > bRefresh: 0 > bSynchAddress: 0 > bEndpointAddress: 05h > bmAttributes: 02h > wMaxPacketSize: 64 > bInterval: 0 > bRefresh: 0

Z programu usb_debug_io.exe dostaję odpowiedź:

found 3 busses > using blksize=8 > ep_in 0x5 ep_out 0x82 > _read: No error

No i właśnie po "No error" powinien podać wynik działania funkcji usb_bulk_read() w tym ilość odebranych bajtów. I nic (: Na pececie nie widać żeby było coś więcej niż inicjalizacja interfejsu.

Po zdefiniowaniu w main_custom.c stałej DEBUG uaktywnia się funkcja DBG wypluwająca komunikaty po RS232. Oto co dostaję: ( swoją drogą Hyperterminal nie chce tego odbierać - odbieram na terminal v1.9 by Br@y++ - świetny)

Initialising USB stack > Registered handler for device status > Registered handler for EP 0x0 > Registered handler for EP 0x80 > Registered handler for EP 0x82 > Registered handler for EP 0x5 > Starting USB communication > USBHwConnect(TRUE) > > ! > !S6D100 > !S5S6D100S6D200S6D300S6D303S6D200S6D600Desc 600 not found! > _HandleRequest1 failed > STALL on [ 80 06 00 06 00 00 0a 00] stat=5 > S6D300S6D302S6D300S6D302

Część zaczynająca się do wykrzyknika pojawia się po podpięciu kabla usb. Czy ktoś mógłby mi powiedzieć na czym to się wysypuje. Sypie się w module usbcontrol.c

if ((Setup.wLength == 0) || (REQTYPE_GET_DIR(Setup.bmRequestType) == REQTYPE_DIR_TO_HOST)) { // ask installed handler to process request if (!_HandleRequest(&Setup, &iLen, &pbData)) { DBG("_HandleRequest1 failed\n"); StallControlPipe(bEPStat); return;

Dodam, że pozostałe urządzenia czyli hid czy audio też się nie uruchamiają. Pytanie czy coś z tym kodem nie tak czy może jeszcze trzeba coś przerobić na płytce.

Będę wdzięczny za pomoc.

Reply to
Mariusz Dybiec
Loading thread data ...

Mariusz Dybiec napisał(a):

Miało być: od wykrzyknika

Reply to
Mariusz Dybiec

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.