0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

esp8266如何破解wifi密碼及詳細(xì)步驟

姚小熊27 ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2018-05-24 08:57 ? 次閱讀

ESP8266連接wifi

1、建立工程

我開(kāi)發(fā)的時(shí)候比較早,用的是NONOS_v1.5.0的sdk,最新的v2.1.0的sdk燒錄好固件后,上電會(huì)一直出Fatal exception 28的錯(cuò)誤,搞了一天沒(méi)弄清楚,所以用還留著的v1.5.3的sdk講解,具體使用方法不會(huì)有很大改變,詳細(xì)也可以參考API文檔。

打開(kāi)解壓sdk包,將example文件夾下的IOT_Demo復(fù)制替換到app文件夾下,并將driver_lib/include/driver下的uart.h、uart_register.h復(fù)制到app/include下,driver_lib/driver下uart.c復(fù)制到app/driver下,同時(shí)將driver_lib下Makefile文件改名或者刪除,懂makefile的朋友可以自行修改makefile文件否則會(huì)出現(xiàn)編譯錯(cuò)誤,目錄結(jié)構(gòu)如下。

esp8266如何破解wifi密碼及詳細(xì)步驟

我們主要修改的是user_main.c這個(gè)文件,將user_init()函數(shù)是程序入口,里的內(nèi)容全刪了

此外頭文件修改為

#include “ets_sys.h”

#include “osapi.h”

#include “user_interface.h”

#include “uart.h”1234

user_rf_pre_init()這個(gè)函數(shù)不要?jiǎng)h除,放著即可,這樣user_main.c文件只有void user_rf_pre_init(void)、void user_init(void)這兩個(gè)函數(shù),以及4個(gè)頭文件。

2、連接wifi

要連接wifi首先要指定要連接的wifi賬號(hào)和密碼,則需要定義兩個(gè)變量來(lái)存放它們,同時(shí)還需要定義一個(gè)結(jié)構(gòu)體用于存放:Wi-Fi Station 接口參數(shù)

struct station_config station_cfg;

uint8 ssid[]=“xxx”; //wifi名

uint8 password[]=“xxx”; //wifi密碼123

新買(mǎi)到的模塊默認(rèn)是作為AP,這里我們需要將它修改作為Station,這樣才能連wifi,這里我將這幾個(gè)操作放入一個(gè)函數(shù)里面。

void ICACHE_FLASH_ATTR

user_set_station_config(void)

{

wifi_set_opmode(STATION_MODE); //設(shè)置為STATION MODE

os_strcpy(station_cfg.ssid, ssid); //ssid名稱(chēng)

os_strcpy(station_cfg.password, password); //密碼

wifi_station_set_config(&station_cfg); //設(shè)置WIFI帳號(hào)和密碼

}12345678

注:添加ICACHE_FLASH_ATTR宏定義是因?yàn)?266的iRam空間有限,所以上電啟動(dòng)時(shí)不能把所有數(shù)據(jù)都放入iRam,只有在需要用到的時(shí)候才載入,因此推薦一般的函數(shù)都加ICACHE_FLASH_ATTR。

這樣我們就能把這個(gè)函數(shù)放到user_init()中了,如下所示。

void user_init(void)

{

uart_init(BIT_RATE_115200,BIT_RATE_115200); //設(shè)置波特率為115200

os_printf(“SDK version:%s\n”, system_get_sdk_version()); //打印sdk版本

user_set_station_config(); //set STATION config

//user_set_station_config()中調(diào)用wifi_station_set_config(&station_cfg)

//底層會(huì)自動(dòng)連接對(duì)應(yīng)路由,不需要調(diào)用 wifi_station_connect 來(lái)進(jìn)行連接。

}12345678

編譯通過(guò)后燒入固件就能查看效果了。

esp8266如何破解wifi密碼及詳細(xì)步驟

esp8266如何破解wifi密碼及詳細(xì)步驟

1、esp8266模塊

