关于东芝870C单片机的一个问题

[复制链接]
2971|3
 楼主| ddtx 发表于 2010-9-17 15:05 | 显示全部楼层 |阅读模式
我们用东芝870C单片机,关于串口通信,我看DATASHEET上说是全双工异步串口,但是单片机的TDBUF和RDBUF地址是同一个地址,这样可以实现同时收发吗,我觉很奇怪,这样可以实现全双工吗
ayb_ice 发表于 2010-9-17 15:11 | 显示全部楼层
同一地址没有关系,一个是只读,一上是只写
51的SBUF不光是地址相同,而且名字都相同,同样一个是只读,一上是只写
换句话说写SBUF表示要发送数据,读SBUF表示接收一个数据
 楼主| ddtx 发表于 2010-9-19 09:23 | 显示全部楼层
LS,问下如果全双工的时候,我同时收发会不会出问题呢,就好像我给TDBUF赋值完了直接读RDBUF,读到是发送的数据还是接受的数据呢。有点不很明白,一个地址如何同时存储两个数据 的。
rodger_br 发表于 2010-9-19 15:56 | 显示全部楼层
二楼已经说得很明白了,
TDBUF和RDBUF是两个寄存器,只是共用一个地址而已.
读到的都是RDBUF,写的都是去TDBUF.
很多GPIO端口寄存器的输入输出也是这种结构
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

312

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部