您好!
之前我用UCA1实现了和其他传感器实现RX TX收发数据。
但是现在一个新的传感器,只有一根总线,要求半双工通讯,9600,8,n,1.
电路中,我将单片机的P2.6 RXD MISO 接在传感器的通讯脚上。 TXD脚悬空。
第一次尝试:用原始代码发送数据,RXD立刻会中断收到数据,我无法理解TXD脚悬空,为何RXD会收到TXD缓冲区的数据呢?
我在想既然RXD能收到数据,传感器会不会也收到数据?不过好像没有回应。于是我发送时把接收中断禁止,发送完毕后再开接收中断,RXD就没有收到数据了,当然传感器似乎也没有收到。
请问如何改造成半双工通讯?
1. 将P2.6用IO口模拟发送和接收?
2. 将P2.6用IO口模拟发送,发送完毕后,P2SEL0和P2SEL1将它改为系统模块UART功能来接收数据?
3. 单片机天生支持半双工,只是我不会配置?
希望帮我解答一下,谢谢!