ESP8266与单片机通信共地问题
ESP8266与单片机通信共地问题
1.共地:
在数字电路中,要判断一个电平信号的高低,就需要一个标准来判断,这个判断标准就是0电平(也叫地),要把所有IC芯片的地连在一起,这就是共地。
在模拟电路中,也需要参照一个电平来表示信号,但是模拟电路对地线没有什么要求,只要有驱动电源就行了。
在实际中,各处的零电位实际上是不太相同的,将地线接在一起是为了统一零电位,以保证各处的电压,即电势差有统一的关系。
通常,在数字电路和模拟电路合用时,工业上规定只能有一个共地。这在一般数字电路的书中能找到。
总之一句话,要正常工作必须保证所有模块共地
2.开发板与ESP8266模块接线:
之前ESP8266的接线方法虽然能让整体模块进行工作,但开发板需要通过电脑与ESP8266、CH340模块进行共地,离开电脑这个共地介质就没法通信,比如想让单独供电的智能小车搭载ESP8266模块,并通过客户端控制小车启动,此时单片机的电源就不能是电脑USB线了
如果ESP8266模块有工作电压为5V的型号的话,就可以用开发板上的5V和GND为其供电,TX接RX,RX接TX后就能直接与开发板通信了,不幸的是,手上的ESP8266模块是3.3V的,所以不能用开发板的供电(开发板只有5V引脚),虽然看别人也照样接到5V上工作,但不提倡,怕工作久了把芯片烧了,所以ESP8266模块需要额外供电
经过尝试,不通过电脑共地的接线方法如下:
这种接线方法时电脑可以查看ESP8266与开发板的通信情况,但并没有给ESP8266供电,也没有给开发板供电,开发板和ESP8266都是独立供电,但它们的GND都是接在一起的,可以用面包板来做桥梁,将它们接在一起,这样才能保证基准都是一样的,才能正常通信;
数据流向:
TX与RX的的数据流向如图所示,单片机的发送的指令是不会到达CH340的,TX的数据始终流向RX
通信情况:
上电时,单片机发送AT指令给到ESP8266,等待ESP8266的应答信息从TX返回给单片机,同时也发送到了CH340的RX上,可在电脑串口上看到应答信息(这里连单片机发送的AT指令也能看到),单片机根据应答发送下一条AT指令,两三个循环后,AP模式下等待客户端的连接,连上后单片机就会不断发送数据到客户端上;在单片机与ESP8266连接的同时,电脑安信可串口助手也可以发送AT指令给ESP8266
QA:
单片机的AT指令明明不能通过TX发送到CH340的RX上,那为什么在电脑串口上也能看到这些AT指令呢?
答:
因为ESP8266模块将收到的AT指令和应答一并又从TX发送到了CH340的RX上,才能在串口助手上同时看到AT指令和应答;
即模块将发送过来的指令原封不动的先复述了一遍后接着发送有效恢复,称这种复述为回显,关闭回显(要发送ATE0)后如再次发送AT,则只恢复OK
想想一开始用串口助手发送AT指令给ESP8266不就是这种情况嘛,如果发送AT指令时不加换行,则ESP8266会把指令原封不动地返回到电脑上,加了换行后,才把指令和应答一起返回;如果把ESP8266模块的TX线拔掉,再通过串口助手发送指令,ESP8266是能收到的,指示灯会闪,发重启AT指令也能正常重启,但重启的指令和那些重启后的初始化信息都没法在串口上显示,因为把TX的线拔掉了
所以在串口上发送的AT指令是进入到ESP8266模块后,再从模块的RX加上应答一起返回到串口助手上的,所以既能看到自己发送的AT指令,也能看到应答
这就解决了为什么能在串口助手上看到单片机发送的AT指令了,是ESP8266接收了再将指令和应答一起发送回去
3.不用电脑串口助手查看单片机与ESP8266的通信情况
不进行查看的话,完全就是单片机与ESP8266之间悄咪咪的通信了,就像它们之间在打电话,我们没法知道它们说了什么
既然不看通信情况,就不用到CH340了,去掉CH340即可,接线方法如下
在开启单片机电源后,等待单片机与ESP8266之间的通信,等个两三秒,就可以用电脑连上ESP8266的WIFI,然后打开网络调试助手,设置为TCP Client后点击连接,就能连上ESP8266了,如果单片机有写串口发送数据的话,数据就能通过串口给到ESP8266,然后再无线传到客户端上,客户端也能下发信息通过ESP8266给到单片机,控制单片机做一些事情,比如亮个灯啥的
ESP8266与单片机通信共地问题相关推荐
- APP同过ESP8266与51单片机通信
APP通过ESP8266与单片机通信 简述 本项目中是用ESP8266作为热点,工作在MODE2模式,手机作为station接入ESP8266的网络进行数据传输,同时,ESP8266与52单片机之间通 ...
- 安卓app+esp8266+51单片机+光敏电阻+lcd1602实现智能照明系统
本文是本人51单片机和物联网的期末课程设计,没学过打板焊接,只用面包板和公母线实现. 安卓和esp8266控灯主要参考Android Studio设计APP实现与51单片机通过WIFI模块(ESP82 ...
- nRF24L01--2.4G无线通信模块(1)(51单片机和51单片机通信)
作者:李剀 出处:https://www.cnblogs.com/kevin-nancy/ 或者 https://blog.csdn.net/Kevin_8_Lee/article/details/9 ...
- ESP8266wifi模块与51单片机通信教程
** ESP8266wifi模块与51单片机通信教程 准备两个200欧左右的电阻 准备6根杜邦线 然后将ES8266通过如图这种方式连接起来 注意:必须先配置ESP8266模块,配置需要用到ESP82 ...
- python实现STM32单片机通信
python实现STM32单片机通信 注意事项 注意事项 Python3中的encode('unicode-escape')和encode('raw_unicode_escape')区别与联系 htt ...
- 485通信原理_上位机开发之单片机通信实践
经常会有一些学员会问到上位机与单片机之间通信的问题,而我们经常会讲上位机与PLC之间通信,那么其实对上位机开发来说,不管是和PLC通信,还是和单片机通信,通信原理都是一样的.PLC的本质就是单片机,在 ...
- pythonqt4上位机开发_上位机开发之单片机通信实践(一)
经常会有一些学员会问到上位机与单片机之间通信的问题,而我们经常会讲上位机与PLC之间通信,那么其实对上位机开发来说,不管是和PLC通信,还是和单片机通信,通信原理都是一样的.PLC的本质就是单片机,在 ...
- openmv识别物体并与单片机通信(STM32)
openmv识别物体并与单片机通信(STM32) OPENMV端 物体识别 感光元件 寻找色块 画图 距离判断 距离 实际距离 串口发送 STM32段 串口接收 串口2配置 数据处理 数据显示 Ope ...
- 昆仑通态人机界面与单片机通信实战教程四:单片机程序的设计
大家好,我是『芯知识学堂』的SingleYork,前面给大家介绍了"昆仑通态人机界面与单片机通信实战教程三:脚本驱动与HDMI工程的关联",今天笔者就要来给大家介绍这个教程的最后一 ...
最新文章
- 虚拟主机跟php,php虚拟主机和服务器(云服务器跟虚拟主机)
- 伪类的使用之如何在一段文字前面添加一个点
- performance improvement in Distribution chain scenario
- 【递归:把目录下所有文件的绝对路径给输出在控制台】
- 你在乎的--世界在乎的
- mysql报错 DuplicateKeyException分析与解决
- RPC failed; curl 56 SSLRead() return error -9806
- 全球首发!计算机视觉Polygon Mesh Processing总结8——Remeshing Global Structure和Correspondences
- 感觉小轿车要比SUV舒服,为什么很多人还是选择了SUV?
- 原生开发什么意思_什么是原生开发?什么是混合开发?两者有什么区别?
- 小程序 微信统计表格_微信小程序登录机制
- Web 开发与设计师速查手册大全
- 三、静息状态的神经元外膜
- Spark :Web UI详解
- flutter中的点击事件
- 区块链以及蚂蚁开放联盟链初探索
- win10“网络属性”选项卡空白怎么办
- WIN10 mscomm32注册,亲测可用
- zbb20180929 zk Zookeeper的功能以及工作原理
- IE6/7常用的hack