单片机串口接收到数据后,如果不读取数据,再次发送会不会产生串口中断??

如题所述

这个要看接收中断中处理有没有清除接收标志位,这个标志位需要软件清除,如果这个标志位不清除,就不会再产生新的中断。
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-04-16
不读取得话接收的数据会覆盖内容,发送完成会产生发送中断,同时接收标志不会清除.不知道说清楚没,接收标志一般要软件清除.
第2个回答  2013-10-10
接收数据时(RI非0),会产生 要软件清0
发送数据时(TI为非0),会产生 要软件清0
如下:
SBUF=i;
while(TI==0);
TI=0;
temp=0;
k++;
接收(rec=SBUF)时也一样RI要软件清0

单片机串口接收到数据后,如果不读取数据,再次发送会不会产生串口中断...
如果不读取数据,对应的标志位不会被清零,再次发送会产生中断标志,但是会有溢出错误。

单片机串口接收到数据后,如果不读取数据,再次发送会不会产生串口中断...
这个要看接收中断中处理有没有清除接收标志位,这个标志位需要软件清除,如果这个标志位不清除,就不会再产生新的中断。

51单片机串口发送数据时会产生中断吗
如果开了串口中断,接收,发送都会产生中断。建议,都用中断方式。串口接收到数据后,如果没有读出来,又接收到数据了,前面的一个数据就丢掉了。特别是当你接收到字符串的时候,你关中断,或者用查询方式,就容易掉数据。

单片机串口接收数据就会中断一次吗
嗯,是的,串口接一次数据,如果中断开的话就中断一次!1、接受数据的中断一次只能接1个bit,直到循环接完,再把接到的数据8个bit组装为1个完整的byte,就这样,不可能全部接完再跳出中断。2、如果你怕影响执行主函数main()中的语言,请在主函数中设置标志判断变量使得全部接受完成再进行执行。3、连...

单片机串行口收发结束后为什么要中断
出现中断,是便于你及时进行数据处理。收到后的中断函数中,应该把SBUF的数据读出,并送到其它的位置,腾出SBUF,便于接收下一个数据。在发送完的中断函数中,应该发送下一字节。(如果没有了,当然就不发了。)

单片机串口为什么接收数据开中断
串口接收寄存器SBUF收到数据后会把接收标志位RI置位的,电脑发送数据是一个字节接着一个字节,两个字节之间会有延时,所以收到数据你需要尽快处理,不然可能会被新的数据覆盖,配置中断就是为了及时响应把数据读出存储起来。所以SBUF内收到数据后RI就会置1,在中断里把数据存储 然后及时把RI清零接收下一...

单片机串口为什么接收数据开中断
串口接收寄存器SBUF收到数据后会把接收标志位RI置位的,电脑发送数据是一个字节接着一个字节,两个字节之间会有延时,所以收到数据你需要尽快处理,不然可能会被新的数据覆盖,配置中断就是为了及时响应把数据读出存储起来。所以SBUF内收到数据后RI就会置1,在中断里把数据存储 然后及时把RI清零接收下一...

大家说说单片机串口中断是怎么回事?
不管是干什么,但是你最需要的是接收GPS数据并进行处理,于是当接收到GPS信号时,就会产生串口中断,然后进入中断接收GPS数据,存储在串口寄存器当中,当接收完之后关掉中断,单片机继续其他工作,当又有GPS数据需要接收时,便又产生串口中断进行接收处理。这个大概就是单片机串口中断的过程,不知有所了解没 ...

单片机串口发送数据时不需要产生中断吗
中断法就是指发送寄存器为空时产生发送中断请求,可以在发送中断服务子程序中向发送缓冲器中写下一个要发送的数据。而“轮询法”就是指由CPU不断检查串口的发送中断标志,当这个中断标志被置1的时候表示发送缓冲器为空,可以向里面写入下一个要发送的数据。所以说,不管是“中断法”还是“轮询法”,都...

关于单片机串口同时收发数据的时序问题
一是:如果串口收到数据,产生中断后。我先处理其它程序没有给RI归0时。那么发送方是会继续按时钟发送数据呢。还是等到我接收方软件RI归位后才接着发送呢。 二是:如果双方同时发大量(不止一个字节)数据时,会怎么样?因为我单片机每发送一个字节都会whi... 展开 万...

相似回答