一个串口工具监听多路串口收发方案

描述

一、技巧原理讲解

当我们仅有一个串口工具时,如何通过简单的方式,来做到一个串口工具,监听串口的收发,或者多路串口的数据呢?

话不多说,直接上原理图!

usb

空闲状态下,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。

usb

注:Master与Slave的实现代码类似

(3)实验结果

通过分别按下Master与Slave的按键,在串口端抓取到如下数据:

usb

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分