久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6548|回復: 14
打印 上一主題 下一主題
收起左側

請問ESP8266和單片機串口互聯的問題

[復制鏈接]
跳轉到指定樓層
樓主
各位好,我有一塊hc6800-es開發板和ESP8266 esp1的wifi模塊。在使用USB轉串口連接開發板時候,hc6800-es開發板和串口助手可以正常發發數據。
在使用USB轉串口連接ESP8266 esp1時候, ESP8266 esp1和串口助手可以正常發發數據。

遇到問題如下:
在使用USB轉串口(COM1)連接開發板,ESP8266 esp1使用USB轉串口(COM2)僅提供供電。
用杜邦線將ESP8266 esp1和hc6800-es開發板的TXD,RXD交互鏈接。

這個情況下,我使用串口助手鏈接COM1,發送給開發板指令,讓開發板執行AT指令,發現都似乎被ESP8266 esp1攔截執行,開發板不反饋信息,但是ESP8266 esp1會反饋錯誤信息。

例如我發送ON指令,ESP8266 esp1直接反饋ERROR,發送AT,ESP8266 esp1直接反饋OK.
就像是ESP8266 esp1攔截了所有的AT指令,又像是串口助手直接發給了ESP8266 esp1,開發板根本沒收到指令。
保持原有通電狀態下,斷開ESP8266 esp1和hc6800-es開發板的杜邦線,再用串口助手發送指令,開發板正確的收到了指令并亮起LED燈。

我啟動開發板時候,設定了main函數里面等候一會兒,執行以下AT指令讓ESP8266 esp1改變為AP模式,但發現也是沒有正確執行,請問這個情況是什么原因?我應該如解決?感謝各位指導!

評分

參與人數 1黑幣 +10 收起 理由
yousunny + 10 很給力!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:277550 發表于 2018-7-25 20:48 | 只看該作者
先進入透傳模式
回復

使用道具 舉報

板凳
ID:373010 發表于 2018-7-26 08:04 | 只看該作者
devcang 發表于 2018-7-25 20:48
先進入透傳模式

謝謝兄臺!

關鍵是我在開發板啟動時候,延時后執行AT+CWMODE=3都無效,如果用串口助手的話,那沒任何問題。
就是開發板啟動都無法和esp2866溝通我才頭痛。
回復

使用道具 舉報

地板
ID:303383 發表于 2018-7-26 09:09 | 只看該作者
提示: 作者被禁止或刪除 內容自動屏蔽
回復

使用道具 舉報

5#
ID:379279 發表于 2018-7-26 09:56 | 只看該作者
先進入透傳模式
回復

使用道具 舉報

6#
ID:379279 發表于 2018-7-26 09:56 | 只看該作者

這個需要你耐心來調試,給你兩個不同方式的控制實例你看看

ESP8266配置成服務器(PC或單片機發指令):
1、  測試AT指令:AT
2、  復位重啟模塊:AT+RST
3、  設置為AP模式:AT+CWMODE=2
4、  查看主機端的ip地址:AT+CIFSR
5、  設置模塊傳輸模式為TCP模式:AT+CIPMODE=0
6、  設置為多連接模式,啟動模塊:AT+CIPMUX=1
7、  服務器的設置端口:AT+CIPSERVER=1,5000
回復

使用道具 舉報

7#
無效樓層,該帖已經被刪除
8#
ID:364341 發表于 2018-7-26 10:10 | 只看該作者

1
WIFI模塊ESP8266的使用指南(客戶端和服務器兩種模式建立)


ESP8266模塊硬件連接工作,以及作為服務器和客戶端情況下的配置實現的詳細過程,并對相關AT指令和實驗現象進行說明。

1. 硬件準備

模塊型號使用的是ESP-12E,基于ESP8266核心處理器的模塊,使用模塊時,需要對引腳進行相應的連接才能正常使用。引腳連接如下圖:

通過USB-TLL下載器與模塊連接到電腦,進行AT指令通信。由于模塊引腳間距2mm。不能使用2.54mm排插,需要在洞洞板上,通過導線進行引線處理,如圖:

當模塊上電后,LED指示燈會閃爍一下,表示可以正常工作。下面就可以對模塊進行調試使用了!


