单片机串行通信工作方式0中,数据为什么是写入发送SBUF,而从RXD中输出?发送和接收SBUF不是独立的吗?

另外对于发送SBUF,是如何把数据从TXD中串行输出的?发送SBUF本身就是移位寄存器吗?... 另外对于发送SBUF,是如何把数据从TXD中串行输出的?发送SBUF本身就是移位寄存器吗? 展开
 我来答
一剑出血
高粉答主

2019-03-25 · 醉心答题,欢迎关注
知道大有可为答主
回答量:5.7万
采纳率:78%
帮助的人:1.6亿
展开全部
“数据为什么是写入发送SBUF,而从RXD中输出?发送和接收SBUF不是独立的吗?”
发送和接收SBUF实际上是两个寄存器,映射在同一个地址。对SBUF执行写操作,操作的是发送寄存器;对SBUF执行读操作,操作的是接收寄存器。
“另外对于发送SBUF,是如何把数据从TXD中串行输出的?发送SBUF本身就是移位寄存器吗?”

在标准51中,发送SBUF本身并不是移位寄存器,而只是数据缓冲器。收发端口共用一个移位寄存器。
标准51串口的配置是:两个缓冲器(映射在相同地址,收发分别独立映射在读写指令触发)、一个移位寄存器、一个控制寄存器以及一个波特率发生器。
更多追问追答
追问

那请问工作方式0下,为什么是写入发送寄存器,而实际却是从RXD中输出?

追答
工作方式0实际上串口是按照移位寄存器方式工作的,TXD与RXD管脚共同输出同步移位信号,其中TXD负责时钟信号的输出,RXD负责数据信号的输出。
RXD仅仅是指在标准异步串行通讯方式下,这个管脚是接收数据用的。你不必纠结管脚的名称与其在特殊应用场合下的使用有什么背离。有中国特色的社会主义,实际上还是SHZY么?
ykdwmj
2019-03-25 · TA获得超过334个赞
知道小有建树答主
回答量:1025
采纳率:75%
帮助的人:121万
展开全部
SBUF是两个独立的寄存器,一个是只读的SBUF寄存器,一个是只写的SBUF寄存器!
更多追问追答
追问

那工作方式0是写入的其实是“接受”SBUF?请问发送SBUF是只写寄存器,那么又是如何将数据变换成串行数据输出的?

追答
其实串行接口就是一个8位并入串出移位寄存器和一个串入并出移位寄存器,如何理解怎样转换的可以参考集成电路74LS165的8位并入串出的功能,串口接收的可以参考74LS164。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lycdl
高粉答主

2019-03-25 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2万
采纳率:94%
帮助的人:4723万
展开全部
对于串口方式0,并不是串口通信,是串行输出而已。但是,你采给的回答是错误 的,所以,既然你已经采纳了,就不再给你多解释了。
追问
...既然你给了回答,可以解释一下吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
说说汽车这些事
老司机

2019-03-25 · 汽车使用维护,行业信息分享
说说汽车这些事
采纳数:367 获赞数:2731

向TA提问 私信TA
展开全部
对应用单片机的人,写入到要求的地址,其他是由单片机完成的,不必太纠结在这
追问
没有纠结,就是想知道为什么而已
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3174e38
2019-03-25 · TA获得超过256个赞
知道小有建树答主
回答量:392
采纳率:55%
帮助的人:31.5万
展开全部
要看你的是什么型号的单片机。一般情况下串口通讯都是很简单的。正确设置波特率之后。写入发送,发送就应该可以发送出去。你的单片机的tx和rx的,那个引脚是可以重新配置的
追问
是89c51单片机,我在书上看到在串行通信工作方式0时,是写入发送SBUF,然后又RXD发送数据,TXD作为时钟脉冲输出,可是发送和接受SBUF是物理上独立的,又如何把发送SBUF的数据送到RXD串行发出?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式