我的串口发送函数是 查询方式写的
void tx_nbyte(uint8 *data,uint8 num){
U0TER = 0X80; //使能
for(i = 0;i < num;i++){
U0THR = *data++;
while((U0LSR & 0X20)==0);
}
U0TER = 0X00; //---------------问题所在-------加了这句话就不发送数据了
我原本想发送完了,就顺手把发送功能关掉,但是加了这句话就出问题了
}
我在main中应用它发送数据data[8]={0,1,2,3,4,5,6,7}很正常,没有加 U0TER = 0X00 的时候很正常,但是加了以后就不会发送了
希望大家给我找找原因,非常感谢。
我看过一些书上,直接不用U0TER这个寄存器,但是我觉得有这个寄存器,就要用起来,没想到一用出了这个问题。
|