51单片机外部中断和串口发送问题

2024-11-08 23:03:59
推荐回答(2个)
回答1:

你在初始化串口时打开了串口中断标志,但没有写串口中断程序,如果去掉ES = 1;或加上串口中断程序就会好了(改后下载到板子上运行没问题),为什么这样不知道,可能是编译器YUN菜了吧

回答2:

你中断函数加了延时,所以出问题。
delayms(10); //必须去掉
void external_interrupt() interrupt 0
{
//delayms(10); //必须去掉
if(key==0)
{
uint i;
for(i=0;i<19;i++)
{
SBUF=table[i];
while(!TI);
TI=0;
}
SBUF='\n';
while(!TI);
TI=0;
}
}