Hi I am using Atmel's AT91SAM7S64 microcontroller which includes a USB device port. We have written the firmware for this controller to send a packet of data through USB Endpoint 1. We have made this endpoint as Isochronous In endpiont. Now our problem is we are writing the packet in the Fifo data register of the USB endpoint 1 and then we are also setting the TXPKTRDY flag as 1 as well(This is required by the controller to make it know that the packet is ready to be sent). But when we send an IN token from the host to receive the data we do not get any data at the host. we have checked through the debugger(IAR EWARM) that when we send an IN token from the host the TXPKTRDY flag gets reset to 0 again. Does this mean that the data in the buffer of the endpoint has been sent to the host? One more important thing at the time of debugging the firmware when we write any data into the FIFO data register of desired endpoint by the firmware and when we watch for the current value of that FIFo data register inside the Watch window we do not see the correct data which has been written by us. Also the value of FDR gets changed anytime even though it is not being written. We dont know whether this behaviour is ok or not? Anybody having experience with this Please help. Thanks Faiyaz Pisuwala
- posted
14 years ago