by jrhees » Thu May 08, 2003 6:15 pm
David,
For RAW sequences, the USB-UIRT handles dual-code IR codes a bit differently. Since RAW sequences are longer and take up more memory inside the buffer, it becomes the responsibility of the host to send the two codes separately. The host will need to send the first sequence with repeat count=1 (ideally it should send the whole first sequence along with the command and checksum, etc. in one write command). Then the host should wait for the 'TRANSMITTING' ack from the USB-UIRT. As soon as it sees this ACK, it should send the second code with the repeat count as desired. You should *not* send the second sequence before you get the ack, however, since the ACK confirms that the USB-UIRT has had time to assert flow control to hold off more data from the host. So, the second code will end up waiting inside the USB chip's internal TX buffer until the USB-UIRT is ready to take it.
A complication with this scenario is that the time it takes to transfer the second code's data to the USB-UIRT's microcontroller via the 312500-baud link needs to be considered.
-Jon