2. 開始調試一. 調試軟件介紹
  • 串口調試軟件:模塊默認使用115200波特率

  • 網絡調試助手:本文用了兩個網絡調試助手軟件,原因是在調試過程中,有一款軟件進行創建客戶端時無法連接上模塊服務器,可能是軟件版本問題,因此將模塊配置為服務器時,改用了另一款調試助手,兩款軟件分別如下:
    1)該軟件在創建服務器時能正常使用。而創建客戶端時無法使用(版本問題)。

    2)創建客戶端時用這款軟件。



二. 將wifi模塊作為路由器(建立局域網)的基本配置

下面是將模塊作為服務器端的配置流程,以及對常用的AT指令進行解釋
注:發送AT指令后面一定要加入換行(回車),再點擊發送,指令才有效!

  • 模式配置:AT+CWMODE=3,配置成AP兼station模式(AP理解為路由器,被連接,station理解為非路由器,去連接別人),一般通用配置成此模式即可。
    指令介紹:

在調試助手將指令發給模塊,如圖:

2.設置為路由器,為模塊配置路由器名稱和密碼
發送指令為:AT+CWSAP=”MYESP8266”,”ldy1314520”,11,2
名稱是MYESP8266,密碼是ldy1314520
指令介紹:

指令發送,如圖:

3.電腦連接到模塊路由器 配置完WIFI模塊后,可以通過電腦無線連接到WIFI模塊,如下圖。
電腦連接到WIFI模塊路由器,實際上就已經建立了以路由器為中心的局域網,這為下面建立客戶端和服務器的連接打下了基礎。
說明:建立局域網的條件,也可以讓WIFI模塊連接其他路由器,然后電腦也連接該路由器也能構成局域網,這里不做詳解。


三. 將模塊作為服務器端
  • 模塊復位。AT+RST,即:復位模塊,成功后返回ready,其中會返回一串亂碼是模塊內部信息,正,F象。
    指令介紹:

指令發送:

2 配置為多連接。AT+CIPMUX=1,即:模塊作為服務器時,可以被多個客戶端連接,若作為客戶端時,可以連接多個服務器。
指令介紹:

指令發送:

3.配置為服務器。AT+CIPSERVER=1,8089 端口號8089的服務器 ,此時,就將模塊作為服務器創建好了!但是客戶端要連接上該服務器,需要知道該服務器的IP地址,因此需要下一步指令對IP地址獲取。
指 令介紹:

指令發送:

4 .獲取服務器本機IP地址。知道IP地址,客戶端才能進行連接。
指令介紹:

指令發送如下,可以看到模塊返回的IP地址。IP是192.168.4.1 端口號是之前配置的8089.

5 .下面就是在電腦端創建客戶端了,用網絡調試助手,創建如下,并成功連接服務器,連接上后,模塊會響應CONNECT。


6 .連接服務器后,WIFI模塊想知道連接上來的客戶端ID編號,IP地址,端口號的相關信息,可以通過指令:AT+ CIPSTATUS。指令介紹:

指令發送,可以獲得客戶端信息,顯示的是0號客戶端:

7.下面可以進行雙方通信,首先客戶端給服務器發消息:

需要注意的是:由于模塊內部有定時機制,如果雙方長時間沒通信,連接會被自動斷開!

8.服務器給客戶端發消息,需要通過指令AT+CIPSEND=0,5(多路連接下)。該指令指對0號客戶端發5字節數,如果實際發的字節超過5,會被截取前面5個。發送完后,模塊返回字符‘>’,此時AT指令失效,用戶可以任意發自己想要的信息,發送成功,返回“SEND OK”。

指令發送如圖,模塊返回字符‘>’:

任意發送想要的5字節數,發送成功返回“SEND OK”:

9.上面就是雙方的通信過程,如果想要關閉連接,可以通過指令AT+CIPCLOSE=0(多連接模式),可以將0號客戶端關閉連接。

指令發送如圖:


四. 將模塊作為客戶端

將模塊作為客戶端,應在WIFI模塊作為路由器的基本配置下,再進行如下的操作。

1.通過網絡調試助手創建服務器,服務器IP必須為電腦連接路由器后的本機IP。這樣才能確保在局域網下的同網段。

2.模塊復位。AT+RST,成功后返回ready。同上,不做詳細介紹
。

3.配置為多連接。AT+CIPMUX=1,即:模塊作為服務器時,可以被多個客戶端連接,若作為客戶端時,可以連接多個服務器。同上,不做詳細介紹。

