TMPM4G9  V1.0.0.0
bsp_fuart_io.h
Go to the documentation of this file.
1 
13 /*------------------------------------------------------------------------------*/
14 /* Define to prevent recursive inclusion */
15 /*------------------------------------------------------------------------------*/
16 #ifndef __BSP_FUART_IO_H
17 #define __BSP_FUART_IO_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 /*------------------------------------------------------------------------------*/
24 /* Includes */
25 /*------------------------------------------------------------------------------*/
26 #include <stdarg.h>
27 #include "txz_sample_def.h"
28 
38 /*------------------------------------------------------------------------------*/
39 /* Macro Function */
40 /*------------------------------------------------------------------------------*/
46 /* no define */
47  /* End of group BSP_UTILITIES_Exported_macro */
51 
52 
53 /*------------------------------------------------------------------------------*/
54 /* Configuration */
55 /*------------------------------------------------------------------------------*/
61 /* no define */
62  /* End of group BSP_UTILITIES_Exported_define */
66 
67 
68 /*------------------------------------------------------------------------------*/
69 /* Macro Definition */
70 /*------------------------------------------------------------------------------*/
76 #define FUART_IO_SEND_MAX ((uint32_t)32)
77 #define FUART_IO_RECEIVE_MAX ((uint32_t)32) /* End of group BSP_UTILITIES_Exported_define */
81 
82 /*------------------------------------------------------------------------------*/
83 /* Enumerated Type Definition */
84 /*------------------------------------------------------------------------------*/
90 /*----------------------------------*/
94 /*----------------------------------*/
95 typedef enum {
101 
102 /*----------------------------------*/
106 /*----------------------------------*/
107 typedef enum {
112  /* End of group BSP_UTILITIES_Exported_define */
116 
117 
118 /*------------------------------------------------------------------------------*/
119 /* Structure Definition */
120 /*------------------------------------------------------------------------------*/
125 /*----------------------------------*/
130 /*----------------------------------*/
131 typedef struct
132 {
133  uint32_t id;
135  uint32_t boudrate;
136  IRQn_Type irq_n; /* Interrupt Number */
138 
139 /*----------------------------------*/
144 /*----------------------------------*/
145 typedef struct
146 {
147  volatile FUartIOTxState state;
148  uint32_t wp;
149  uint32_t rp;
150  uint8_t buff[FUART_IO_SEND_MAX];
152 
153 /*----------------------------------*/
158 /*----------------------------------*/
159 typedef struct
160 {
161  volatile FUartIORxState state;
162  volatile uint32_t wp;
163  volatile uint32_t rp;
164  volatile uint32_t length;
165  volatile uint8_t buff[FUART_IO_RECEIVE_MAX];
167 
168 /*----------------------------------*/
172 /*----------------------------------*/
173 typedef struct
174 {
178  uint8_t work[FUART_RX_FIFO_MAX];
180 
181 /*----------------------------------*/
185 /*----------------------------------*/
186 typedef struct
187 {
190 } fuart_io_t;
191  /* End of group BSP_UTILITIES_Exported_typedef */
195 
196 /*------------------------------------------------------------------------------*/
197 /* Functions */
198 /*------------------------------------------------------------------------------*/
203 int put_s(const char *s);
204 int get_s(char *s, uint8_t num);
206 void fuart_io_finalize(void);
207 void fuart_io_irq_handler(void);
209 TXZ_Result fuart_io_receive_restart(void); /* End of group BSP_UTILITIES_Exported_functions */
213  /* End of group BSP_UTILITIES */
217  /* End of group Example */
221 
222 #ifdef __cplusplus
223 }
224 #endif /* __cplusplus */
225 #endif /* __BSP_UART_IO_H */
226 
USB FUART class.
Definition: bsp_fuart_io.h:186
Definition: bsp_fuart_io.h:110
uint32_t id
Definition: bsp_fuart_io.h:133
enum IRQn IRQn_Type
volatile FUartIORxState state
Definition: bsp_fuart_io.h:161
uint32_t rp
Definition: bsp_fuart_io.h:149
Send information.
Definition: bsp_fuart_io.h:145
fuart_io_private_rx_t rx
Definition: bsp_fuart_io.h:177
#define FUART_IO_RECEIVE_MAX
Definition: bsp_fuart_io.h:77
TXZ_Result
Definition: txz_driver_def.h:43
volatile uint32_t rp
Definition: bsp_fuart_io.h:163
Private Member.
Definition: bsp_fuart_io.h:173
Definition: bsp_fuart_io.h:108
int put_s(const char *s)
The character is shown to an output stream.
Definition: bsp_fuart_io.c:166
Definition: bsp_fuart_io.h:96
FUartIOTxState
Send state.
Definition: bsp_fuart_io.h:95
Receive information.
Definition: bsp_fuart_io.h:159
FUART handle structure definition.
Definition: txz_fuart.h:483
fuart_io_private_tx_t tx
Definition: bsp_fuart_io.h:176
TSB_FURT_TypeDef * p_reg
Definition: bsp_fuart_io.h:134
uint32_t boudrate
Definition: bsp_fuart_io.h:135
void fuart_io_finalize(void)
Finalize.
Definition: bsp_fuart_io.c:774
#define FUART_IO_SEND_MAX
Definition: bsp_fuart_io.h:76
fuart_io_private_info_t info
Definition: bsp_fuart_io.h:189
fuart_io_initial_setting_t init
Definition: bsp_fuart_io.h:188
fuart_t fuart
Definition: bsp_fuart_io.h:175
uint32_t wp
Definition: bsp_fuart_io.h:148
Initial setting. User must be set.
Definition: bsp_fuart_io.h:131
volatile FUartIOTxState state
Definition: bsp_fuart_io.h:147
volatile uint32_t wp
Definition: bsp_fuart_io.h:162
Definition: bsp_fuart_io.h:99
IRQn_Type irq_n
Definition: bsp_fuart_io.h:136
int get_s(char *s, uint8_t num)
The string is acquired from an input stream.
Definition: bsp_fuart_io.c:333
Definition: bsp_fuart_io.h:109
void fuart_io_irq_handler(void)
FUART IRQ Handler.
Definition: bsp_fuart_io.c:805
TXZ_Result fuart_io_receive_stop(void)
Receive Stop.
Definition: bsp_fuart_io.c:821
ARM Prime Cell PL011.
Definition: TMPM4G6.h:907
TXZ_Result fuart_io_receive_restart(void)
Receive Restar.
Definition: bsp_fuart_io.c:846
volatile uint32_t length
Definition: bsp_fuart_io.h:164
TXZ_Result fuart_io_initialize(fuart_io_initial_setting_t *p_param)
Initialize.
Definition: bsp_fuart_io.c:686
Definition: bsp_fuart_io.h:98
FUartIORxState
Receive state.
Definition: bsp_fuart_io.h:107
Definition: bsp_fuart_io.h:97
#define FUART_RX_FIFO_MAX
Definition: txz_fuart.h:52