Hallo Leute,
mir ist Heute aufgefallen, das der AVRco-USB-Treiber scheinbar immer das 1.Bulk Paket verschluckt, gibt es dafür einen Grund?
Ich sende über Delphi mit:
Im AvrCo
Wenn ich nun von Delphi das 1. Telegramm sende zeigt das Debugaout auch an $40 Daten erhalten, aber wenn ich nun die Daten auswerte, sind alle auf "0".
Lt. USB-Analayser, werden die Daten aber bereits im 1. Paket korrekt gesendet, ich sehe all Daten des Paketes.
Hat Jemand eine Idee woran das liegen könnte?
Gruß
Thorsten
mir ist Heute aufgefallen, das der AVRco-USB-Treiber scheinbar immer das 1.Bulk Paket verschluckt, gibt es dafür einen Grund?
Ich sende über Delphi mit:
Code
res := usb_bulk_write(SelectedDev.hDev, Ep1TxAddrX, onlStatus, m, 1000);
Im AvrCo
Code
Procedure USB_CheckRxTx;
Var Count, C: byte;
InPointer : tpBuf64;
begin
if USB_RxDataAvail then
Count:= USB_RxCount;
DebugOut('USB Datenanzahl $:'+ ByteToHex( Count ));
// do something with RXData .....
InPointer:= @RxBuf; // ziehe Pointer auf RxBuf
ONL:= TpPVSStatus( InPointer)^;
// Caste den Pointer auf Struktur TpPVSStatus und sichere die Daten
USB_RxSetBuf(@RxBuf); // ACKn ..
endif;
end
Var Count, C: byte;
InPointer : tpBuf64;
begin
if USB_RxDataAvail then
Count:= USB_RxCount;
DebugOut('USB Datenanzahl $:'+ ByteToHex( Count ));
// do something with RXData .....
InPointer:= @RxBuf; // ziehe Pointer auf RxBuf
ONL:= TpPVSStatus( InPointer)^;
// Caste den Pointer auf Struktur TpPVSStatus und sichere die Daten
USB_RxSetBuf(@RxBuf); // ACKn ..
endif;
end
Wenn ich nun von Delphi das 1. Telegramm sende zeigt das Debugaout auch an $40 Daten erhalten, aber wenn ich nun die Daten auswerte, sind alle auf "0".
Lt. USB-Analayser, werden die Daten aber bereits im 1. Paket korrekt gesendet, ich sehe all Daten des Paketes.
Hat Jemand eine Idee woran das liegen könnte?
Gruß
Thorsten