---
# System prepended metadata

title: '(志航)  [STM32]WI-FI_ESP8266'

---

# (志航)  [STM32]WI-FI_ESP8266

## Wi-Fi 是什麼？

Wi-Fi 又被稱為「無線網路」，是 Wi-Fi 聯盟（Wi-Fi Alliance）的商標，而 Wi-Fi 聯盟是負責進行 Wi-Fi 認證與商標授權，以及制定 Wi-Fi 標準的單位。

Wi-Fi 是基於 IEEE 802.11 標準的無線區域網路技術，透過無線區域網路技術，Wi-Fi 能夠讓電腦、手機、平板、智慧家電、印表機等智慧裝置，以無線的方式連接到網際網路，建立能讓多種裝置相互交換資訊的網路。

Wi-Fi使用2.4GHz和5GHz頻段，最大特點就是通訊速度快。通訊距離只有100m左右，因此普偏使用在家庭室內網路線路的無線網路。

### Wi-Fi 原理
Wi-Fi 運作原理與有線網路最大的差別在於，有線網路是是透過「網路線」將資訊進行「電子訊號」傳輸；而無線網路則是透過無線信號進行「無線傳輸」，無線傳輸就像是我們收聽收音機一樣，不過與收音機不同的是，Wi-Fi 還可以進行「雙向溝通」，因此除了接收以外，同時也能傳輸各種資料。

Wi-Fi 必須透過「無線路由器」來進行雙向溝通，當我們的設備存取 Wi-Fi 時，就會連線到無線路由器。

WIFI的兩種模式：

AP模式：允許其他無線設備接入WIFI模組，WIFI模組作為路由器使用。
STATION模式：WIFI模組需連接到AP設備上，WIFI模組作為終端設備使用。

舉例:
手機連接到家裡的路由器（手機是STATION模式）
手機連接路由器的同時，開啟WIFI熱點功能（手機是AP+STATION模式）
手機斷開家裡的路由器，只開啟WIFI熱點（手機是AP模式）


## IEEE 802.11 標準
IEEE 802.11 是一個定義無線區域網路（Wireless Local Area Network, WLAN）通訊的標準，主要用於規範無線數據傳輸的技術與協議。

這邊介紹常見到的802.11b、802.11a、802.11g以及802.11n

我們在選購無線網路基地台、無線網卡、甚至筆電、手機的時候。常常看到無線規格上會寫著"802.11b+g"、"802.11b/g/n"等字眼，到底他們代表的是什麼意義呢?
簡單的說，abgn代表的是不同的規格系列，但其中由於逐步演進，有些系列能與其他擁有相容性。

首先，802.11的演進是 原始802.11-> b -> a -> g -> n (a比b早提出但較晚才上市)

1.最一開始被廣泛使用的是802.11b標準。
它使用的是ISM 2.4GHz的頻段(ISM頻段就是各國挪出某一段頻段主要開放給工業，科學和醫學機構使用)，傳輸速度可達11Mbps。

2.後來IEEE推出了802.11a，但它使用的是ISM 5GHz的頻段，藉由展頻與調編的方式改變(無線電波的技術方面)，讓802.11a的傳輸速度可達54Mbps(甚至108Mbps)，但由於使用的頻段與802.11b(2.4G)不同，故兩種規格是不相容的。

雖然802.11a能提升傳輸速度，但改用802.11a需將設備全面更新，成本過高，是故並沒有被大量的採用。

3.後來802.11g的推出就是為了解決802.11b傳輸速度過低以及與802.11a相容性的問題。故其依舊採用ISM 2.4GHz的頻段，且同樣的它藉由展頻及調變方式的改變，使得傳輸速度提昇至54Mbps(108Mbps)。
而由於與802.11b使相同頻段，故其也可以與802.11b相容。

所以我們現在可以看到許多無線設備的規格，是寫著”802.11b/g”，這表示它是802.11g的規格，但若你有著802.11b的舊設備，他們也是可以相容的。

4.而現今的規格802.11n，則是使用2.4GHz與5GHz雙頻段，故其與802.11a、802.11b、802.11g皆可相容，其理論最高速度可達600Mbps。
## TCP/IP網路架構


TCP/IP協定模型（Transmission Control Protocol/Internet Protocol），
包含了一系列構成互聯網基礎的網路通訊協定。
基於TCP/IP的參考模型將協定分成四個層次，它們分別是網路介面層、網路層、傳輸層和應用層。
![image](https://hackmd.io/_uploads/HJBelt_MJx.png)
資料傳遞流程：(主機A到主機B)
1. A應用層將資料傳送給傳輸層。在傳輸層，資料被分割成較小的封包
2. A傳輸層使用TCP或UDP協定來將封包封裝成傳輸層資料段
3. A傳輸層將資料段傳遞給A網路層，並指定目的地的IP位址。
4. 在A網路層，IP協定負責將資料段封裝成IP封包。IP封包包含源IP位址和目的IP位址。
5. IP封包通過網際網路傳輸，在路由器之間進行轉發，直到到達目的地網路B。
6. 在目的地網路上，目的地B主機的網路層接收到IP封包。
7. B網際網路層根據IP封包中的目的IP位址，將封包傳遞給相應的B傳輸層協定（TCP或UDP）。
8. 目的地B傳輸層解析接收到的資料段，並將資料段重新組合成原始的資料。
9. 最後，原始的資料在目的地B應用層進行處理和應用。
![upload_d35bd048816137c396ba0fab66a6104b](https://hackmd.io/_uploads/HJUOCddGJl.png)




### TCP
TCP 是網際網路上最常用的協定，這種協定較為可靠，運作方法如下：

TCP 為每個封包分配一個唯一的識別碼和一個序號，這些號碼能讓接收端識別封包的完整性，以及封包的順序。
當接收端收到封包後，如果順序正確，會向發送端傳送一個確認信號（Acknowledgement），以此確認接收端已經收到封包。
發送端傳送另一個封包。
如果封包遺失或發送順序錯誤，接收端會保持沈默，不發送確認信號。這表示發送端需要重新傳送封包。

### IP

要在網際網路中的兩個節點傳遞封包，就需要能夠「定位」到對方，也因此每個節點都需要一個位置，如同現實世界中的門牌一樣。這個位置在網際網路協定中就被稱為 IP Address。
本質上，IP Address 是一個 32 bits（位元）的數字，也就是一個 32 位的「二進制數字」。
為了方便人類閱讀所轉換成四組十進制數字，每組數字的範圍都介於 0 - 255。
#### IPv4, IP version 4
![image](https://hackmd.io/_uploads/Sk8I9OOzJl.png)

## NRF24L01+


無線傳輸速率為250kbps, 1 Mbps, 2Mbps

它使用 2.4GHz 頻段，但僅支援簡單的數據收發，並不支援 Wi-Fi 協定（如 802.11 系列標準）。
無法處理 TCP/IP 或 Wi-Fi 的應用層協定。

nRF24L01+ 僅支援SPI通訊並提供基本的資料傳輸功能。


## ESP8266

ESP8266 是一款低成本、高整合度的 Wi-Fi 模組，主要用於物聯網（IoT）應用。

支援 2.4GHz Wi-Fi 協定，提供穩定的無線連接。

支援 Wi-Fi Station（STA）和 Access Point（AP）模式，甚至可以同時運行。

支援 UART、SPI、I2C介面。

可作為 Wi-Fi 通訊模組，透過 AT 指令進行控制。


![image](https://hackmd.io/_uploads/HJopkSDzyg.png)
![image](https://hackmd.io/_uploads/H1lyxBwMyg.png)



