目前正在调试LPC2114的串口发送部分,但是无论怎样配置,从串口调试软件接收LPC2114串口发送的数据总是这个几个数据0X78 80 F8 这个三个数据. 串口部分程序如下:
1. 串口初试化:
U0LCR=0x83;// Data 8 ,Stop 1, Even U0DLL=0x48;// Baud rate fix 9600 @11.0592MHZ U0DLM=0x0; // U0LCR=0x03;// Data 8 ,Stop 1, Even U0IER=0x03; U0FCR=0x07; // Enable and Clear FIFO;
2. 主函数
int main (void) { Port1_Initial(); Port0_Initial(); Uart0_Init(); Time(100); U0THR=0x11;
while (1) { // SendString("Hello magnificent world of the lpc2000\r\n"); // Uart0_Tx_Int(); // if (((U0LSR & 0x41)==0x41) && ((U0LSR | 0x7F)==0x7F)) // Time(100); if ((U0LSR & 0x00000040)==0) // if (U0LCR && 0x20) // transmit fifo empty ? { Time(100); Time(100); Time(100); Time(100); Time(100); Time(100); U0THR=0x55; } /* NEWS_SET(); RTX_SET(); ALARM_SET(); Time(100); Time(100); Time(100); RTX_CLR(); NEWS_CLR(); ALARM_CLR(); Time(100); Time(100); Time(100); */
} }
//****************************************************************//
3. 延时函数
void Time (unsigned char k) { unsigned char temp_data,i,j; temp_data=k; for(i=0;i<temp_data;i++) { for(j=0;j<20;j++) { ; /*temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; temp0=0xf4; temp0=0xf1; temp0=0xf2; temp0=0xf3; */
} } }
上面采用查询方式发送, 发送一次, 串口调试软件总是收到3个数据"0x78 0x80 0xF8" , 百思不得其解, 请各位帮忙!
|