国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

STM32進階學習(1)-ESP01-S的AT指令測試、MQTT原理

這篇具有很好參考價值的文章主要介紹了STM32進階學習(1)-ESP01-S的AT指令測試、MQTT原理。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。


一、什么是ESP01-S

esp01s,stm32,學習,單片機
如圖,不多解釋了。
參數(shù):
esp01s,stm32,學習,單片機
這里注意的是,頻譜范圍是2.4GHZ,所以連接WIFI時只支持2.4HGZ的頻段,不支持5Ghz頻段。另外,供電是3.3V,這里讓單片機給其供電即可。
電路圖:
esp01s,stm32,學習,單片機

二、使用AT指令進行測試

拿到手的ESP01S,首先要驗證其功能是否正常,這里我用ESP01S連接USB轉串口模塊,并與電腦上的串口調試助手進行通信。

1.AT指令

AT命令組成和通訊過程
AT命令由三個部分組成,分別是前綴、主體和結束符。其中前綴由字符 AT 構成;主體由命令、參數(shù)和可能用到的數(shù)據(jù)組成;結束符一般為 (“\r\n”)。

比如 AT+CWMODE=3\r\n 這條命令,AT就是前綴,中間就是主體部分,\r\n 就是結束符。

AT命令通訊過程的實現(xiàn),需要AT Client 和 AT Server 兩部分共同完成。

AT客戶端和AT服務器之間硬件通訊接口,一般最常用的是串口,也有SPI接口等。

AT Client主要作用是主動發(fā)送AT命令,然后等待AT Server的響應數(shù)據(jù),并對響應數(shù)據(jù)或者AT Server主動發(fā)送的數(shù)據(jù)(即URC數(shù)據(jù))進行解析。

AT Server 返回給 AT Client 的數(shù)據(jù)有兩種。命令響應數(shù)據(jù)和 URC 數(shù)據(jù)(unsolicited result code)。

命令響應數(shù)據(jù):AT Client 發(fā)送命令后 AT Server 回應的響應狀態(tài)和信息。

URC數(shù)據(jù):AT Server 主動發(fā)送給 AT Client 的數(shù)據(jù)。比如 AT Server接收到網(wǎng)絡的數(shù)據(jù)后,會主動把這些數(shù)據(jù)發(fā)送給 AT Client ,又或者 WIFI 斷開連接等,也會主動發(fā)數(shù)據(jù)告知 AT Client。

2.基于ESP01的AT指令

命令 功能
AT 回復OK。主要用于查詢模塊是否正常工作
AT+RST 復位模塊
ATE0/ATE1 關閉/打開命令回顯功能
AT+CWMODE=1 設置WIFI模式為 WIFI station 模式
AT+GMR 獲取模塊版本信息
AT+CIFSR 查詢模塊IP地址
AT+CIPMUX=0/1 0:單連接。1:開啟多連接。這時可以支持多個TCP客戶端接入模塊(模塊作為TCP Server)。當使能了多連接之后,后面的有些指令就要帶上連接號了,不然模塊會識別為錯誤的AT指令。
AT+CWJAP=“SSID”,“password” 連接WIFI。SSID是WIFI名稱,password是WIFI密碼。
AT+CIPSTART=“TCP”,“192.168.0.102”,8080 ESP8266作為TCP Client連接到TCP服務器。TCP代表協(xié)議,192.168.0.102是服務器IP,8080是服務器端口。
AT+CIPSEND=n ESP8266模塊向TPC Server發(fā)送數(shù)據(jù),n表示要發(fā)送多少個字節(jié)。如果這條命令發(fā)送成功的話,會回復 OK 然后接著下一行回復 ‘>’ 這個符號。然后再接著向模塊寫入n字節(jié)數(shù)據(jù)(超過n字節(jié)的話,會丟棄超過的數(shù)據(jù)),這個時候就相當于發(fā)送出去了。如果回復 SEND OK 表示發(fā)送成功,回復 SEND FAIL 表示發(fā)送失敗。
+IPD,n:xxxxxxxxxxx 當模塊接收到 TCP Server 發(fā)送的數(shù)據(jù)時,會回復這條數(shù)據(jù)給主芯片(AT Client)。其中n,表示接收到了n字節(jié),: 號后面就是 TCP Server 實際發(fā)送過來的數(shù)據(jù)。
AT+CIPCLOSE ESP8266模塊斷開與 TCP Server 的網(wǎng)絡連接。
AT+CWQAP ESP8266模塊斷開 WIFI 連接。

