Using the UART on Papilio One


Guest Jan

Recommended Posts

Hi,

can anyone post some info about how to use the FTDI chip on the Papilio One board?

The user constaints file shows me RX and TX. How do I use them? What's the timing?

How do I tell her that there's a bit in TX that I want to get transmitted?

Hmmm, please give a brief tutorial on that, the ASCIItable source code would just be fine.

Thank you!

Link to comment
Share on other sites

Hello Jan,

The easiest way to use the FTDI chip is with a sketch that runs on the AVR8 soft processor. There is a UART module built into the AVR8 that takes care of all the timing and start/stop bits needed for UART communications. You can download the latest Papilio version of the Arduino IDE from the download section.

The ASCIITable example is under the Examples menu inside the Arduino IDE.

Sending serial data is as easy as this:

void setup() 
{
  Serial.begin(9600);

  Serial.println("Print your text!");
}

void loop()
{
}

If you want to use the FTDI chip from your own VHDL code then it gets more complicated. You need to provide UART timing and start and stop bits. The easiest way to do this is to probably find an existing VHDL or Verilog module over at Opencores.com. You could also look at the source code for the UART module in the AVR8 processor.

Jack.

Link to comment
Share on other sites

If you want to use the FTDI chip from your own VHDL code then it gets more complicated. You need to provide UART timing and start and stop bits. The easiest way to do this is to probably find an existing VHDL or Verilog module over at Opencores.com. You could also look at the source code for the UART module in the AVR8 processor.

Okay, the FTDI chip seems to be very powerful so I thought that it would just take care of timing, framing, parity, etc. I will need some quite large cores for bioinformatics so I guess there won't be any space left for an AVR8 core.

Thank you for your answer! *close*

Link to comment
Share on other sites

I agree, if you are using large VHDL or Verilog cores then you will not want to implement the AVR8 core for serial communications.

You are going to want a small UART core. You can get one off Opencores or you can use this one from Xilinx.The advantage of the Xilinx core is that it is going to be the smallest and fastest solution you can find.

I spent some time this weekend putting together example code for the Xilinx UART core. I was able to get the Xilinx UART core working at 3Mb/s and I will try to record a tutorial this morning and publish the example code.

Jack.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.