发布网友 发布时间:2022-04-20 04:00
共5个回答
热心网友 时间:2022-05-31 14:55
51单片机串行口是独立的硬件,对其设置完之后,它就独立工作了。热心网友 时间:2022-05-31 14:55
串口之间是有协议的,有起始位和停止位,中间是数据。当发送方检测到接收方空闲,就会发起数据发送,先有起始位,然后是数据,最好是停止位。接收方在接受数据的时候是一个串入并出的一个寄存器。当最后一个停止位到达时,寄存器输出到SBUF,并置位RI,引起串口中断。这个时候SBUF中就是刚收到的数据。热心网友 时间:2022-05-31 14:56
能不能发一下你的图片,你采纳那个回答有一点漏洞。那就串口分四种模式,其中有一种是先触发再去处理数据的接受和发送。此时还没有进入寄存器sbuf。你可以看看寄存器版本的c51去具体看看那四种模式工作方式。热心网友 时间:2022-05-31 14:56
你的问题补充里面说的对,但是存入SBUF是需要有一句代码的,比如:SBUF=i;其中i就是所谓的数据了热心网友 时间:2022-05-31 14:57
不需要一直检测,只要中断置位了就会进入中断程序,但需要你手动将中断位RI清0。