📄 uart.h
字号:
/***********************************************
name: uart.h
create by skier 2005.06.04
for LPG2104 UART driver
*********************************************/
#ifndef UART_H
#define UART_H
/*
* if DEBUG_MODEM_DATA defined
*Byte receive from Modem or Send to Modem will
* print to user Com
*/
//#define DEBUG_MODEM_DATA
#define UART0_IN_DATA (((U0LSR | 0x00) & 0x01) == 0x01)
#define UART0_DATA U0RBR
#define UART1_IN_DATA (((U1LSR | 0x00) & 0x01) == 0x01)
#define UART1_DATA U1RBR
#define UART1_RATE 115200
#define U1LCR_VALUE ((Fcclk/4) /16)/UART1_RATE
#define UART0_RATE 115200
#define U0LCR_VALUE ((Fcclk/4) /16)/UART0_RATE
/*
* MAX byte of UART0 interrupt buffered.
*UART0 in this is used to print DEBUG information ,
*UART0 is also used to connect to user application
*equipment. such as POS.
*/
#define MAX_UART0_BUFFER 512
/*
* MAX byte of UART1 interrupt buffered.
* UART1 in this is used to connect to a GPRS Modem.
* such as HUAWEI GTM900B, MC35I etc.
*/
#define MAX_UART1_BUFFER 1024
/*
* MAX byte will be read one time by main() function.
* for reduce RAM we define it to 512
*/
#define MAX_READ_LEN 1024
#define UART_NO_DATA -1
#define DATA_READ_OK 0
#define SEND_AT(str) sendString_2_modem(str)
#define GET_AT(p) Uart1_getByte(p)
#define GET_USER_DATA(p) Uart0_getByte(p)
#define DEBUG 0
#if DEBUG
#define DEBUG_FUNCTION(str) debug_sys_time(); \
sendString_2_user(str);
#define DEBUG_EVENT(str) { \
debug_sys_time(); \
sendString_2_user(str);\
}
#define DEBUG_ERR(str) { \
debug_sys_time(); \
sendString_2_user("ERR:");\
sendString_2_user(str);\
}
#else
#define DEBUG_FUNCTION(str)
#define DEBUG_EVENT(str)
#define DEBUG_ERR(str)
#endif
#define DEBUG_CHAR(char) //sendByte_2_user(char)
#define DEBUG_CHARNECESSARY(ch) sendByte_2_user(ch)
#define DEBUG_NECESSARY(s) sendString_2_user(s)
#ifndef UART_C
extern void UART0_Ini(void);
extern void UART1_Ini(void);
extern void sendByte_2_user(u8_t data);
extern void sendByte_2_modem(u8_t data);
extern void sendString_2_user(char *str);
extern void sendString_2_modem(char *str);
extern char UART0_ReceiveChar(void);
extern u32_t get_user_data(u8_t *ch);
extern u32_t get_modem_data(u8_t *ch);
extern u16_t get_modem_datalen(void);
extern u16_t get_user_datalen(void);
extern u32_t writeDate_2_modem(void *device, u8_t *data, u32_t len);
extern u32_t writeDate_2_user(u8_t *data, u32_t len);
extern void sio_read_abort(void *);
//extern INT16 Uart1_getByte(u8_t *ch);
#else
void UART0_Ini(void);
void UART1_Ini(void);
void sendByte_2_user(u8_t data);
void sendByte_2_modem(u8_t data);
void sendString_2_user(char *str);
void sendString_2_modem(char *str);
char UART0_ReceiveChar(void);
INT16 Uart0_getByte(u8_t *ch);
INT16 Uart1_getByte(u8_t *ch);
u32_t get_modem_data(u8_t *buf);
u32_t get_user_data(u8_t *buf);
u16_t get_modem_datalen(void);
u16_t get_user_datalen(void);
u32_t writeDate_2_modem(void *device, u8_t *data, u32_t len);
u32_t writeDate_2_user(u8_t *data, u32_t len);
void sio_read_abort(void *);
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -