一、技巧原理講解
當(dāng)我們僅有一個(gè)串口工具時(shí),如何通過簡單的方式,來做到一個(gè)串口工具,監(jiān)聽串口的收發(fā),或者多路串口的數(shù)據(jù)呢?
話不多說,直接上原理圖!

空閑狀態(tài)下,Master與Slave的串口連接處,都處于高電平狀態(tài)。
這里,通過兩個(gè)1N4007的二極管,利用二極管的單向?qū)ㄐ?,再加上串?a target="_blank">USB端的弱上拉,使得串口USB端的數(shù)據(jù),既能合并來自Master與Slave發(fā)送的數(shù)據(jù),也阻隔了通信中Master與Slave的兩條TX與RX線的相互干擾。
該電路更多的用于很多芯片的串口AT指令通信中,當(dāng)主機(jī)Master發(fā)送【AT+DATA】時(shí),從機(jī)Slave響應(yīng)相應(yīng)的數(shù)據(jù)。由于通信的先后關(guān)系,便能將Master與Slave的通信數(shù)據(jù)一一對應(yīng)到同一窗口下。
二、實(shí)驗(yàn)與驗(yàn)證
(1)電路實(shí)現(xiàn)
我們通過兩個(gè)1N4007二極管,以及10k的金屬膜電阻,少量的杜邦線,來實(shí)現(xiàn)串口監(jiān)聽線。
再通過2個(gè)最小系統(tǒng)的板子,連接串口,并共地線。
這里初步實(shí)現(xiàn)板子串口的監(jiān)聽連接。
(2)軟件通信實(shí)現(xiàn)
在這里,我們需要在MCU的軟件上,實(shí)現(xiàn)以下機(jī)制:
Master端:
①按下按鍵,發(fā)送[Master TX]: KEY PRESS!
②接收到Slave發(fā)來的數(shù)據(jù)DATA,進(jìn)行回顯返回[Master RX]: DATA。
Slave端:
①按下按鍵,發(fā)送[Slave- TX]: BUTTON RELEASE!
②接收到Master發(fā)來的數(shù)據(jù)DATA,進(jìn)行回顯返回[Slave- RX]: DATA。

注:Master與Slave的實(shí)現(xiàn)代碼類似
(3)實(shí)驗(yàn)結(jié)果
通過分別按下Master與Slave的按鍵,在串口端抓取到如下數(shù)據(jù):

-
二極管
+關(guān)注
關(guān)注
149文章
10463瀏覽量
179672 -
usb
+關(guān)注
關(guān)注
60文章
8480瀏覽量
286079 -
串口
+關(guān)注
關(guān)注
15文章
1627瀏覽量
83407 -
MASTER
+關(guān)注
關(guān)注
0文章
112瀏覽量
12250
發(fā)布評論請先 登錄
基于QT的串口調(diào)試工具設(shè)計(jì)
串口監(jiān)聽數(shù)據(jù)存儲(chǔ)
肝 | 一種串口高效收發(fā)思路及方案
STM32串口控制收發(fā)模式總結(jié)
STM32 CubeMx(三)外部中斷和串口收發(fā)
如何來編寫一個(gè)串口收發(fā)程序
一種高效的串口收發(fā)思路及方案
一個(gè)串口工具監(jiān)聽多路串口收發(fā)方案
評論