你的位置:首页 > 操作系统

[操作系统]Beaglebone Black用 UART 连接 ESP8266 (ESP


DSC_0022DSC_0023

这是一块便宜 (¥12.5)的 WiFi 模块,3.3V ,芯片是乐鑫科技(Espressif)出品。它本身是很多玩法,比如这个 NodeMCU (淘宝有套件焊接好一整套的带 USB 接口的,搜 esp8266 nodemcu)。

我这是没多久之前买的。要买的话,多几块钱可以有更完整引脚的版本,乐鑫在淘宝有店卖样板。自己看着办吧,选择很多。

咱们国家威武,看到国外论坛研究官方说明文档的中文字,我暗暗地偷笑了一下。

启动模块测试

据淘宝卖家提供的资料,模块开机需要 300mA。就是说,我用 USB 连 BBB 给电会不行,我特意冒险试试,VCC 接 BBB 的 3.3V,CH 也接 3.3V 拉高,GND 接 BBB 的 GND,BBB 一开机就关了,原来是真的,心凉了一下,拔掉后 BBB 再开机又正常,呼 ~

淘宝的总要试试才确认付款吧,如果你刚买回来我建议你试试先,不然又像我上次一样一个 5V 适配器变成 2V 的。

现在面包板供电调到 3.3V,相同接法,VCC 和 CH 接 3.3V 正极,GND 接负极,正常启动。

DSC_0034

接线图卖家给的不太清楚,还有,分享的文档里面,说要拉高的地方貌似不正常(它说 GPIO 0 和 2 都有拉高,太神奇了,不会吧)。

看这个图:

Screenshot_2016-01-26-11-05-14

我这块不是 breakout,引脚已焊接,注意正反两面,上面引脚图是正面的。只接 VCC, CH_PD 和 GND 就能启动,就三个引脚接线。默认的工作模式的 AP,上电后应该能搜到:

image

这东西它本身就自成系统,支持 AT 命令。ESP8266 GPIO 直接连传感器,lua 写进去 esp8266 再做 AP,你手机接上后该干嘛就干嘛去。有心动的感觉?心动不如行动 ~

我这实验就是用这最简单的做法,AT 命令,测试一下它,还有操作一下串口。博文最后会列出相关资料和连接。这个ESP8266真的可以有。

连接 BBB UART 测试

然后要解决电源问题了。我可以买一个适配器(而我确实应该买),或者我可以用外部电源给它,只接信号线和 GND。我不买,选择后者:

DSC_0035

先打开 BBB 电源,再打开面包板电源。一切看起来正常。接线记得需要共同的 GND,数据 TX RX 接到 BBB 的 P9_21 和 P9_22,我将会用 UART 2 这一组。

image

然后,进去 BBB,到这个文件夹看看:/sys/devices/bone_capemgr.9/

image

这是当前 cape 的状态。Cape 是 BBB 扩展板的叫法,cape manager 就是扩展板管理器,说明书上提到最多可以叠四块扩展板,就是这 0 到 3 号位。上图可见 eMMC 和 HDMI 占了两个了。

我操作以下:

echo ‘BB-UART2’ > /sys/devices/bone_capemgr.9/slots

在 tty 就能看到 ttyO2 了,去看看,/dev 文件夹内:

image

单单测试一下,不用装什么 minicom 什么的,用我电脑本机开两个 putty session 一样能试,首先配置一下:

stty -F /dev/ttyO2 115200 raw –echo

我这 ESP8266 挺新的,默认 baud 已经是 115200 的了。然后 cat /dev/ttyO2,这时,光标停住了在下一行,我们用这个做信息输出用:

image

用另一个 putty 再次登入 BBB,用它做输入用,然后 echo  $‘AT\r’ > /dev/ttyO2,这样来输入,记得回车 \r 是重要的,不能漏掉。然后你就看到 ESP8266 的回答了,它说 OK 就 OK 咯 ~

image

再问多它一句,echo $’AT+GMR\r’ > /dev/ttyO2 ,也是一样要记得那个可恶的回车 \r ,它也回答了:

image

所有 AT 命令都能这样执行,有点烦。但据说,用其他终端也有坑,就在那可恨的回车。我没有验证过是不是,也不知道新版(2015 AUG 也够新了吧)是否已经解决。

最后补充一下,当你 echo ‘BB-UART2’ > /sys/devices/bone_capemgr.9/slots 之后,slots 变成这样的:

image

具体 cape manager 的玩法,待有空再研究。

非常重要的参考资料

AT 命令集 http://bbs.espressif.com/viewtopic.php?f=51&t=732
芯片厂家官网 http://espressif.com/zh-hans/
模块厂家官网 http://www.ai-thinker.com/
论坛 http://www.esp8266.com/
NodeMCU http://www.nodemcu.com/index_cn.html