KETCube
ketCube_uart2WAN.h
Go to the documentation of this file.
1 
47 /* Define to prevent recursive inclusion -------------------------------------*/
48 #ifndef __KETCUBE_UART2WAN_H
49 #define __KETCUBE_UART2WAN_H
50 
51 #include "ketCube_uart.h"
52 
63 
65 
69 typedef enum {
70  KETCUBE_UART2WAN_ERR_NOERR = 0x00, /*<! No error */
71  KETCUBE_UART2WAN_ERR_TIMEOUT = 0x01 /*<! Timeout */
73 
74 
75 #define KETCUBE_UART2WAN_USART_INSTANCE USART2
76 #define KETCUBE_UART2WAN_USART_CHANNEL KETCUBE_UART_CHANNEL_2
77 #define KETCUBE_UART2WAN_USART_SET_CLK_SRC() __HAL_RCC_USART2_CONFIG(RCC_USART2CLKSOURCE_HSI)
78 #define KETCUBE_UART2WAN_USART_IRQ_NUMBER USART2_IRQn
79 #define KETCUBE_UART2WAN_USART_IRQ_PRIORITY 0x1
80 #define KETCUBE_UART2WAN_USART_IRQ_SUBPRIORITY 1
81 #define KETCUBE_UART2WAN_USART_CLK_ENABLE() __USART2_CLK_ENABLE()
82 #define KETCUBE_UART2WAN_USART_CLK_DISABLE() __USART2_CLK_DISABLE()
83 #define KETCUBE_UART2WAN_USART_RX_PIN KETCUBE_GPIO_PIN_2
84 #define KETCUBE_UART2WAN_USART_RX_PIN_AF GPIO_AF4_USART2
85 #define KETCUBE_UART2WAN_USART_RX_PIN_PORT KETCUBE_GPIO_PA
86 #define KETCUBE_UART2WAN_USART_TX_PIN KETCUBE_GPIO_PIN_3
87 #define KETCUBE_UART2WAN_USART_TX_PIN_AF GPIO_AF4_USART2
88 #define KETCUBE_UART2WAN_USART_TX_PIN_PORT KETCUBE_GPIO_PA
89 
90 #define KETCUBE_UART2WAN_USART_BAUDRATE 9600 /*<! default baudrate */
91 #define KETCUBE_UART2WAN_USART_DATA_BITS UART_WORDLENGTH_8B /*<! default is 8. When parity is used, use 9 dta bits -- Oh, how uggly UART implementation */
92 #define KETCUBE_UART2WAN_USART_STOP_BITS UART_STOPBITS_1 /*<! default is one stop bit */
93 #define KETCUBE_UART2WAN_USART_PARITY UART_PARITY_NONE /*<! default is no parity */
94 #define KETCUBE_UART2WAN_USART_HW_FLOW_CONTROL UART_HWCONTROL_NONE /*<! default M-BUS HW control */
95 #define KETCUBE_UART2WAN_USART_INIT_MODE UART_MODE_TX_RX /*<! default USART startup mode for M-BUS */
96 
97 #define KETCUBE_UART2WAN_USART_TIMEOUT 5000 /*<! UART Timeout in ms */
98 
99 
100 /* module interface */
101 
103  msg);
105  uint8_t * len);
109 
114 #endif /* __KETCUBE_UART2WAN_H */
ketCube_uart2WAN_moduleCfg
ketCube_uart2WAN_moduleCfg_t ketCube_uart2WAN_moduleCfg
ketCube_InterModMsg_t
KETCube inter-module message.
Definition: ketCube_cfg.h:116
ketCube_uart2WAN_err_t
ketCube_uart2WAN_err_t
enumerator of M-BUS configuration options addresses
Definition: ketCube_uart2WAN.h:69
ketCube_cfg_ModuleCfgByte_t
KETCube module configuration byte.
Definition: ketCube_cfg.h:147
ketCube_uart2WAN_SleepExit
ketCube_cfg_ModError_t ketCube_uart2WAN_SleepExit(void)
ketCube_uart2WAN_Init
ketCube_cfg_ModError_t ketCube_uart2WAN_Init(ketCube_InterModMsg_t ***msg)
ketCube_uart2WAN_moduleCfg_t
struct ketCube_uart2WAN_moduleCfg_t ketCube_uart2WAN_moduleCfg_t
KETCube module configuration.
ketCube_uart2WAN_ProcessData
ketCube_cfg_ModError_t ketCube_uart2WAN_ProcessData(ketCube_InterModMsg_t *msg)
ketCube_uart2WAN_moduleCfg_t::coreCfg
ketCube_cfg_ModuleCfgByte_t coreCfg
Definition: ketCube_uart2WAN.h:61
ketCube_uart2WAN_ReadData
ketCube_cfg_ModError_t ketCube_uart2WAN_ReadData(uint8_t *buffer, uint8_t *len)
KETCUBE_UART2WAN_ERR_NOERR
@ KETCUBE_UART2WAN_ERR_NOERR
Definition: ketCube_uart2WAN.h:70
KETCUBE_UART2WAN_ERR_TIMEOUT
@ KETCUBE_UART2WAN_ERR_TIMEOUT
Definition: ketCube_uart2WAN.h:71
ketCube_cfg_ModError_t
ketCube_cfg_ModError_t
Error code type.
Definition: ketCube_cfg.h:100
ketCube_uart2WAN_SleepEnter
ketCube_cfg_ModError_t ketCube_uart2WAN_SleepEnter(void)
ketCube_uart2WAN_moduleCfg_t
KETCube module configuration.
Definition: ketCube_uart2WAN.h:60
ketCube_uart.h
This file contains definitions for the UART manager.