3.測試

打開串口調試助手,
esp01s,stm32,學習,單片機
AT+GMR指令用于獲取ESP8266模塊的固件版本號和SDK版本號。根據(jù)返回信息,可以得到以下信息:

AT version:模塊使用的AT指令版本號,這里是2.3.0.0-dev。
SDK version:模塊使用的SDK版本號,這里是v3.4-22-g967752e2。
compile time:固件編譯日期和時間,這里是Jun 30 2021 11:28:20。
Bin version:ESP8266模塊的固件版本號,這里是2.2.0(ESP8266_1MB)。
通過這些信息,可以了解ESP8266模塊的軟件版本和開發(fā)時間等信息。
esp01s,stm32,學習,單片機
AT+CIFSR指令用于獲取ESP8266模塊的IP地址。根據(jù)返回信息,可以得到以下信息:
busy p…:這個表示模塊正在忙碌中,可能是在連接WiFi網(wǎng)絡或者建立TCP連接等操作。
+CIFSR:APIP,“192.168.4.1”:這個表示模塊當前的IP地址是192.168.4.1,這是一個局域網(wǎng)IP地址,通常用于ESP8266模塊作為WiFi熱點時的地址。
+CIFSR:APMAC,“ae:0b:fb:f6:98:22”:這個表示模塊當前的MAC地址是ae:0b:fb:f6:98:22,MAC地址是網(wǎng)絡通信中用于識別設備的唯一標識符。
根據(jù)返回信息,可以看出ESP8266模塊當前作為WiFi熱點工作,并且其IP地址是192.168.4.1。

三、MQTT協(xié)議

1.MQTT協(xié)議是什么?

MQTT(Message Queue Telemetry Transport)是一種輕量級的、基于發(fā)布/訂閱模式的消息傳輸協(xié)議,主要用于物聯(lián)網(wǎng)設備與服務器之間的通信。MQTT協(xié)議最初由IBM公司開發(fā),目前已經(jīng)成為一種開放的、國際標準的協(xié)議。

MQTT協(xié)議的特點如下:
輕量級:MQTT協(xié)議設計非常簡潔,傳輸?shù)南㈩^部非常小,可以在網(wǎng)絡帶寬較小的情況下快速傳輸數(shù)據(jù)。
發(fā)布/訂閱模式:MQTT協(xié)議采用發(fā)布/訂閱模式,可以將各種設備、傳感器、應用程序等連接在一起,形成一個可擴展的網(wǎng)絡。
QoS級別:MQTT協(xié)議支持三種QoS級別,可以確保消息的可靠傳輸。QoS 0表示最多一次傳輸,QoS 1表示至少一次傳輸,QoS 2表示恰好一次傳輸。
保留消息:MQTT協(xié)議支持保留消息,可以將最新的消息保留在服務器上,以供新的訂閱者使用。
遺囑消息:MQTT協(xié)議支持遺囑消息,可以在客戶端異常斷開時,向服務器發(fā)送一條遺囑消息,以通知其他客戶端。
安全性:MQTT協(xié)議支持TLS/SSL加密傳輸,可以確保消息的安全性。

2.topic和payload

MQTT協(xié)議中的消息由兩個部分組成:topic和payload。其中,topic表示消息的主題,payload表示消息的內(nèi)容。

Topic是一個字符串,用于標識消息的主題。在MQTT中,topic采用樹形結構組織,以“/”分隔不同的層級。例如,一個topic可以是“/sensors/temperature”,表示溫度傳感器的數(shù)據(jù)。在訂閱和發(fā)布消息時,需要指定相應的topic。

Payload是消息的內(nèi)容,可以是任意格式的數(shù)據(jù)。在MQTT中,payload可以是二進制數(shù)據(jù)、JSON數(shù)據(jù)、XML數(shù)據(jù)等,具體格式由應用程序自行定義。Payload的大小可以根據(jù)實際情況進行調整,通常建議不要超過最大的消息限制。