4.不作為服務器。AT+CIPSERVER=0。
指令發送如下:

5.連接到服務器,通過指令:AT+CIPSTART= “TCP”, “192.168.4.2”, 9085 意思為:建立TCP連接到IP為192.168.4.2,端口9085的服務器
指令介紹:

指令發送如下,若連接成功將返回CONNECT OK,并且在網絡調試助手顯示連接進來的客戶端IP。

6.雙方數據通信,服務器給客戶端發,只要直接在網絡調試助手里發送想發的信息就行。如圖:

7.客戶端給服務器發消息,需要通過指令:AT+CIPSEND=0,6(多路連接下)。該指令指對0號服務器發6字節數,如果實際發的字節超過6,會被截取前面6個。AT+CIPSEND指令詳解見上。
指令發送如圖:

出現‘>’字符就可以發送想發的數據:

  • 以上就是對ESP8266WIFI模塊作為服務器和客戶端的使用過程,重點是掌握AT指令的使用和理解。該模塊不僅用于通信,還自帶了很多其他功能,如可以輸出多路PWM,ADC等功能,可謂短小精悍。
2.ESP8266 WIFI模塊實現遠程wifi控制








如果你剛買了一個ESP8266板,你可以用樹莓派直接與它通信。由于它們都是使用3.3V的信號,所以不需要電平轉換。

第一步:所需材料
  • 樹莓派的桌面設置(任何PI都應該有的,但與電池、鍵盤、屏幕和網絡等接入更佳)
  • esp8266-01
  • 一些跳線、鉗子和剝離器
  • 無焊面包板
  • 2個上拉、下拉電阻
  • 按鍵開關(可選)


第二步:接線
如圖。

第三步:配置Raspbian Linux
啟動樹莓派和超級用戶進行編輯(如: “sudo nano”)。
  • 禁用內核串口控制臺
在文件Edit /boot/cmdline.txt ,去除:
dwc_otg.lpm_enable=0 rpitestmode=1 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait
  • [tr]禁用串口登錄
在文件 /etc/inittab 去除(通常是)最后一行:
2:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
  • 重啟:sudo shutdown -r now


第四步:開始與ESP8266通信

  • 連接到串行端口
[tr]你現在應該能夠通過終端仿真程序與ESP8266互動。
[tr]
  • 備注/說明
[tr]如果你試圖使用復位按鈕,效果可能不好。[tr]最好關掉樹莓派,然后切斷電源再重啟。
[tr]當接通電源時不要亂拔電線。[tr]關掉樹莓派("sudo shutdown -h now"),等任何發光二極管閃爍停止并斷開電源再嘗試連接/斷開電線。
[tr]這個鏈接本身無法通過ESP8266給你樹莓派網絡接口[tr]。[tr]但它至少讓你嘗試,配置,甚至改變它。
[tr]如果你只是關閉一個窗口或斷開連接,屏幕仍然串行端口不變的。
[tr]樹莓派和ESP8266可以使用大量的電力。[tr]這種設置只依賴于樹莓派的3.3V電源,如果兩個設備都全力啟動,可能是不夠的。[tr]一個更可靠的和永久性的解決方案,為ESP8266提供獨立電源。





如果你剛買了一個ESP8266板,你可以用樹莓派直接與它通信。由于它們都是使用3.3V的信號,所以不需要電平轉換。

第一步:所需材料
  • 樹莓派的桌面設置(任何PI都應該有的,但與電池、鍵盤、屏幕和網絡等接入更佳)
  • esp8266-01
  • 一些跳線、鉗子和剝離器
  • 無焊面包板
  • 2個上拉、下拉電阻
  • 按鍵開關(可選)


第二步:接線
如圖。

第三步:配置Raspbian Linux
啟動樹莓派和超級用戶進行編輯(如: “sudo nano”)。
  • 禁用內核串口控制臺
在文件Edit /boot/cmdline.txt ,去除:
dwc_otg.lpm_enable=0 rpitestmode=1 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait
  • [tr]禁用串口登錄
在文件 /etc/inittab 去除(通常是)最后一行:
2:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
  • 重啟:sudo shutdown -r now


第四步:開始與ESP8266通信

  • 連接到串行端口
你現在應該能夠通過終端仿真程序與ESP8266互動。

  • 備注/說明
