MeterLogger
uart_register.h
Go to the documentation of this file.
1 /*
2  * File : uart_register.h
3  * Copyright (C) 2013 - 2016, Espressif Systems
4  *
5  * This program is free software: you can redistribute it and/or modify
6  * it under the terms of version 3 of the GNU General Public License as
7  * published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program. If not, see <http://www.gnu.org/licenses/>.
16  */
17 /*
18  * Copyright (c) 2010 - 2011 Espressif System
19  *
20  */
21 
22 #ifndef UART_REGISTER_H_
23 #define UART_REGISTER_H_
24 
25 #define REG_UART_BASE(i) (0x60000000 + (i)*0xf00)
26 //version value:32'h062000
27 
28 #define UART_FIFO(i) (REG_UART_BASE(i) + 0x0)
29 #define UART_RXFIFO_RD_BYTE 0x000000FF
30 #define UART_RXFIFO_RD_BYTE_S 0
31 
32 #define UART_INT_RAW(i) (REG_UART_BASE(i) + 0x4)
33 #define UART_RXFIFO_TOUT_INT_RAW (BIT(8))
34 #define UART_BRK_DET_INT_RAW (BIT(7))
35 #define UART_CTS_CHG_INT_RAW (BIT(6))
36 #define UART_DSR_CHG_INT_RAW (BIT(5))
37 #define UART_RXFIFO_OVF_INT_RAW (BIT(4))
38 #define UART_FRM_ERR_INT_RAW (BIT(3))
39 #define UART_PARITY_ERR_INT_RAW (BIT(2))
40 #define UART_TXFIFO_EMPTY_INT_RAW (BIT(1))
41 #define UART_RXFIFO_FULL_INT_RAW (BIT(0))
42 
43 #define UART_INT_ST(i) (REG_UART_BASE(i) + 0x8)
44 #define UART_RXFIFO_TOUT_INT_ST (BIT(8))
45 #define UART_BRK_DET_INT_ST (BIT(7))
46 #define UART_CTS_CHG_INT_ST (BIT(6))
47 #define UART_DSR_CHG_INT_ST (BIT(5))
48 #define UART_RXFIFO_OVF_INT_ST (BIT(4))
49 #define UART_FRM_ERR_INT_ST (BIT(3))
50 #define UART_PARITY_ERR_INT_ST (BIT(2))
51 #define UART_TXFIFO_EMPTY_INT_ST (BIT(1))
52 #define UART_RXFIFO_FULL_INT_ST (BIT(0))
53 
54 #define UART_INT_ENA(i) (REG_UART_BASE(i) + 0xC)
55 #define UART_RXFIFO_TOUT_INT_ENA (BIT(8))
56 #define UART_BRK_DET_INT_ENA (BIT(7))
57 #define UART_CTS_CHG_INT_ENA (BIT(6))
58 #define UART_DSR_CHG_INT_ENA (BIT(5))
59 #define UART_RXFIFO_OVF_INT_ENA (BIT(4))
60 #define UART_FRM_ERR_INT_ENA (BIT(3))
61 #define UART_PARITY_ERR_INT_ENA (BIT(2))
62 #define UART_TXFIFO_EMPTY_INT_ENA (BIT(1))
63 #define UART_RXFIFO_FULL_INT_ENA (BIT(0))
64 
65 #define UART_INT_CLR(i) (REG_UART_BASE(i) + 0x10)
66 #define UART_RXFIFO_TOUT_INT_CLR (BIT(8))
67 #define UART_BRK_DET_INT_CLR (BIT(7))
68 #define UART_CTS_CHG_INT_CLR (BIT(6))
69 #define UART_DSR_CHG_INT_CLR (BIT(5))
70 #define UART_RXFIFO_OVF_INT_CLR (BIT(4))
71 #define UART_FRM_ERR_INT_CLR (BIT(3))
72 #define UART_PARITY_ERR_INT_CLR (BIT(2))
73 #define UART_TXFIFO_EMPTY_INT_CLR (BIT(1))
74 #define UART_RXFIFO_FULL_INT_CLR (BIT(0))
75 
76 #define UART_CLKDIV(i) (REG_UART_BASE(i) + 0x14)
77 #define UART_CLKDIV_CNT 0x000FFFFF
78 #define UART_CLKDIV_S 0
79 
80 #define UART_AUTOBAUD(i) (REG_UART_BASE(i) + 0x18)
81 #define UART_GLITCH_FILT 0x000000FF
82 #define UART_GLITCH_FILT_S 8
83 #define UART_AUTOBAUD_EN (BIT(0))
84 
85 #define UART_STATUS(i) (REG_UART_BASE(i) + 0x1C)
86 #define UART_TXD (BIT(31))
87 #define UART_RTSN (BIT(30))
88 #define UART_DTRN (BIT(29))
89 #define UART_TXFIFO_CNT 0x000000FF
90 #define UART_TXFIFO_CNT_S 16
91 #define UART_RXD (BIT(15))
92 #define UART_CTSN (BIT(14))
93 #define UART_DSRN (BIT(13))
94 #define UART_RXFIFO_CNT 0x000000FF
95 #define UART_RXFIFO_CNT_S 0
96 
97 #define UART_CONF0(i) (REG_UART_BASE(i) + 0x20)
98 #define UART_DTR_INV (BIT(24))
99 #define UART_RTS_INV (BIT(23))
100 #define UART_TXD_INV (BIT(22))
101 #define UART_DSR_INV (BIT(21))
102 #define UART_CTS_INV (BIT(20))
103 #define UART_RXD_INV (BIT(19))
104 #define UART_TXFIFO_RST (BIT(18))
105 #define UART_RXFIFO_RST (BIT(17))
106 #define UART_IRDA_EN (BIT(16))
107 #define UART_TX_FLOW_EN (BIT(15))
108 #define UART_LOOPBACK (BIT(14))
109 #define UART_IRDA_RX_INV (BIT(13))
110 #define UART_IRDA_TX_INV (BIT(12))
111 #define UART_IRDA_WCTL (BIT(11))
112 #define UART_IRDA_TX_EN (BIT(10))
113 #define UART_IRDA_DPLX (BIT(9))
114 #define UART_TXD_BRK (BIT(8))
115 #define UART_SW_DTR (BIT(7))
116 #define UART_SW_RTS (BIT(6))
117 #define UART_STOP_BIT_NUM 0x00000003
118 #define UART_STOP_BIT_NUM_S 4
119 #define UART_BIT_NUM 0x00000003
120 #define UART_BIT_NUM_S 2
121 #define UART_PARITY_EN (BIT(1))
122 #define UART_PARITY_EN_M 0x00000001
123 #define UART_PARITY_EN_S 1
124 #define UART_PARITY (BIT(0))
125 #define UART_PARITY_M 0x00000001
126 #define UART_PARITY_S 0
127 
128 #define UART_CONF1(i) (REG_UART_BASE(i) + 0x24)
129 #define UART_RX_TOUT_EN (BIT(31))
130 #define UART_RX_TOUT_THRHD 0x0000007F
131 #define UART_RX_TOUT_THRHD_S 24
132 #define UART_RX_FLOW_EN (BIT(23))
133 #define UART_RX_FLOW_THRHD 0x0000007F
134 #define UART_RX_FLOW_THRHD_S 16
135 #define UART_TXFIFO_EMPTY_THRHD 0x0000007F
136 #define UART_TXFIFO_EMPTY_THRHD_S 8
137 #define UART_RXFIFO_FULL_THRHD 0x0000007F
138 #define UART_RXFIFO_FULL_THRHD_S 0
139 
140 #define UART_LOWPULSE(i) (REG_UART_BASE(i) + 0x28)
141 #define UART_LOWPULSE_MIN_CNT 0x000FFFFF
142 #define UART_LOWPULSE_MIN_CNT_S 0
143 
144 #define UART_HIGHPULSE(i) (REG_UART_BASE(i) + 0x2C)
145 #define UART_HIGHPULSE_MIN_CNT 0x000FFFFF
146 #define UART_HIGHPULSE_MIN_CNT_S 0
147 
148 #define UART_PULSE_NUM(i) (REG_UART_BASE(i) + 0x30)
149 #define UART_PULSE_NUM_CNT 0x0003FF
150 #define UART_PULSE_NUM_CNT_S 0
151 
152 #define UART_DATE(i) (REG_UART_BASE(i) + 0x78)
153 #define UART_ID(i) (REG_UART_BASE(i) + 0x7C)
154 
155 #endif // UART_REGISTER_H_INCLUDED
156