在MQTT中,訂閱者可以訂閱多個不同的topic,以接收不同的消息。當一個消息被發(fā)布時,MQTT服務器會將該消息轉發(fā)給所有訂閱了相應topic的客戶端。這種發(fā)布/訂閱的模式可以實現(xiàn)一對多的消息傳輸,使得MQTT協(xié)議具有很強的擴展性和靈活性。

3.MCU如何利用MQTT協(xié)議?

首先,傳感器要采集數(shù)據(jù),可以用各種模塊采集比如溫濕度、光照強度、距離等等數(shù)據(jù)。

然后,將數(shù)據(jù)與主題等信息按照特定的格式打包成MQTT協(xié)議包。

接著,通過TCP傳輸?shù)組QTT服務器上。

下一步,MQTT服務器根據(jù)主題和信息向訂閱了此主題的設備發(fā)送MQTT協(xié)議包。

最后,接收端按照規(guī)則解析協(xié)議包,并提取數(shù)據(jù)。

4.MQTT的服務器、客戶端

在MQTT協(xié)議通訊中,有兩個最為重要的角色。它們分別是服務端和客戶端。首先我們來初步了解一下它們。

MQTT服務端
MQTT服務端通常是一臺服務器。它是MQTT信息傳輸?shù)臉屑~,負責將MQTT客戶端發(fā)送來的信息傳遞給MQTT客戶端。MQTT服務端還負責管理MQTT客戶端。確??蛻舳酥g的通訊順暢,保證MQTT消息得以正確接收和準確投遞。

MQTT客戶端
MQTT客戶端可以向服務端發(fā)布信息,也可以從服務端收取信息。我們把客戶端發(fā)送信息的行為成為“發(fā)布”信息。而客戶端要想從服務端收取信息,則首先要向服務端“訂閱”信息?!坝嗛啞毙畔⑦@一操作很像我們在視頻網(wǎng)站訂閱某一部電視劇。當這部電視劇上新后,視頻網(wǎng)站會向訂閱了該劇的用戶發(fā)送信息,告訴他們有新劇上線了。

MQTT主題
剛剛我們在講解MQTT客戶端訂閱信息時,使用了用戶在視頻網(wǎng)站訂閱電視劇這個例子。在MQTT通訊中,客戶端所訂閱的肯定不是一部部電視劇,而是一個個“主題”。MQTT服務端在管理MQTT信息通訊時,就是使用“主題”來控制的。

1.如何讓客戶端連接到服務器端?

首先MQTT客戶端將會向服務端發(fā)送連接請求。該請求實際上是一個包含有連接請求信息的數(shù)據(jù)包。這個數(shù)據(jù)包的官方名稱為CONNECT。
esp01s,stm32,學習,單片機

MQTT服務端收到客戶端連接請求后,會向客戶端發(fā)送連接確認。同樣的,該確認也是一個數(shù)據(jù)包。這個數(shù)據(jù)包官方名稱為CONNACK。
esp01s,stm32,學習,單片機

以上就是MQTT客戶端在連接服務端的兩步操作。接下來,我們一起來了解一下客戶端在連接服務端時所發(fā)送的CONNECT報文內(nèi)容。

CONNECT – 連接服務端
在上面的描述中我們看到。MQTT客戶端要想連接服務端,首先要向服務端發(fā)送CONNECT報文。如果此CONNECT報文的格式或內(nèi)容不符合MQTT規(guī)范,則服務器會拒絕客戶端的連接請求。

下圖是CONNECT報文所包含的信息內(nèi)容。
esp01s,stm32,學習,單片機

所謂報文就是一個MQTT數(shù)據(jù)包。這個數(shù)據(jù)包中可能包含有多個信息。比如以上圖片就是描繪了一個CONNECT報文(數(shù)據(jù)包)的詳細內(nèi)容。

在這個CONNECT報文(數(shù)據(jù)包)中包含有多個信息。上圖左側欄中的內(nèi)容是CONNECT報文所包含的信息名稱。右側是信息的具體內(nèi)容。如上圖示例中,此CONNECT報文包含有名稱為clientId的信息,該信息的內(nèi)容是”client-1″。當然,上圖只是一個示例,不是所有的CONNECT報文中的clientId信息內(nèi)容都是”client-1″。

另外也請注意,上圖中有些信息名稱旁邊標注了“可選”字樣,而有些則沒有。那些沒有標注“可選”字樣的信息是必須包含在CONNECT報文中的。而對于標注了“可選”字樣的信息,CONNECT報文既可以包含它們也可以沒有它們。

(1)CONNECT報文具體內(nèi)容

clientId – 客戶端ID
ClientId是MQTT客戶端的標識。MQTT服務端用該標識來識別客戶端。因此ClientId必須是獨立的。如果兩個MQTT客戶端使用相同ClientId標識,服務端會把它們當成同一個客戶端來處理。通常ClientId是由一串字符所構成的,如上圖所示,此示例中的clientID是“client-1”。

cleanSession – 清除會話
所謂“清除會話”這一翻譯源自MQTT官方文檔中文版。要說明cleanSession的具體含義,首先要從MQTT網(wǎng)絡環(huán)境講起。MQTT客戶端與服務端的連接可能不是非常穩(wěn)定,在不穩(wěn)定的網(wǎng)絡環(huán)境下,要想保證所有信息傳輸都能夠做到準確無誤,這是非常困難的。因此,我們就要根據(jù)客戶端對系統(tǒng)運行的重要性來區(qū)別對待。有些MQTT客戶端對整個系統(tǒng)運行起著關鍵作用,這些客戶端一定要準確無誤的收到服務端發(fā)來的報文。比如一輛自動駕駛汽車的導航系統(tǒng)。假如這個導航系統(tǒng)錯過了服務端發(fā)來的報文,可能會導致交通事故甚至人員傷亡。因此,即使網(wǎng)絡不是非常穩(wěn)定,我們?nèi)匀灰笃噷Ш较到y(tǒng)一定要準確無誤的收到服務端所發(fā)來的報文。
但是有些MQTT客戶端對整個系統(tǒng)運行并不是很重要。比如同樣是這輛自動駕駛汽車。它的音樂播放系統(tǒng)如果沒有及時收到服務端發(fā)來的音樂播放報文,這對駕駛系統(tǒng)來說影響不大。

以上所舉的兩個例子說明,MQTT通訊中有些客戶端必須準確無誤的收到報文,有些則不需要。
為了保證重要的MQTT報文可以被客戶端準確無誤的收到。在服務端向客戶端發(fā)送報文后,客戶端會向服務端返回一個確認報文。如果服務端沒有收到客戶端返回的確認報文,那么服務端就會認為剛剛發(fā)送給客戶端的報文沒有被準確無誤的送達。在這種情況下,服務端將會執(zhí)行以下兩個操作:
操作1:將尚未被客戶端確認的報文保存起來
操作2:再次嘗試向客戶端發(fā)送報文,并且再次等待客戶端發(fā)來確認信息。
講到這里就要看看cleanSession的作用了。
如果cleanSession 被設置為“true”。那么服務端不需要客戶端確認收到報文,也不會保存任何報文。在這種情況下,即使客戶端錯過了服務端發(fā)來的報文,也沒辦法讓服務端再次發(fā)送報文。其實我們從字面上也很容易理解。cleanSession 的第一個詞是clean。這個詞的意思是clean(干凈)的。服務端一旦發(fā)送完報文,就會把報文忘得“干干凈凈”了。
反過來,如果我們將cleanSession 設置為”false”。那么服務端就知道,后續(xù)通訊中,客戶端可能會要求我保存沒有收到的報文。
從以上的描述不難看出,如果某個客戶端用于收發(fā)非常重要的信息(比如前文示例中汽車自動駕駛系統(tǒng)),那么該客戶端在連接服務端時,應該將cleanSession設置為”false”*。這樣才能讓服務端保存那些沒有得到客戶端接收確認的信息。以便服務端再次嘗試將這些重要信息再次發(fā)送給客戶端。
相反的,如果某個客戶端用于收發(fā)不重要的信息(比如前文示例中車載音樂系統(tǒng))那么該客戶端在連接服務端時,應該將cleanSession設置為”true”。
請注意,如果需要服務端保存重要報文,光設置cleanSession 為false是不夠的,還需要傳遞的MQTT信息QoS級別大于0。
如果想讓服務器記住重要報文,那么客戶端在連接服務端時,需要把cleanSession中設置為false。這一點非常關鍵,請務必牢記。

