极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10357|回复: 5

請問與ESP8266通訊錯誤

[复制链接]
发表于 2015-7-2 21:07:36 | 显示全部楼层 |阅读模式
我想用UBS接口測試esp8266的指令


  1. #include <SoftwareSerial.h>
  2. SoftwareSerial esp8266(2, 3); // RX, TX

  3. void setup()
  4. {
  5. Serial.begin(115200);
  6. Serial.println("Goodnight moon!");
  7. esp8266.begin(115200);
  8. }


  9. void loop() // run over and over
  10. {
  11. if (Serial.available()>0)
  12. {
  13.   char cmd;
  14.   cmd=Serial.read();
  15.   Serial.print("input: ");
  16.   Serial.println(cmd);
  17.   esp8266.print(cmd);
  18.   esp8266.print("\r\n");
  19.   delay(1000);
  20.   cmd=esp8266.read();
  21.   Serial.print("output: ");
  22.   Serial.println(cmd);
  23.   
  24. }
  25. delay(2000);

  26. }
复制代码
測試的結果卻是

Goodnight moon!
input: a
output: &#65533;
input: t
output: &#65533;
input: A
output: &#65533;
input: T
output: &#65533;


沒辦法發出AT字串 會一個一個字發出
8266取回的值不是數字就是亂碼

請問問題出在哪裡?
回复

使用道具 举报

发表于 2015-7-2 21:29:37 | 显示全部楼层
检查默认波特率是否一致

另外,串口输出的时候看一下最后是要发送 lf 还是 cr 还是两个都要之类的
回复 支持 反对

使用道具 举报

发表于 2015-7-2 21:56:30 | 显示全部楼层
115200 使用模拟串,会产生错误. 9600还行.
回复 支持 反对

使用道具 举报

发表于 2015-7-3 08:31:03 | 显示全部楼层
zoologist 发表于 2015-7-2 21:29
检查默认波特率是否一致

另外,串口输出的时候看一下最后是要发送 lf 还是 cr 还是两个都要之类的

哦哦 那很可能是楼下说的那种问题了
回复 支持 反对

使用道具 举报

发表于 2015-7-7 22:45:02 | 显示全部楼层
重新设置8266的通信速率应该可以,我设置为9600通信正常。
回复 支持 反对

使用道具 举报

发表于 2015-7-28 22:30:24 | 显示全部楼层
smallfivecn 发表于 2015-7-7 22:45
重新设置8266的通信速率应该可以,我设置为9600通信正常。

用AT命令设置
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-17 23:27 , Processed in 0.077870 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表