一、技巧原理講解
當我們僅有一個串口工具時,如何通過簡單的方式,來做到一個串口工具,監聽串口的收發,或者多路串口的數據呢?
話不多說,直接上原理圖!
空閑狀態下,Master與Slave的串口連接處,都處于高電平狀態。
這里,通過兩個1N4007的二極管,利用二極管的單向導通性,再加上串口USB端的弱上拉,使得串口USB端的數據,既能合并來自Master與Slave發送的數據,也阻隔了通信中Master與Slave的兩條TX與RX線的相互干擾。
該電路更多的用于很多芯片的串口AT指令通信中,當主機Master發送【AT+DATA】時,從機Slave響應相應的數據。由于通信的先后關系,便能將Master與Slave的通信數據一一對應到同一窗口下。
二、實驗與驗證
(1)電路實現
我們通過兩個1N4007二極管,以及10k的金屬膜電阻,少量的杜邦線,來實現串口監聽線。
再通過2個最小系統的板子,連接串口,并共地線。
這里初步實現板子串口的監聽連接。
(2)軟件通信實現
在這里,我們需要在MCU的軟件上,實現以下機制:
Master端:
①按下按鍵,發送[Master TX]: KEY PRESS!
②接收到Slave發來的數據DATA,進行回顯返回[Master RX]: DATA。
Slave端:
①按下按鍵,發送[Slave- TX]: BUTTON RELEASE!
②接收到Master發來的數據DATA,進行回顯返回[Slave- RX]: DATA。
注:Master與Slave的實現代碼類似
(3)實驗結果
通過分別按下Master與Slave的按鍵,在串口端抓取到如下數據:
-
二極管
+關注
關注
148文章
9966瀏覽量
169569 -
usb
+關注
關注
60文章
8055瀏覽量
269339 -
串口
+關注
關注
14文章
1580瀏覽量
78280 -
MASTER
+關注
關注
0文章
105瀏覽量
11562
發布評論請先 登錄
相關推薦
肝 | 一種串口高效收發思路及方案

STM32串口控制收發模式總結

評論