This weekend, due to the beautiful weather (about 20oC, lovely - Ed), I begrudgingly continued with the assembly of the prototype 2 x 13 Way Mixed Signal Dilettante Board. It was time to attach FTDI's RS232 breakout board to the RS232 Serial Breakout Area, which can be seen highlighted in the top part of the figure above. A few RS232 compatible modules, which are, from left to right, Bluetooth transceivers, 2.4GHz RF transceivers, as well as the FTDI RS232RL breakout board can also be seen in the bottom half of the figure.
This area has been named the RS232 Serial Breakout Area because, as its name suggests, it is suitable for hosting our Dilettante modules that have a serial port connection. The area is pin-compatible with FTDI's RS232 breakout board, but only has two of the signals connected directly to the FPGA, on the DE0-Nano, via the 2 x 13 way header. These are the RS232 RXD and TXD signals. The other signals can be connected to the 2 x 13 way header indirectly by using jumper wires connected to the Dilettante prototyping area.
If anyone can remember the fiasco we had with the serial connections on the USB to serial converters that contain Silicon Lab's CP2102 devices (see Tutorial 1, Part 1 - Ed). In that tutorial we discovered (Didn't you read the datasheet then? - Ed) that in order to connect our UART to the CP2102 we needed to connect TX_O to TXD and RX-I to RXD. Well believe it or not when connecting to the RS232RL breakout board RX_I connects to TXD and TX_O connects to RXD, the complete opposite!
This confusion has led to some rework being carried out on the prototype board, as we have the serial connections configured to interface with the CP2102-based converters and not boards containing the RS232RL. Although this would not normally be of concern with an FPGA, as most of the FPGA's pins are bi-directional, in this case it is as we have connected the RX_I serial signal to one of the three input only signals on the 2 x 13 way headers. During the board's design phase a decision was taken to preserve as many bi-directional FPGA pins as possible for connection to the prototyping area. Anyway, the error has been noted for changing on the production boards. In the meantime the error has been fixed by cutting tracks and using jumper wires,. All's well that ends well.
The FTDI RS232RL breakout board, along with a simulation waveform of the UART IP core in the FPGA can, be seen in the figure above. In this figure note that the 1 x 4 way header has been removed from the RS232RL breakout board to avoid it interfering with the Arduino shields, when they are mounted above the RS232RL breakout area. Once this part of the assembly phase passes the RS232 tests we will move on to mounting the mini solderless breadboard onto the prototyping area, probably next weekend, if there are no more barbecues!
Finally, when a 2 x 13 way IDC cable is connected to the DE0-Nano Development kit, the supplied spacers seem to by a bit short. The figure above, left-hand side, shows the original 10 mm spacers replaced with 20 mm ones, which should prove to be quite handy when mounting the DE0-Nano to a wheeled robot chassis. We have been looking at robot chassis recently and have opted to purchase an experimental one, top right in the image above, before moving onto the more substantial 6x6 wheel kits manufactured by MINDS-i, in the bottom right of the same image. We'll see.
That's all for now. If the weather remains nice I might need to stage a barbecue boycott!