keepAlive – 心跳時間間隔

MQTT服務端運行過程中,當有客戶端因為某種原因斷開了與服務端的連接,服務端需要實時了解這一情況。KeepAlive (心跳時間間隔)正是用于服務端了解客戶端連接情況的。不過關于KeepAlive (心跳時間間隔)目前講解還為時過早,我們會在后續(xù)的課程中給您做詳細介紹。目前您只需要記住,KeepAlive用于服務端實時了解客戶端是否與其保持連接的情況。

(2)CONNACK報文詳細內(nèi)容。

CONNACK – 確認連接請求
下圖是CONNACK報文所包含的信息內(nèi)容。
esp01s,stm32,學習,單片機

returnCode – 連接返回碼

當服務端收到了客戶端的連接請求后,會向客戶端發(fā)送returnCode(連接返回碼),用以說明連接情況。如果客戶端與服務端成功連接,則返回數(shù)字“0”。如果未能成功連接,連接返回碼將會是一個非零的數(shù)值,具體這個數(shù)值的含義,請見下表:

返回碼 返回碼描述
0 成功連接
1 連接被服務端拒絕,原因是不支持客戶端的MQTT協(xié)議版本
2 連接被服務端拒絕,原因是不支持客戶端標識符的編碼。可能造成此原因的是客戶端標識符編碼是UTF-8,但是服務端不允許使用此編碼。
3 連接被服務端拒絕,原因是服務端不可用。即,網(wǎng)絡連接已經(jīng)建立,但MQTT服務不可用。
4 連接被服務端拒絕,原因是用戶名或密碼無效。
5 連接被服務端拒絕,原因是客戶端未被授權連接到此服務端。

sessionPresent – 當前會話

要說明sessionPresent,首先我們要回顧一下CONNECT報文中的cleanSession – 清除會話。

我們還用自動駕駛汽車為例。對于自動駕駛汽車來說,自動導航系統(tǒng)屬于非常重要的MQTT客戶端。服務端發(fā)送給導航系統(tǒng)的報文必須要準確無誤的送達。相反,音樂播放系統(tǒng)就不那么重要了。即使音樂播放系統(tǒng)錯過服務端發(fā)送的報文也沒有關系。

對于不重要的MQTT客戶端,它們在向服務器發(fā)送連接請求時,CONNECT報文中的cleanSession通常設置為true。原因是這類不重要的MQTT客戶端即使丟失信息也不會影響整體系統(tǒng)運行。因此服務端在看到客戶端的cleanSession為true時,就不會保存發(fā)送給它們的信息。

然而對于汽車導航系統(tǒng)這類重要的MQTT客戶端來說。當它在連接服務端時,cleanSession肯定時設置為false。原因是重要客戶端需要服務端確保信息發(fā)送準確無誤。如果服務端發(fā)現(xiàn)發(fā)送給重要客戶端的信息沒有得到確認,會將報文進行保存。

當重要客戶端連接服務端時,服務端可能保存著沒有得到確認的報文。如果是這樣的話,那么客戶端在連接服務端時,就會通過sessionPresent來了解服務端是否有之前未能確認的信息。

下面我們分幾種情況來講述sessionPresent的作用。

首先,當客戶端發(fā)送的CONNECT報文中的cleanSession設置為true。在這種情況下,客戶端是不需要服務端保存任何報文的。那么服務端發(fā)送的確認連接CONNACK報文中,sessionPresent肯定是false,也就是說,服務端沒有保存任何報文。

當客戶端發(fā)送的CONNECT報文中的cleanSession設置為false時,客戶端是要求服務端保存報文的。在這種情況下,如果服務端的確保存了沒有收到客戶端接收確認的報文信息,那么cleanSession為true,否則為false。