首先,你要有一塊esp8266模塊,像這樣的,最好是有底板的,帶Micro口的,這些淘寶上都可以搜到的,我的就是淘寶上買(mǎi)的,大概30-40RMB左右,當(dāng)然,如果你的動(dòng)手能力比較強(qiáng)的話可以自己做底板。

2、將固件下載到esp8266中

在這里你需要下載兩個(gè)東西,就是Flash下載工具和固件

Flash下載工具:http://espressif.com/zh-hans/support/download/other-tools

將自己的esp8266插到電腦上,確定連接沒(méi)問(wèn)題的話打開(kāi)設(shè)備管理器看下自己的串口是多少。

將下載的Flash下載工具解壓,打開(kāi)ESPFlashDownloadTool_v3.4.9.2.exe,打開(kāi)是這樣的,選擇esp8266 DownloadTool

esp8266如何破解wifi密碼及詳細(xì)步驟

在這里需要注意的幾點(diǎn)是:

(1)固件選擇之前下載的固件DNS.ino.ino.nodemcu.bin。

(2)地址輸入0×00000(可能地址這一欄會(huì)出現(xiàn)紅色的狀況,導(dǎo)致無(wú)法燒入固件,此時(shí)把下載器關(guān)了重啟下,然后把地址那欄清空再自己手動(dòng)輸入就好了)。

(3)這邊需要將DoNotChgBin勾選起來(lái),否則燒入固件后可能沒(méi)有wifi,當(dāng)然不同的板子可能不太一樣,這個(gè)請(qǐng)大家自行測(cè)試。

(4)這邊串口按照自己之前查的選擇就行了,波特率115200就可以了。

其他設(shè)置按照紅框里面的選擇就行。

esp8266如何破解wifi密碼及詳細(xì)步驟

設(shè)置完這些后就點(diǎn)擊START開(kāi)始燒flash,燒完后如果模塊正常的話電腦會(huì)多出來(lái)一個(gè)叫HH的wifi,這個(gè)wifi就是esp8266發(fā)出來(lái)的。

如果沒(méi)有顯示HH,就按下esp8266的RST鍵復(fù)位,等個(gè)幾秒鐘就會(huì)顯示出來(lái)。此時(shí)你就可以連接HH了。wifi的密碼為:m1234567

注:如果通過(guò)上面的方法還沒(méi)有顯示wifi的話,你可以試試擦除flash,擦除flash的方法請(qǐng)參考:http://bbs.eeworld.com.cn/thread-497588-1-1.html。在這里我就不詳述了,擦完大概是下圖的樣子,然后重新按照上面的步驟燒flash就可以了。

esp8266如何破解wifi密碼及詳細(xì)步驟

3、用arduino上傳web到esp8266

到arduino官網(wǎng)下載適合你自己系統(tǒng)的軟件:https://www.arduino.cc/en/Main/Software

web源碼:http://pan.baidu.com/s/1miywNT

web源碼上傳工具:http://pan.baidu.com/s/1o8cEc7

我的是Windows系統(tǒng),arduino版本是1.8.4,安裝完后打開(kāi)工具——開(kāi)發(fā)板——開(kāi)發(fā)板管理器,此時(shí)會(huì)自動(dòng)更新,過(guò)個(gè)數(shù)分鐘更新完畢后(當(dāng)然,如果用外網(wǎng)的話可能幾秒鐘就能解決),搜索eps8266,選擇第二個(gè),版本選2.2.0,然后安裝。

esp8266如何破解wifi密碼及詳細(xì)步驟

將上面解壓后的web源碼上傳工具的tools放到Arduino根目錄里合并,然后返回以下界面,點(diǎn)擊文件——新建,新建一個(gè)項(xiàng)目,將里面的代碼清空,然后點(diǎn)擊文件——保存,將項(xiàng)目保存到一個(gè)你能找到的位置,點(diǎn)擊工具——esp8266 sketch data upload,會(huì)出現(xiàn)以下的提示,選擇No,會(huì)發(fā)現(xiàn)新建的項(xiàng)目中多出來(lái)一個(gè)data文件夾,里面是空的,然后將上面下載的web源碼\data里面的三個(gè)文件復(fù)制到這個(gè)文件夾里面。

