![]() Lab Home page |
Department of Microelectronic Systems, Faculty of Electronics, Telecommunications and Informatics, Gdansk University of Technology |
![]()
|
Task:
Design RS-232 transmitter and receiver for the following transmission
parameters: 8 data bits, no parity bits, 1 stop bit, transmission speed
9600bps, no flow control.
Connect the modules of the transmitter and the receiver to obtain
adding constant value of 20(hex) to received data, after that the result
must be immediately transmitted by the transmitter.
Inputs:
clk_i - clock 50MHz,
rst_i - asynchronous reset,
RXD_i - data input,
TXD_o - data output.
Write a testbench.
Before implementing the design, a simulation must be run using the testbench.
To test the design, connect port COM1 of PC and Spartan-3 board, run Hyperterminal
and set the transmission parameters the same as above.
Pressing a key on the PC's keyboard should result in displaying
the character of increased ASCII code. Adding 20h changes lowercase letters to
the uppercase.
Transmitting and receiving signals in RS-232
RS-232 provides serial transmission and reception of data, using
two lines, separate for receiving and transmitting.
High level on the line means no transmission.
Start of the transmission is signalized by start bit (logical "0"
for the period of 1/transmission_speed, here 1/9600[sec])).
All the remaining data is also transmitted with the same period.
After start bit, data bits are transmitted, starting from LSB bit
(D0-D7). Then the optional parity bit can be sent, calculated as
XOR on all data bits (D0-D7).
End of transmission is indicated by 1-2 stop bits. In Fig 1. transmission
of 01010011 is presented.
Fig. 1 Example of transmitting 01010011 using RS-232