簡言之,CONNACK報文的sessionPresent與CONNECT報文的cleanSession相互配合。其作用是客戶端發(fā)送連接請求時,服務端告知客戶端有沒有保存報文信息。這個被服務端保存的報文信息是來自于上一次客戶端連接時,服務端曾經(jīng)發(fā)送此報文給客戶端,但是發(fā)送后沒有收到客戶端接收確認。

2.QOS等級

MQTT協(xié)議中定義了三個服務質量等級(QoS,Quality of Service),分別是QoS0、QoS1和QoS2。

QoS0:最多一次(At most once),消息發(fā)布者只發(fā)送一次消息,不保證消息能夠被接收端接收到;
QoS1:最少一次(At least once),消息發(fā)布者保證消息至少被接收端接收一次,但可能會重復發(fā)送;
QoS2:恰好一次(Exactly once),消息發(fā)布者保證消息恰好被接收端接收一次,確保消息不會重復發(fā)送。
QoS等級越高,消息傳輸?shù)目煽啃栽礁?,但同時也會增加網(wǎng)絡通信的負擔和延遲。在選擇QoS等級時需要根據(jù)實際場景和需求進行選擇。

5.用esp8266連接云平臺,并上傳溫濕度數(shù)據(jù),這到底屬于發(fā)布主題還是訂閱主題呢?

這屬于發(fā)布主題。因為設備(esp8266)將溫濕度數(shù)據(jù)發(fā)布到云平臺,相當于發(fā)布了一個主題(topic),而在MQTT協(xié)議中,發(fā)布主題是由設備發(fā)起的。訂閱主題則是由應用程序或服務發(fā)起的。

另外,esp8266訂閱主題的場景,一般是在需要接收云平臺或其他設備發(fā)送的指令或控制信號時使用。例如,一個智能家居系統(tǒng)中,esp8266作為控制設備,可以訂閱云平臺或其他設備發(fā)布的控制主題,接收控制指令并執(zhí)行相應的操作,如打開燈、調節(jié)溫度等。另外一個常見的場景是MQTT消息隊列中間件的測試,esp8266可以訂閱測試主題,接收和驗證MQTT消息隊列的功能是否正常。

總的來說,esp8266上傳溫濕度數(shù)據(jù)屬于發(fā)布主題,接收云平臺的控制指令屬于訂閱主題。

6.主題TOPIC和消息PAYLOAD

MQTT協(xié)議中,主題(Topic)是一個層級結構的字符串,用于標識消息的類型、內(nèi)容或者目標。而消息(Message)則是實際傳輸?shù)臄?shù)據(jù),包含了主題和負載(Payload),負載是消息的實際內(nèi)容,可以是任何二進制數(shù)據(jù)。

簡單來說,主題是消息的標識符,用于將相同類型或目標的消息歸為一類,而消息則是具體傳輸?shù)膬?nèi)容。可以把主題看作是消息的分類,而消息則是具體的數(shù)據(jù)。在MQTT中,發(fā)布者通過指定主題來發(fā)布消息,訂閱者通過訂閱主題來接收相應的消息。

7.用esp8266向云平臺上傳溫濕度數(shù)據(jù),怎么利用主題和消息呢?

在使用MQTT協(xié)議上傳溫濕度數(shù)據(jù)到云平臺時,需要定義一個特定的主題(Topic),用于標識上傳的數(shù)據(jù)類型。例如,您可以定義一個名為“temperature/humidity”的主題,用于上傳溫濕度數(shù)據(jù)。當esp8266上傳溫濕度數(shù)據(jù)時,需要將數(shù)據(jù)打包成一個消息(Message),并指定主題為“temperature/humidity”。

具體步驟如下:

①連接MQTT服務器:使用esp8266連接到MQTT服務器,建立連接。

②訂閱主題:在連接成功后,esp8266可以訂閱“temperature/humidity”主題,以便接收云平臺的控制指令。

③上傳數(shù)據(jù):將溫濕度數(shù)據(jù)打包成一個消息,并指定主題為“temperature/humidity”,通過MQTT協(xié)議上傳到云平臺。