esp8266如何破解wifi密碼及詳細(xì)步驟

然后再返回arduino,點(diǎn)擊工具,開(kāi)發(fā)板按照自己買(mǎi)的選擇,端口選擇自己的端口,其他設(shè)置如下圖紅框里面的。

esp8266如何破解wifi密碼及詳細(xì)步驟

設(shè)置完后點(diǎn)擊esp8266 sketch data upload,這時(shí)不會(huì)出現(xiàn)提醒,開(kāi)始上傳web頁(yè)面,等個(gè)1分鐘左右esp8266上的藍(lán)燈不閃爍了就表示上傳完了。

然后電腦連接HH的wifi,瀏覽器輸入192.168.1.1/backdoor.html就能進(jìn)入web頁(yè)面了,如下圖,路由器型號(hào)選擇通用型,然后輸入你測(cè)試的wifi編號(hào),點(diǎn)確定,電腦提示SSID偽造成功,手機(jī)就會(huì)發(fā)現(xiàn)出現(xiàn)了個(gè)和你測(cè)試的wifi一樣的沒(méi)有加密的wifi,原來(lái)的HH會(huì)不見(jiàn)了,8266的藍(lán)燈常亮,手機(jī)連接那個(gè)wifi后過(guò)幾秒會(huì)自動(dòng)彈出路由器升級(jí)的頁(yè)面,然后輸入管理員密碼,點(diǎn)擊開(kāi)始升級(jí),此時(shí)你的esp8266會(huì)將管理員密碼保存,升級(jí)完后,8266的燈就會(huì)滅掉。

esp8266如何破解wifi密碼及詳細(xì)步驟

電腦重新連接HH,進(jìn)入web頁(yè)面后管理員密碼會(huì)在下面的紅框這一塊顯示,這時(shí),就表示獲取密碼成功了。

esp8266如何破解wifi密碼及詳細(xì)步驟

ESP8266設(shè)置熱點(diǎn)步驟

將ESP8266設(shè)置為一個(gè)熱點(diǎn),可供其他設(shè)備連接并交換數(shù)據(jù),主要使用的函數(shù):WiFi.softAP(ssid, password, channel, hidden)。

參數(shù)說(shuō)明:

ssid:Wifi熱點(diǎn)名稱(chēng),支持最大63個(gè)英文字符;

password:密碼設(shè)置,可選參數(shù),也就是可以沒(méi)有密碼,如果設(shè)定為WPA2-PSK;

channel:信道設(shè)置,可選參數(shù),1-13,沒(méi)有填寫(xiě)則默認(rèn)為1;

hidden:是否隱藏SSID,可選參數(shù),如果設(shè)置為true則隱藏。

ESP8266開(kāi)啟的默認(rèn)IP地址為192.168.4.1,可以使用softAPConfig (local_ip, gateway, subnet) 函數(shù)進(jìn)行修改。

參數(shù)說(shuō)明:

local_ip:軟熱點(diǎn)的地址;

gateway:網(wǎng)關(guān)地址;

subnet:子網(wǎng)掩碼。

程序流程:

1、連接NodeMCU板子到USB接口,打開(kāi)Arduino IDE編輯器界面,選擇好開(kāi)發(fā)板型號(hào)和串口號(hào)。

2、在Arduino IDE的編輯器界面,開(kāi)始部分添加頭文件。

[cpp] view plain copy#include 《ESP8266WiFi.h》

3、聲明各IP地址。

[cpp] view plain copyIPAddress local_IP(192,168,4,4);

IPAddress gateway(192,168,4,1);

IPAddress subnet(255,255,255,0);

