http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232R.pdf
128 byte receive buffer and 256 byte transmit
buffer utilising buffer smoothing technology to
allow for high data throughput.
FIFO RX Buffer (128 bytes).
Data sent from the USB host controller to the UART via the USB data OUT
endpoint is stored in the FIFO RX (receive) buffer. Data is removed from the buffer to the UART transmit
register under control of the UART FIFO controller. (Rx relative to the USB interface).
FIFO TX Buffer (256 bytes).
Data from the UART receive register is stored in the TX buffer.
The USB host controller removes data from the FIFO TX Buffer by sending a USB request for data from the device
data IN endpoint. (Tx relative to the USB interface).
UART FIFO Controller.
The UART FIFO controller handles the
transfer of data between the FIFO RX and
TX buffers and the UART transmit and receive registers.
..... so for receiving DMX there is no need for a microcontroller
http://shop.dmxking.com/ultraDMX-Pro_p_17.html
soooo ... NOPE NOPE and NOPE
Great! Let us know when it’s all working.
--
The Open Lighting Group: open-l...@googlegroups.com, #openlighting (irc.freenode.org)
To unsubscribe from this group, send email to open-lightin...@googlegroups.com
For more options, visit https://groups.google.com/groups/opt_out?hl=en
|
||||||
| { | ||||||
| struct dmx_usb_device *dev; | ||||||
| int retval = 0; | ||||||
| int bytes_read; | ||||||
|
|
||||||
| dev = (struct dmx_usb_device *)file->private_data; | ||||||
|
|
||||||
| dbg("%s - minor %d, count = %Zd", __FUNCTION__, dev->minor, count); | ||||||
|
|
||||||
| /* lock this object */ | ||||||
| down (&dev->sem); | ||||||
|
|
||||||
| /* verify that the device wasn't unplugged */ | ||||||
| if (!dev->present) { | ||||||
| up (&dev->sem); | ||||||
| return -ENODEV; | ||||||
| } | ||||||
|
|
||||||
| /* do a blocking bulk read to get data from the device */ | ||||||
| retval = usb_bulk_msg (dev->udev, | ||||||
| usb_rcvbulkpipe (dev->udev, | ||||||
| dev->bulk_in_endpointAddr), | ||||||
| dev->bulk_in_buffer, | ||||||
| min (dev->bulk_in_size, count), | ||||||
| &bytes_read, HZ*10); | ||||||
|
|
||||||
| /* if the read was successful, copy the data to userspace */ | ||||||
| if (!retval) { | ||||||
| if (copy_to_user (buffer, dev->bulk_in_buffer+2, bytes_read-2)) | ||||||
| retval = -EFAULT; | ||||||
| else | ||||||
| retval = bytes_read; | ||||||
| } | ||||||
|
|
||||||
| /* unlock the device */ | ||||||
| up (&dev->sem); | ||||||
| return retval; | ||||||
| } #endif |
||||||
<snip>
..... so for receiving DMX there is no need for a microcontroller
Like Jason said... "Great! Let us know when it’s all working."