Txd485(); U1.TxBusy = U1.TxCount != U1.TxdCount; for (i=0; (i<FIFODEEP) && (U1.TxCount != U1.TxdCount); i++) { ch = U1.TxBuffer[U1.TxdCount++];//取出缓冲区1个字节数据 UART1_THR = ch;//将缓冲区1个字节数据写入FIFO while((UART1_LSR & 0x40) == 0); } VICSoftIntClr = MASK_BIT(VICIntSel_UART1); Rcv485(); 用hotpower的无限FIFO发送数据,在发送中断中,为什么我的程序总必须加一句 while((UART1_LSR & 0x40) == 0); 才能将数据正确发出,如果没有该句,在串口通上看不到数据; 是不是我的cpu跑的太慢了,我用的是LPC2220;11.0592的晶振,4800的比特率;
|