4、配置軟AP參數(shù)。

[cpp] view plain copyWiFi.softAPConfig(local_IP, gateway, subnet);

5、啟動(dòng)AP模式。

[cpp] view plain copyWiFi.softAP(“SoftAP001”,“123456789”);

6、獲取IP地址。

[cpp] view plain copySerial.print(“Soft-AP IP address = ”);

Serial.println(WiFi.softAPIP());

下載完成后,在手機(jī)或筆記本上Wifi可以搜到設(shè)置的AP。

整體代碼如下:

[cpp] view plain copy#include 《ESP8266WiFi.h》

IPAddress local_IP(192, 168, 4, 4);

IPAddress gateway(192, 168, 4, 1);

IPAddress subnet(255, 255, 255, 0);

void setup() {

// put your setup code here, to run once:

Serial.begin(115200);

WiFi.softAPConfig(local_IP, gateway, subnet);

WiFi.softAP(“SoftAP001”, “123456789”);

Serial.print(“Soft-AP IP address = ”);

Serial.println(WiFi.softAPIP());

}

void loop() {

// put your main code here, to run repeatedly:

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • WIFI
    +關(guān)注

    關(guān)注

    81

    文章

    5280

    瀏覽量

    203080
  • ESP8266
    +關(guān)注

    關(guān)注

    50

    文章

    962

    瀏覽量

    44753
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ESP8266筆記-05.ESP8266 WIFI的使用

    ESP8266是怎么火起來(lái)的?毫無(wú)疑問(wèn)就是他把WIFI模塊的價(jià)格成功的打了下來(lái),在我第一次看到ESP8266僅僅10元成本的開(kāi)發(fā)板竟然可以連接WIFI時(shí),知道對(duì)我幼小的心靈造成多大的震
    發(fā)表于 10-31 18:33

    esp8266加入到c51單片機(jī)單通道程序怎么寫(xiě)

    要將ESP8266模塊加入到C51單片機(jī)的單通道程序中,您需要了解如何通過(guò)串行通信(UART)與ESP8266進(jìn)行通信。以下是如何實(shí)現(xiàn)這一點(diǎn)的步驟和示例代碼。 步驟 1:硬件連接 首先
    的頭像 發(fā)表于 10-18 11:32 ?325次閱讀

    ESP8266 太空人動(dòng)畫(huà)的 OLED 顯示

    ESP8266 太空人動(dòng)畫(huà)的 OLED 顯示
    的頭像 發(fā)表于 10-08 15:06 ?176次閱讀
    <b class='flag-5'>ESP8266</b> 太空人動(dòng)畫(huà)的 OLED 顯示

    STM32 ESP8266阿里云鏈接源碼

    stm32F103C8T6 ESP8266 物聯(lián)網(wǎng)電表 登錄阿里云
    發(fā)表于 08-29 14:21 ?5次下載

    esp32和esp8266代碼共用嗎

    本文將介紹ESP32和ESP8266兩款流行的微控制器在代碼共用性方面的可能性與差異性。 一、引言 隨著物聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,越來(lái)越多的智能設(shè)備開(kāi)始進(jìn)入我們的生活。其中,ESP32和ESP82
    的頭像 發(fā)表于 08-19 18:23 ?892次閱讀

    esp8266esp32區(qū)別是什么

    以下是關(guān)于ESP8266ESP32的主要區(qū)別: 處理器和架構(gòu) : ESP8266 :使用一個(gè)Tensilica L106 80MHz的處理器,屬于Xtensa架構(gòu)。 ESP32 :使
    的頭像 發(fā)表于 08-19 18:16 ?3755次閱讀

    esp8266不燒錄可以使用嗎

    ESP8266是一款非常流行的Wi-Fi模塊,廣泛應(yīng)用于物聯(lián)網(wǎng)項(xiàng)目中。然而,如果不進(jìn)行燒錄,ESP8266將無(wú)法正常工作。 1. ESP8266簡(jiǎn)介 ESP8266是一款由Espres
    的頭像 發(fā)表于 08-19 17:28 ?563次閱讀

    esp8266wifi模塊怎么連接手機(jī)

    ESP8266 WiFi模塊連接手機(jī)主要可以通過(guò)兩種方式實(shí)現(xiàn): 通過(guò)路由器連接(STA模式)和直接作為熱點(diǎn)連接(AP模式) 。以下是兩種連接方式的步驟: 一、通過(guò)路由器連接(STA模式) 配置
    的頭像 發(fā)表于 08-19 17:27 ?1860次閱讀

    是否可以使用esp8266創(chuàng)建熱點(diǎn)并使用此熱點(diǎn)設(shè)置新的wifi詳細(xì)信息?

    我想知道是否可以使用 esp8266 創(chuàng)建熱點(diǎn)并使用此熱點(diǎn)設(shè)置新的 wifi 詳細(xì)信息,在我的項(xiàng)目中,我需要使用移動(dòng)應(yīng)用程序進(jìn)行無(wú)線通信和設(shè)置 wifi
    發(fā)表于 07-19 09:50

    Esp8266未連接到WiFi路由器是怎么回事?

    我最近在 esp8266 mess 演示程序上做一個(gè)項(xiàng)目,我已經(jīng)完成了編譯和刷新過(guò)程,但 esp 設(shè)備沒(méi)有連接到路由器,我已經(jīng)在代碼中提到了 WiFi 的用戶名和密碼,相關(guān)代碼附在下面
    發(fā)表于 07-09 06:15

    ESP8266網(wǎng)絡(luò)天氣時(shí)鐘OLED顯示

    基于ESP8266實(shí)現(xiàn)網(wǎng)絡(luò)獲取天氣和時(shí)鐘并OLED顯示
    的頭像 發(fā)表于 06-28 04:46 ?947次閱讀
    <b class='flag-5'>ESP8266</b>網(wǎng)絡(luò)天氣時(shí)鐘OLED顯示

    國(guó)產(chǎn)低成本W(wǎng)i-Fi SoC解決方案芯片ESP8266ESP8285對(duì)比差異

    ESP8266ESP8285對(duì)比差異 ESP8285相當(dāng)于在ESP8266基礎(chǔ)上多加了1/2MB Flash, ESP8285與
    的頭像 發(fā)表于 05-17 11:44 ?1128次閱讀
    國(guó)產(chǎn)低成本W(wǎng)i-Fi SoC解決方案芯片<b class='flag-5'>ESP8266</b>與<b class='flag-5'>ESP</b>8285對(duì)比差異

    ESP8266實(shí)現(xiàn)TCP控制LED和設(shè)置WIFI密碼

    =089e9c9189991f80be4b4886098da65b#reply151108474896 代碼main.py,通過(guò)網(wǎng)頁(yè)把它傳入ESP8266 micropython固件中即可。如何傳輸自行查找資料吧。本人也忘記如何傳輸了。本文只是為了記錄一下曾經(jīng)寫(xiě)過(guò)的代碼
    的頭像 發(fā)表于 01-08 09:49 ?1697次閱讀

    單片機(jī)怎么連接wifi模塊esp

    連接WiFi模塊ESP8266到單片機(jī)有多種方法和步驟。在這篇文章中,我將為您詳細(xì)介紹如何連接ESP8266模塊到Arduino單片機(jī)。本文
    的頭像 發(fā)表于 12-25 13:42 ?2213次閱讀

    ESP8266 WiFi模塊用戶手冊(cè)V1.0

    電子發(fā)燒友網(wǎng)站提供《ESP8266 WiFi模塊用戶手冊(cè)V1.0.doc》資料免費(fèi)下載
    發(fā)表于 11-17 10:09 ?20次下載
    <b class='flag-5'>ESP8266</b> <b class='flag-5'>WiFi</b>模塊用戶手冊(cè)V1.0