如果你試圖使用復位按鈕,效果可能不好。[tr]最好關掉樹莓派,然后切斷電源再重啟。
當接通電源時不要亂拔電線。[tr]關掉樹莓派("sudo shutdown -h now"),等任何發光二極管閃爍停止并斷開電源再嘗試連接/斷開電線。
這個鏈接本身無法通過ESP8266給你樹莓派網絡接口[tr]。[tr]但它至少讓你嘗試,配置,甚至改變它。
如果你只是關閉一個窗口或斷開連接,屏幕仍然串行端口不變的。
樹莓派和ESP8266可以使用大量的電力。[tr]這種設置只依賴于樹莓派的3.3V電源,如果兩個設備都全力啟動,可能是不夠的。一個更可靠的和永久性的解決方案,為ESP8266提供獨立電源。




回復

使用道具 舉報

9#
ID:373010 發表于 2018-7-26 21:17 | 只看該作者
devcang 發表于 2018-7-25 20:48
先進入透傳模式

兄臺,我已經試過無效。
其實我就是啟動了單片機,向esp8266發送了一個AT+CWMODE=3,理論上發送后,可以在手機上搜索到這個wifi的,但是就是看不到。
回復

使用道具 舉報

10#
ID:373010 發表于 2018-7-26 21:21 | 只看該作者
小貓貓愛吃魚 發表于 2018-7-26 09:09
這個需要你耐心來調試,給你兩個不同方式的控制實例你看看

ESP8266配置成服務器(PC或單片機發指令):1 ...

謝謝兄臺指點!
我的TXD,RXD和單片機的TXD,RXD連接方法是和你一樣的。
就是供電是獨立的,地線和開發板的gnd共地,但是發送指令依然無效,請問這個是否存在問題?
AT+CWMODE=3這個指令讓wifi模塊變成ap,理論上手機就可以看到了,但實際無效。

我寫法是
send_str("AT+CWMODE=2\r\n");

void send_byte(unsigned char c)
{
ES = 0;
        TI=0;
        SBUF = c;
while(!TI);

TI = 0;
        ES = 1;
}

void send_str(unsigned char *s)
{
while(*s != '\0')
{
  send_byte(*s);
  s++;
}
}
回復

使用道具 舉報

11#
ID:241423 發表于 2018-7-29 08:19 | 只看該作者
stinfo 發表于 2018-7-26 21:21
謝謝兄臺指點!
我的TXD,RXD和單片機的TXD,RXD連接方法是和你一樣的。
就是供電是獨立的,地線和開發板 ...

請問巨佬解決了沒有,我也在這里打轉
回復

使用道具 舉報

12#
ID:308437 發表于 2018-7-29 09:35 | 只看該作者
那個你先測試保證你單片機發送的指令是對的(用串口看一下,保證不是亂碼),還有,波特率記得要匹配(8266出廠默認波特率有9600也有115200的),然后再重新測試一下,應該是可以的。除非你模塊壞了
回復

使用道具 舉報

13#
ID:532836 發表于 2019-5-19 14:27 | 只看該作者
大佬誰有解決方案嗎
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产精品揄拍一区二区 | 精品视频在线一区 | 久久久久国产一区二区三区 | 亚洲视频www| 亚洲欧美中文日韩在线v日本 | av电影一区 | 日韩一区二区久久 | 亚洲va在线va天堂va狼色在线 | 久久久久久久久久久高潮一区二区 | 91黄色免费看 | 日韩影院一区 | 国产精品视频观看 | 亚洲国产成人精品女人久久久 | 日本天天操 | 狠狠躁天天躁夜夜躁婷婷老牛影视 | 国产区在线免费观看 | 日日摸日日爽 | 成人午夜视频在线观看 | 岛国精品 | 久久久.com | 成人欧美一区二区三区 | 亚洲一区二区三区免费在线观看 | 日韩a在线 | 久草免费视 | 精品亚洲一区二区三区四区五区高 | 国产精品久久久久久妇女6080 | 成人福利在线观看 | 国产欧美一区二区三区在线播放 | 日本中文字幕在线观看 | 成人av播放| 在线日韩不卡 | 在线视频亚洲 | 欧美一级欧美三级在线观看 | 亚洲伊人久久综合 | 日韩中文字幕在线视频观看 | 干出白浆视频 | 日本免费在线观看视频 | 91久久精品国产 | 亚洲精品国产偷自在线观看 | 日干夜干 | 国产视频第一页 |