新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 51单片机串口的问题

51单片机串口的问题

作者:时间:2013-01-16来源:网络收藏

想问一下:单片机串口在接收的时候是怎么接收的?如上位机一次发送一个字符串11223344,通过串口助手下发给单片机。用下面的程序
/***********************************************************/
/* 程序 */
/********************************************************/
void UART_SER () interrupt 4
{

uchar Temp; // 定义临时变量

if(RI) // 判断是接收中断产生

{

RI=0; // 标志位清零

Temp=SBUF; // 读入的值

P1=Temp; // 把值输出到 P1 口,用于观察

SBUF=Temp; // 把接收到的值再发回电脑端

}

if(TI) // 如果是发送标志位,清零

TI=0;
}

单片机能够把上位机的数据全部接收后原样传输回去
------------------------------------

我修改了一下程序:,把上面的判断改为

if(RI) // 判断是接收中断产生

{

RI=0; // 标志位清零

Temp=SBUF; // 读入的值

P1=Temp; // 把值输出到 P1 口,用于观察

SBUF=Temp; // 把接收到的值再发回电脑端

while(!TI);

TI=0;

SBUF='o';

}


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