📄 uart.c
字号:
//**********************************************************//
//** file: uart.c
//** target: ADSP-BF533
//** creat time: 2008-7-13
#include <sys\exception.h>
#include <cdefBF533.h>
#include "uart.h"
void Init_UART(void)
{
*pUART_GCTL = 0x0001;
*pUART_LCR = 0x0083;//UART Line Control Register, prepare for DLL and DLH setting
asm("ssync;");
//*pUART_DLL = 0x002B; //43
*pUART_DLL = 64; //baud rate:115200; Baud rate = SCLK/(16*Divisor); SCLK = 118.8MHz
//*pUART_DLL = 773;
//*pUART_DLH = 773 % 256;
*pUART_DLH = 0x0000; //UART Divisor Latch Registers
asm("ssync;");
*pUART_LCR = 0x0003;
asm("ssync;");
*pUART_MCR = 0x0000;
*pUART_IER = 0x0001;
asm("ssync;");
}
//UART transmit function
void uart_tx(unsigned char data)
{
*pUART_THR = data;
asm("ssync;");
while((*pUART_LSR & 0x0020) == 0) ;
}
EX_INTERRUPT_HANDLER(UART_ISR)
{
unsigned short data;
// confirm interrupt handling
if (*pUART_LSR & 0x0001)
{
data = *pUART_RBR;
uart_tx(data);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -