⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uart.h

📁 C语言编写的监控中心终端程序。基于GPRS上传收发数据功能
💻 H
字号:
#ifndef __UART_H_
#define	__UART_H_

#define	UART_SOFTRESET		(1 << 7)

#define	UART_4800		4800
#define	UART_9600		9600
#define	UART_19200		19200
#define	UART_38400		38400
#define	UART_57600		57600
#define	UART_115200		115200

#define	UART_5bits		(0)
#define	UART_6bits		(1)
#define	UART_7bits		(2)
#define	UART_8bits		(3)

#define	UART_ONESTOPBIT		(0 << 2)
#define	UART_TWOSTOPBIT		(1 << 2)

#define	UART_ENABLEPARITY	(1 << 3)
#define	UART_DISABLEPARITY	(0 << 3)

#define	UART_EVENPARITY		(1 << 4)
#define	UART_ODDPARITY		(1 << 4)

#define	UART_VOTESEL0		(0 << 6)
#define	UART_VOTESEL3		(1 << 6)
#define	UART_VOTESEL5		(2 << 6)
#define	UART_VOTESEL7		(3 << 6)

#define	UART_AUTO_RTS		(1 << 5)
#define	UART_AUTO_CTS		(1 << 6)

#define	UART_DATA		(regs0->uart0_data)
#define	UART_LSR		(regs0->uart0_lsr)
#define	UART_MSR		(regs0->uart0_msr)
#define	UART_LCR		(regs0->uart0_lcr)
#define	UART_MCR		(regs0->uart0_mcr)
#define	UART_DIV_L		(regs0->uart0_div_l)
#define	UART_DIV_H		(regs0->uart0_div_h)
#define	UART_ISC		(regs0->uart0_isc)

#define	IsUARTCmdTxFull()	(!(UART_LSR & 0x01))
#define	IsUARTCmdRxEmpty()	(!(UART_LSR & 0x02))
#define	IsUARTCmdParityError()	(UART_LSR & 0x04)

#define	UART0_tx_rdy()		(regs0->uart0_lsr & (1 << 0))
#define	UART0_rx_rdy()		(regs0->uart0_lsr & (1 << 1))
#define	UART0_tx_empty()	(regs0->uart0_lsr & (1 << 6))

#define	UART1_tx_rdy()		(regs0->uart1_lsr & (1 << 0))
#define	UART1_rx_rdy()		(regs0->uart1_lsr & (1 << 1))
#define	UART1_tx_empty()	(regs0->uart1_lsr & (1 << 6))

#define	FIFOS			0xff

#ifdef TEST_UART_BUFFER
EXTERN UINT16			UartSend_rp;
EXTERN UINT16			UartSend_wp;
EXTERN UINT16			UartRecv_rp;
EXTERN UINT16			UartRecv_wp;
#endif

#endif __UART_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -