wb_rs232
Simple RS232 module
Write and reads data with a two wire serial (RS232) connection.
Contents:
1. Memory map summary
2. HDL symbol
3. Register description
3.1. send data
3.2. read data
3.3. reading done
3.4. status
3.5. control
H/W Address
|
Type
|
Name
|
VHDL/Verilog prefix
|
C prefix
|
0x0
|
REG
|
send data
|
wbrs232_send
|
SEND
|
0x1
|
REG
|
read data
|
wbrs232_read
|
READ
|
0x2
|
REG
|
reading done
|
wbrs232_done
|
DONE
|
0x3
|
REG
|
status
|
wbrs232_status
|
STATUS
|
0x4
|
REG
|
control
|
wbrs232_control
|
CONTROL
|
→
|
rst_n_i
|
|
send data:
|
|
→
|
wb_clk_i
|
|
wbrs232_send_data_o[7:0]
|
⇒
|
⇒
|
wb_addr_i[2:0]
|
|
wbrs232_send_data_wr_o
|
→
|
⇒
|
wb_data_i[31:0]
|
|
|
|
⇐
|
wb_data_o[31:0]
|
|
read data:
|
|
→
|
wb_cyc_i
|
|
wbrs232_read_data_i[7:0]
|
⇐
|
⇒
|
wb_sel_i[3:0]
|
|
|
|
→
|
wb_stb_i
|
|
reading done:
|
|
→
|
wb_we_i
|
|
wbrs232_done_done_o[31:0]
|
⇒
|
←
|
wb_ack_o
|
|
wbrs232_done_done_wr_o
|
→
|
|
|
|
|
|
|
|
|
status:
|
|
|
|
|
wbrs232_status_allowed_i
|
←
|
|
|
|
wbrs232_status_available_i
|
←
|
|
|
|
|
|
|
|
|
control:
|
|
|
|
|
wbrs232_control_baud_o[2:0]
|
⇒
|
HW prefix:
|
wbrs232_send
|
HW address:
|
0x0
|
C prefix:
|
SEND
|
C offset:
|
0x0
|
send data
31
|
30
|
29
|
28
|
27
|
26
|
25
|
24
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
23
|
22
|
21
|
20
|
19
|
18
|
17
|
16
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
DATA[7:0]
|
|
|
|
|
|
|
|
-
DATA
[write-only]: senddata
Sends data over rs232 connection
HW prefix:
|
wbrs232_read
|
HW address:
|
0x1
|
C prefix:
|
READ
|
C offset:
|
0x4
|
read data
31
|
30
|
29
|
28
|
27
|
26
|
25
|
24
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
23
|
22
|
21
|
20
|
19
|
18
|
17
|
16
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
DATA[7:0]
|
|
|
|
|
|
|
|
-
DATA
[read-only]: readdata
HW prefix:
|
wbrs232_done
|
HW address:
|
0x2
|
C prefix:
|
DONE
|
C offset:
|
0x8
|
reading done
31
|
30
|
29
|
28
|
27
|
26
|
25
|
24
|
DONE[31:24]
|
|
|
|
|
|
|
|
23
|
22
|
21
|
20
|
19
|
18
|
17
|
16
|
DONE[23:16]
|
|
|
|
|
|
|
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
DONE[15:8]
|
|
|
|
|
|
|
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
DONE[7:0]
|
|
|
|
|
|
|
|
-
DONE
[write-only]: done
Data reading done
HW prefix:
|
wbrs232_status
|
HW address:
|
0x3
|
C prefix:
|
STATUS
|
C offset:
|
0xc
|
Status of the rs232 connection
31
|
30
|
29
|
28
|
27
|
26
|
25
|
24
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
23
|
22
|
21
|
20
|
19
|
18
|
17
|
16
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
-
|
-
|
-
|
-
|
-
|
-
|
AVAILABLE
|
ALLOWED
|
-
ALLOWED
[read-only]: sending allowed
Allowed to send data
-
AVAILABLE
[read-only]: data available
Serial data available
HW prefix:
|
wbrs232_control
|
HW address:
|
0x4
|
C prefix:
|
CONTROL
|
C offset:
|
0x10
|
Control register for the rs232
31
|
30
|
29
|
28
|
27
|
26
|
25
|
24
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
23
|
22
|
21
|
20
|
19
|
18
|
17
|
16
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
15
|
14
|
13
|
12
|
11
|
10
|
9
|
8
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
-
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
0
|
-
|
-
|
-
|
-
|
-
|
BAUD[2:0]
|
|
|
-
BAUD
[read/write]: baudrate
Baudrate:0=clk,1=115k2,2=57k6,3=38k4,4=19k2,5=9600,6=4800,7=1200