④接收控制指令:如果云平臺需要控制esp8266,可以通過MQTT協(xié)議發(fā)布一個控制指令,主題為“temperature/humidity”,esp8266會接收到這個消息并執(zhí)行相應的操作。

總之,利用MQTT協(xié)議上傳溫濕度數(shù)據(jù)到云平臺,需要定義一個特定的主題,并將上傳的數(shù)據(jù)打包成一個消息,通過MQTT協(xié)議上傳到云平臺。同時,還需要訂閱云平臺發(fā)布的控制主題,以便接收控制指令。文章來源地址http://www.zghlxwxcb.cn/news/detail-704449.html

到了這里,關于STM32進階學習(1)-ESP01-S的AT指令測試、MQTT原理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 阿里云 MQTT協(xié)議 AT指令 ESP8266-01S 數(shù)據(jù)上下傳輸

    阿里云 MQTT協(xié)議 AT指令 ESP8266-01S 數(shù)據(jù)上下傳輸

    printf重定義資料來自江科大自動化協(xié)---stm32入門教程---串口發(fā)送+接收一節(jié)視頻講解 細節(jié)請看b站這個up主的視頻阿里云+ESP8266+STM32遠程點燈(流程講解) 阿里云平臺配置細節(jié)請看10分鐘玩轉阿里云物聯(lián)網(wǎng)平臺設備接入、管理、運維 這里只記錄一下大概內(nèi)容,方便日后調試。 1、

    2023年04月26日
    瀏覽(25)
  • STM32 ESP8266模塊的探索&AT指令介紹

    STM32 ESP8266模塊的探索&AT指令介紹

    這是本文的配套資料,最終工程請參考 新_ESP8266資料stm32f103成功移植的項目 【免費】stm32f103c8t6esp8266資料資源-CSDN文庫 我使用的是ai-thinker的esp8266-01s,以下為產(chǎn)品規(guī)格書 引腳定義:? ?依據(jù)引腳定義,GND接GND,VCC接3.3V,TX接USB轉TTL的Rx, Rx?接USB轉TTL的RX,之后嘗試多次,都只

    2024年04月23日
    瀏覽(21)
  • STM32 + ESP32(AT固件 MQTT協(xié)議) + MQTTX(桌面終端) + (EMQX消息服務器)

    STM32 + ESP32(AT固件 MQTT協(xié)議) + MQTTX(桌面終端) + (EMQX消息服務器)

    翻出老物件,搭建一個簡單的 IOT 開發(fā)環(huán)境,也算是廢物利用了?,接下來加傳感器。 1. STM32? 采集數(shù)據(jù): ? ? ?RTOS。 ? ? ?資源相對比較豐富,可以根據(jù)項目需求定制。 2. ESP32? 網(wǎng)絡傳輸(AT固件 MQTT協(xié)議)?: ? ? AT:封裝好的接口,擴展性不是那么好,業(yè)務簡單的話將就可以

    2024年02月08日
    瀏覽(27)
  • ESP8266-01s入門:上報和下發(fā)數(shù)據(jù)控制單片機 AT指令講解和上云 燒錄AT固件與OneNET MQTT通信教程包含MQTT.fx1.7.1教程(微信小程序通信單片機前置任務)

    ESP8266-01s入門:上報和下發(fā)數(shù)據(jù)控制單片機 AT指令講解和上云 燒錄AT固件與OneNET MQTT通信教程包含MQTT.fx1.7.1教程(微信小程序通信單片機前置任務)

    本項目教程總共分為四節(jié) 1.創(chuàng)建OneNET新版MQTT設備:為微信小程序與單片機通信打基礎(微信小程序通信單片機前置任務) 2.(當前文章)ESP8266-01s入門:燒錄AT固件與OneNET MQTT通信教程包含MQTT.fx1.7.1教程(微信小程序通信單片機前置任務) 3.物聯(lián)網(wǎng)實踐教程:微信小程序結合

    2024年02月04日
    瀏覽(26)
  • stm32---ESP8266的基礎 AT 指令、基礎 Wi-Fi 功能 AT 指令、TCP/IP 功能 AT 指令

    stm32---ESP8266的基礎 AT 指令、基礎 Wi-Fi 功能 AT 指令、TCP/IP 功能 AT 指令

    (常用基礎AT指令)主要了解其中指令AT、AT+RST、ATE: ? (1)當參數(shù)是ATE1時,顯示: (2)當參數(shù)是ATE0時,顯示: ? 說明: (1) Station 模式: 模塊相當于一個客戶端,可以鏈接到其他路由器發(fā)出的WIFI信號。 (2)?SoftAP模式(軟路由模式):模塊本身相當于一個路由器,其他設備可

    2024年02月04日
    瀏覽(25)
  • STM32驅動ESP8266連接阿里云(1)----使用AT指令連接阿里云

    STM32驅動ESP8266連接阿里云(1)----使用AT指令連接阿里云

    購買的ESP8266一般沒帶MQTT固件,所以無法通過MQTT指令與云平臺通信,需要燒錄固件。 MQTT固件可以在安信可科技進行下載。 交流qun:6_15061293。 https://docs.espressif.com/projects/esp-at/zh_CN/release-v2.2.0.0_esp8266/index.html 下載器可以使用樂鑫官方的下載器。 https://www.espressif.com.cn/zh-hans/s

    2024年02月03日
    瀏覽(24)
  • STM32+ESP-01s+EMQX實現(xiàn)單片機MQTT協(xié)議傳輸數(shù)據(jù)上云(二)STM32F103與ESP-01s的Usart通信,實現(xiàn)STM32連接上網(wǎng)上云

    STM32+ESP-01s+EMQX實現(xiàn)單片機MQTT協(xié)議傳輸數(shù)據(jù)上云(二)STM32F103與ESP-01s的Usart通信,實現(xiàn)STM32連接上網(wǎng)上云

    單片機:STM32F103c8t6 WiFi模塊:ESP8266-01s EMQX:自身服務器上搭載emq服務器或者借用emqx window 版本? USB TO TTL模塊:CH340 因為CH340不能給ESP-01s供3.3V的電,所以測試時需要外加供電 ? ? ? ? ? 本章中涉及到的技術原理主要為ESP01S wfi模塊的AT指令通信,我在上一篇文章給大家提到了

    2024年02月16日
    瀏覽(26)
  • STM32使用ESP8266模塊AT指令連接心知天氣API獲取天氣信息

    STM32使用ESP8266模塊AT指令連接心知天氣API獲取天氣信息

    由于之前使用STM32單片機來開發(fā)一些物聯(lián)網(wǎng)的小項目,接觸到了WIFI模塊ESP8266,所以寫下來記錄一下。 本文主要介紹的是STM32通過發(fā)送AT指令集來控制ESP8266 WIFI模塊連接WiFi并與心知天氣API建立TCP連接獲取天氣信息。 ESP8266我使用的是正點原子的ATK-ESP8266,已經(jīng)提前燒錄好AT指令集

    2023年04月08日
    瀏覽(26)
  • stm32+AT指令+ESP8266接入華為云物聯(lián)網(wǎng)平臺并完成屬性上報與命令響應

    stm32+AT指令+ESP8266接入華為云物聯(lián)網(wǎng)平臺并完成屬性上報與命令響應

    (示例:stm32f103c8t6+esp 01s 串口A T 指令模式) 流程簡介: ? ? ? 本期教程使用的是stm32+AT指令控制esp01s接入華為云聯(lián)網(wǎng)平臺完成數(shù)據(jù)上報與命令處理,在先前如果使用Arduino開發(fā)過后的esp8266可能已經(jīng)無法使用AT指令,或者出廠固件不支持全部的MQTT功能,這里我們首先對esp8266進

    2024年02月02日
    瀏覽(41)
  • ESP8266-01S燒錄MQTT透傳AT固件

    ESP8266-01S燒錄MQTT透傳AT固件

    須在正常模式下(VCC、GND、RX、TX),將 IO0引腳 接地, EN引腳 接3.3V(總共 6 根線)連入USB TO TTL模塊,將USB TO TTL模塊插入電腦 找到固件和工具的位置,下載 ? ?注意:燒錄的bin文件要放在燒錄工具的同一個文件夾下,避免燒錄工具找不到bin文件造成下載出錯 打開燒錄工具 ? 需

    2024年02月10日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包