I use UART of DM6437.(ps. DM6437 is bought from TI).
I didn't use the example suported by TI.I have some questions:
1 I wrote codes to configure UART, codes are shown as below:
void UART0_config(void)
{
//-------------- reset UAERx----------------
UART0_PWREMU_MGMT = 0;//UTRST=0;URRST=0;
UART1_PWREMU_MGMT = 0;//UTRST=0;URRST=0;
//-------------- configure UART0----------------
//----baud rate is 9600=27M/(16*176),8bits data,1bit stop,not loop mode, triger level is 1byte,Autoflow enable,
UART0_LCR = 0 |(1<<7);//DLAB=1b,to programme the divisor;
UART0_DLL = 0xB0;
UART0_DLH = 0x00;//176
UART0_LCR = 0 & ~(1<<7);//DLAB =1;
UART0_FCR = 0x0001; // Enable TX & RX FIFOs 1-byte
UART0_FCR = 0x0007; // Clear UART TX & RX FIFOs
UART0_IER = 0x0007; // Enable interrupts
UART0_LCR = 0x0003;
UART0_MCR = 0 | (1<<4);
UART0_PWREMU_MGMT = 0x0003;
while(!(( UART0_IIR & 0xC0 ) == 0xC0 ));
}
But the register cannot be wroten,such as "UART0_FCR = 0x0007; ",UART0_FCR is always the initialized value.What may be the reason?
2 Must UART of DM6437 be based on DSP/BIOS?
3 I had read about pinmux1 in TMS320DM6437 Digital Media Processor.I find there is only pinmultiplex for flow conterol of UART0.Why cannt UART1 be set as flow control?
Could you help me?