📄 uart.h
字号:
#ifndef UART_H
#define UART_H
#include "typedef.h"
/*********************************************
define UART registers
*********************************************/
#define UART0_BASE 0X10004000
#define UART0_THR (UART0_BASE+0X00)//Transmitter FIFO R 传输器FIFO地址 8(地址分时复用)
#define UART0_RBR (UART0_BASE+0X00)//Receiver FIFO R 接收器FIFO地址 8(地址分时复用)
#define UART0_DLL (UART0_BASE+0X00)//DivisorLatcheByte1_r R/W 波特率设置低八位寄存器 8
#define UART0_DLH (UART0_BASE+0X04)//DivisorLatcheByte2_r R/W 波特率设置高八位寄存器 8
#define UART0_IER (UART0_BASE+0X04)//interruptEnableRegister_r R/W 8
#define UART0_IIR (UART0_BASE+0X08)//InterruptIdentificationRegister_r R 中断识别寄存器 8
#define UART0_FCR (UART0_BASE+0X08)//FIFOControlRegister_r W 8
#define UART0_LCR (UART0_BASE+0X0c)//LineControlRegister_r R/W 传输数据控制寄存器 8
#define UART0_MCR (UART0_BASE+0X10)//ModemControlRegister_r W 8
#define UART0_LSR (UART0_BASE+0X14)//LineStatusRegister_r R 传输数据状态寄存器 8
#define UART0_MSR (UART0_BASE+0X18)//ModemStatusRegister_r R 8
#define UART1_BASE 0X10005000
#define UART1_THR (UART1_BASE+0X00)
#define UART1_RBR (UART1_BASE+0X00)
#define UART1_DLL (UART1_BASE+0X00)
#define UART1_DLH (UART1_BASE+0X04)
#define UART1_IER (UART1_BASE+0X04)
#define UART1_IIR (UART1_BASE+0X08)
#define UART1_FCR (UART1_BASE+0X08)
#define UART1_LCR (UART1_BASE+0X0c)
#define UART1_MCR (UART1_BASE+0X10)
#define UART1_LSR (UART1_BASE+0X14)
#define UART1_MSR (UART1_BASE+0X18)
int uart0_reser_value_test(void);
int init_uart0(U32 sysclk, U32 baudrate, U32 databit, U32 trigerlevel);
int uart0_int_en(int recie, int thrie);
void int_serv_uart0(void);
ER rls_isr(void);
ER mds_isr(void);
ER thr_isr_uart0(void);
ER rda_isr_uart0(void);
ER tmo_isr_uart0(void);
STATUS ModuleUart(void);
ER prints(char *s);
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -