now i use uart on BIOS, but i dont use PSP libarary, directly config register. But now, when i put a breakpoint in my ISR, the program step into ISR directly after echo.. acturaly i havenot send or receive. I look up the IFR reg ,it is 0x00008000, ,,
and some use SPBK0,some use UR0FCBK of Dm6437 datasheet table 3-20
next is my uart_init func,i work with it several weeks, can not find problem:
void UART_INIT()
{
UART_Handle uart_handle;
Uint32 divisor = 14; //115200
EVMDM6437_init();
//sysModuleRegs->VDD3P3VPWDN &= (~(0x400u)); //UART power up/dont need open Power of flow control
//sysModuleRegs -> PINMUX0 &= (0x005482A3u);
//sysModuleRegs -> PINMUX0 |= (0x005482A3u);
//sysModuleRegs->PINMUX1 &= (0xFFFFF5FFu);
//sysModuleRegs->PINMUX1 |= (0x00000500u); //uart1=bit20:21
//CFG_PINMUX1 &= 0xFF3FFFFF; //SPBK0
//CSR &= ~(1<<0); //disable
//IER &= ~(0x0000FFF3); //disable
//IER |= 0x01; //reset interrupt enable
//ICR = 0xFFFF;
//ifr = IFR;
//uart_handle = ( UART_Handle )&UART_MODULE_0;
UART0_PWREMU_MGMT = 0;
//_wait( 100 );
UART0_DLL = ( divisor & 0xff ); // Set baud rate
UART0_DLH = ( divisor >> 8 ) & 0xff;
UART0_FCR = 0x0007; // 4B Clear UART TX & RX FIFOs
UART0_FCR = 0x0001; // Enable TX & RX FIFOs
UART0_IER = 0x0007; // Enable interrupts
UART0_LCR = 0x0003; // 8-bit words,
UART0_MCR = 0x0000; // RTS & CTS disabled,
UART0_PWREMU_MGMT = 0x6001; // Emulation Free,
IER |= ((1 << 4)|(1<<1)); //int6
CSR |= 0x01; //enable // Enable TX & RX componenets
//EVMDM6437_UART_open( 0, 115200 );
//return;
}