当前位置: 首页 > 原理解释

esp8266无线通信原理-esp8266 无线通信原理

ESP8266 是个野鸡方案,但它是当年做物联网最香的那个。别整那些虚的,直接看它如何干活。 这玩意儿为啥能连上 WiFi?靠的是天线。ESP8266 的板子上面有两根天线,一根叫 TX,一根叫 RX。它们别看都在个芯片上,但物理上是分开的。TX 负责把数据往外推,RX 负责收回来。
要是你拿两根一般/平平铜线给灌满水,水往低处流,那天线自然也就水涨船高了。ESP8266 就是个典型的输入输出反相器,TX 的上升沿对应的是 RX 的下降沿,就像水流过山谷一样,务必反着走才能带着能量跑回去。 讲原理实际上就三句大白话。你给板子发个“数据”包,TX 天线就把它推出去。
这数据包由几个字节组成,比如包头、包体、校验码。包头和校验码是为了让路由器能认出是哪位发的,校验码是为了防丢包。RX 天线收到数据包后,先检查校验码对不对。对号入座,包体里的内容就出来了。你要是查错了,路由器就会回绝接收。 这通信原理最核心的就是那三个周期。
第一个周期叫空闲周期(SCK0),板子上有个细小的开关,平时是关着的,等于静默。你按个按钮,要么某个引脚有个跳变,这个开关瞬间打开,启动计数。
第二个周期叫主频周期(SCK1),启动传输数据。
第三个周期叫暂停周期(SCK2),把信号从高变低,告诉板子“收完啦,该休眠了”。
这三个阶段循环往复,就像一场短跑,跑进第一个周期是起跑,跑进第二个周期是冲刺,跑进第三个周期是冲刺后的恢复。 最直观的例子是看 LED 灯。假设你要亮 10 秒,10 秒后自动关。你连个秒表。板子收到“启动”指令,空闲周期终止,启动主频周期,每秒翻转一次。到了第 10 秒,主频周期终止,暂停周期一响,LED 就灭掉了。
要是板子忘了,第 10 秒还没到,LED 还在亮着。
这就是由那个 3.0 微秒的定时器拍板的。 再聊聊数据格式,这也是新手好办翻车的地方。ESP8266 用的不是标准的 TCP/IP 协议,它是自己的私有格式。数据包一般包含 Header 和 Payload。Header 局部起码要有 5 个字节:长度字段、序列号、检查码、还有最关键的 RST 位和 ACK 位。长度字段告诉你这包里有几个字节,别搞错了。序列号用来追踪,万一板子重启了,路由器就知道这是哪一段数据。RST 位是至关关键的,它表示“心跳”。
要是板子挂了,RX 天线收不到数据,RST 位会不断跳变,让路由器判定为“设备死机”并重新连接。ACK 位就是接收端的反馈,收不到 ACK 就代表收黄了了。 还有电源管理那块,也是讲究门道。ESP8266 启动需求 1.8V 的电压。板子上有个电压调节器(VR),它的工作频率比 SPI 最高频率还要高,每秒能调节几百次。
每次调节它都会消耗电量,故此它不能 24 小时不间断工作。
一般我们设定的工作模式是 100 次,这样维持 15 秒的电源维持周期,总共就能维持 13 秒的工作工夫,之后就得就寝。
这就是为啥大量板子配个锂电池,锂电池别看电压不稳,但作为工作电源,它的波动范围大一点,也能撑住。 通信协议里有个细节务必讲清楚:数据流向。TX 是主,RX 是从。TX 发起请求,RX 被动响应。
要是 RX 没有应答,TX 就会认定请求黄了,然后进入下一个周期重新尝试。
这种机制让连接贼稳定,哪怕路由器网络波动,只要 RX 能收到,TX 就持续。 实际使用过程中,最头疼的就是调试。你发了包,RX 没收到,如何办?第一步检查 RST 位是不是跳变,第二步查校验码对不对,第三步看是不是电平匹配难题。
有时候芯片引脚反了,要么焊接时把地线搞混了,害得 TX 和 RX 串反了,那就得把两根线对调一下,要么重新焊接。 最终说句扎心的,ESP8266 别看撇脱,但它的物理环境要求挺高。它对环境温度敏感,过高或过低都会影响性能。并且它的天线辐射本事有限,在强电磁干扰的环境下,信号好办乱跑。
要是你是在车间里用它,记得给板子加个金属屏蔽罩,要么远离强磁铁。 总而言之,ESP8266 就是一个充满二进制代码的微型无线终端。TX 推出去,RX 收回来,周期变换,状态反馈。
只要理解好这三个周期的关系,处理好那点电压和电平的细节,这玩意儿就能在无线世界里稳稳当当转圈。
相关标签:

猜你喜欢

热门阅读

  • 赖柴尔定理-赖柴尔定理
  • 迪拜哪个国家的城市?-迪拜在哪国城市
  • 李毅吧番号及出处-李毅吧番号及出处
  • 贴春联的由来简介50字-春联由来简述
  • 思乡的名言和出处-思乡名言及出处

其他分站