关于串口打印puts函数一小段代码的理解,我有点没看懂;
时间:10-02
整理:3721RD
点击:
#include <reg51.h>
#define XON 0x11
#define XOFF 0x13
char putchar (char c) {
if (c == '\n') {
if (RI) { //RI为接收位?当串口接收到数据为1;
if (SBUF == XOFF) { //这里表示什么,不会是代码上的意识?
do {
RI = 0; //接受一个数据以及接受下个数据;
while (!RI);
}
while (SBUF != XON); //这里表示什么,不会是也是代码上的意识?
RI = 0;
}
}
while (!TI); //等待发送完成;
TI = 0;
SBUF = 0x0d; /* output CR *///发送一个换行符;
}
return (SBUF = c); //发送需要发送的字符;
}
我知道这个函数能实现什么功能,以上是我的理解,望大虾给我指点一下我的错误和理解不足之处,谢谢;
已退回5积分