1. This forum section is a read-only archive which contains old newsgroup posts. If you wish to post a query, please do so in one of our main forum sections (here). This way you will get a faster, better response from the members on Motherboard Point.

How to transport UART format data to PC?

Discussion in 'Embedded' started by flashlib, Aug 2, 2007.

  1. flashlib

    flashlib Guest

    Hi All,

    I have an image sensor module which has an UART output format. Now, I
    want to get it work and transport the image data to PC for testing!
    What need I do to get it? The sensor works at least 460KBaud.

    I need the fast way to get it work, any suggestion would be great
    appreciated!

    Thanks!
    Jacky
     
    flashlib, Aug 2, 2007
    #1
    1. Advertisements

  2. flashlib

    Donald Guest

    Doh,

    How about something to work with here.

    What image sensor module ?
    What is the format of the UART data ?

    460KBaud is not a standard PC baud rate, external hardware may be necessary.


    donald
     
    Donald, Aug 2, 2007
    #2
    1. Advertisements

  3. flashlib

    flashlib Guest

    It's a image sample device.
    I mean the device output the image data through UART.
    So need I make a board by USB + DSP/FPGA + image device? If so, I have
    to develop the firmware, driver and my application. But I have no
    exerience in firmware and driver development.

    Any suggestions?
     
    flashlib, Aug 2, 2007
    #3
  4. Find an USB-serial converter that supports the baudrate needed.

    Leo Havmøller.
     
    Leo Havmøller, Aug 2, 2007
    #4
  5. flashlib

    flashlib Guest

    Thanks Leo!
    USB-serial converter and then program it like a real COM port?
     
    flashlib, Aug 2, 2007
    #5
  6. flashlib

    flashlib Guest

    I find a converter of silicon's CP2101. It can support
    460800 921600bps.
    Is it OK?
     
    flashlib, Aug 2, 2007
    #6
  7. flashlib

    Chris Hills Guest

    I wouldn't do that. Most are less than 100% reliable and usually only
    support the standard baud rates.

    Use a PC with a serial port.
     
    Chris Hills, Aug 2, 2007
    #7
  8. If by USB-serial converter one means a packaged module rather than a chip
    then higher baud rates can be problematical because 232 was never inteded
    for these speeds. However, if one uses chips and directly interface at
    5v/3v3 then good results are definitely possible.
    My own experience is that they can work well and that they generally support
    higher baudrates - signal integrity, as describe above, being the main
    problem.
    Since the OP asked for at least 460KBaud (though I think they meant
    460kBaud) and PC serial port go to 115 there would be a problem.
     
    Peter Dickerson, Aug 2, 2007
    #8
  9. Hook it up to a UART on the PC.
    A serial port.
    Use a serial port that runs at 460K baud.
     
    Grant Edwards, Aug 2, 2007
    #9
  10. Yes. It is a real COM port.
     
    Grant Edwards, Aug 2, 2007
    #10
  11. There are RS-232 transceiver chips that are speced to 921K, if
    you buy an RS-232 interface that's speced to work at 460K then
    it should be OK.
    RS-232 works fine at 460K and 921K if you use the right
    transceivers.
    There are tons of PCI boards with serial ports that run at
    speeds up to 921K.
     
    Grant Edwards, Aug 2, 2007
    #11
  12. flashlib

    flashlib Guest

    Thanks all!

    So I need to find a serial port that support to 460KBaud or highter!
     
    flashlib, Aug 3, 2007
    #12
  13. flashlib

    slebetman Guest

    First some clarification. COM port is the name Microsoft calls the
    serial port at the back of an IBM PC. Apple used to call them Modem
    port on older Macs and most other vendors simply call them Serial
    Ports. All these serial ports have in common is that they use a UART
    chip to convert the data from the CPU to the format transmitted on the
    wire. So your "UART" output simply means COM port output. But be
    careful, since they specify "UART" output instead of "RS232" output it
    most probably means that your device signal level is 0-5V or 0-3.3V
    instead of the PC COM port's +/-12V. So connecting them directly may
    damage your device. Read the datasheet.

    Which means that you should ignore the previous advice of "use a PC
    with serial ports". Standard serial ports on PCs only go up to 115k.
    Instead I'd either get a USB to RS232 converter that supports high
    baud rates or a PCI serial card that supports high baud rates.

    For USB to serial look for ones using FTDI chipsets, preferably the
    newer FT232R variant. Forget the horror stories, FTDI chips are very
    reliable and only has problems on Mac OSX (some features not
    supported). I remember Dontronics selling embedded versions that
    directly output 0-5V or 0-3.3V instead of RS232. However, you may need
    to write some VB code to get the high baud rates because although
    these devices can achieve 1Mbps Windows COM port API can only
    configure up to 115kbps. But they have nice sample code on their
    website on how to do it (heck, it's a zipped project directory, just
    modify their code). I believe their newer FT232R chip can be
    configured to remap baud rates so you can make 460k on the wire look
    like 115200 on windows.

    For PCI serial most boards for the industrial market can go up to
    1Mbps but your common PCI serial port card can only go up to 115k.
    Look at Moxa for some nice boards (tend to be expensive). Again, due
    to Windows API limitation you may need to write your own code to
    configure the board to go beyond 115k.

    Again the word of warning. Since your device vendor state UART output
    as opposed to RS232 output you should carefully read the datasheet to
    see if you need a transceiver/voltage converter before wiring it up to
    a COM port.
     
    slebetman, Aug 3, 2007
    #13
  14. flashlib

    flashlib Guest

    Thanks for your wonderful and detail explanation! It's quite import
    for me:)
     
    flashlib, Aug 6, 2007
    #14
  15. There may be "RS-232 compatible" transceivers, but I very much doubt
    that you could run those speeds within the minimum voltage swing,
    maximum slew rate and current limit (with any practical load
    capacitance) of the RS-232 standard.

    Since the OP is talking about an image sensor, this would indicate
    that there is some distance between the sensor and the PC, so I would
    suggest using a more appropriate interface, such as RS-422/485. If the
    image sensor delivers asynchronous characters with TTL levels, just
    connect an RS-422 (or RS-485) transmitter chip to it and use any
    RS-422/485 PCI interface card on the PC (most of which supports the
    460 kbit/s speed). Use a twisted pair between the image sensor and PCI
    card to cancel out most external noise.

    Paul
     
    Paul Keinanen, Aug 6, 2007
    #15
  16. flashlib

    flashlib Guest

    Thanks Paul, What else should I do if I use RS-422 PCI interface to
    get the image?
     
    flashlib, Aug 7, 2007
    #16
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.