資料介紹
不久前,我試圖創建一個可以檢測到有人何時靠近的設備,以便可以顯示某種問候。經過一番頭腦風暴,我想出了這個主意。
現在每個人都有一部通常啟用了wifi的智能手機。這些電話會定期嘗試與接入點通信,以交換數據或查找要連接的設備。在這些通信中,電話必須發送其 MAC 地址(MAC 地址是連接到網絡的每個設備都具有的唯一值),以便其他設備知道誰在發送數據以及將響應發送到哪里。
因此,如果我們可以偵聽這些通信,我們可以使用 MAC 地址并將其與已知 MAC 列表進行比較,以便我們可以識別我們認識的某個人(例如朋友)何時在附近。
ESP8266 有一些很棒的功能,但其中一個對我們的目的非常有用,它可以在混雜模式下工作,或者更廣為人知的嗅探模式。這種模式使我們能夠接收周圍設備發送的信息,這樣我們就可以讀取地址并將它們與我們的朋友列表進行比較。
這是我創建的用于原型化想法的代碼:
#include "./esppl_functions.h"?
/*?
* Define you friend's list size here?
*/?
#define LIST_SIZE 2?
/*?
* This is your friend's MAC address list?
*/?
uint8_t friendmac[LIST_SIZE][ESPPL_MAC_LEN] = {?
? {0x11, 0x11, 0x11, 0x11, 0x11, 0x11}?
?,{0x22, 0x22, 0x22, 0x22, 0x22, 0x22}?
?};?
/*?
* This is your friend's name list?
* put them in the same order as the MAC addresses?
*/?
String friendname[LIST_SIZE] = {?
? "Friend 1"?
?,"Friend 2"?
?};?
bool maccmp(uint8_t *mac1, uint8_t *mac2) {?
?for (int i=0; i < ESPPL_MAC_LEN; i++) {?
? ?if (mac1[i] != mac2[i]) {?
? ? ?return false;?
? ?}?
?}?
?return true;?
}?
void cb(esppl_frame_info *info) {?
?for (int i=0; i
? ? ?Serial.printf("\n%s is here! :)", friendname[i].c_str());?
? ?}?
?}?
}?
void setup() {?
?delay(500);?
?Serial.begin(115200);?
?esppl_init(cb);?
}?
void loop() {?
?esppl_sniffing_start();?
?while (true) {?
? ?for (int i = ESPPL_CHANNEL_MIN; i <= ESPPL_CHANNEL_MAX; i++ ) {?
? ? ?esppl_set_channel(i);?
? ? ?while (esppl_process_frames()) {?
? ? ? ?//?
? ? ?}?
? ?}?
?} ??
}?
這段代碼使用了我編寫的一個名為ESPProLib的簡單庫,用于處理 ESP8266 接收到的信息。有關該項目的庫和源代碼的更多信息,請參見本方案的附件部分。
- 樂鑫ESP8266_技術參考手冊
- 樂鑫ESP8266-DevKitC_入門指南
- 樂鑫ESP8266-DevKitS_用戶指南
- 樂鑫ESP8266-DevKitC-V1參考設計
- 樂鑫ESP8266-DevKitS-V1參考設計
- 樂鑫ESP8266_Non-OS_SDK_API_參考
- 樂鑫ESP8266_Non-OS_AT_指令使用示例
- ESP8266一鍵燒寫軟件下載 31次下載
- ESP8266
- ESP8266 PCB的模塊封裝庫下載 177次下載
- Esp8266原理圖分享 511次下載
- ESP8266系列封裝庫資源下載 0次下載
- 中移合物固件ESP8266軟件下載 8次下載
- 機智云ESP8266模組固件資料下載 67次下載
- ESP8266系列模塊選型 37次下載
- ESP8266紅外信號收發實驗 2013次閱讀
- ESP8266硬件 4865次閱讀
- ESP8266/ESP32自動下載原理 4741次閱讀
- 如何使用ESP8266制作可配置的Web服務器 1.3w次閱讀
- 如何利用ESP8266制作一個簡單的四軸飛行器 5118次閱讀
- 如何使用ESP8266開發板制作光強度檢測器 4305次閱讀
- ESP8266上運行代碼如何實現 3039次閱讀
- 如何利用ESP8266實現智能手表的設計 3369次閱讀
- STM32系列設計,ESP8266聯網授時時鐘 8097次閱讀
- esp8266中文資料匯總(esp8266引腳圖_與單片機連接_串口wifi實例) 22.5w次閱讀
- esp8266固件如何升級_ESP8266WIFI模塊固件升級 4.2w次閱讀
- ESP8266 Wi-Fi到底傳多遠_esp8266 wifi信號強度測距 5.2w次閱讀
- 遠程控制通訊--基于Arduino + ESP8266控制LED燈 4w次閱讀
- esp8266 at指令集詳解 14.3w次閱讀
- esp8266串口wifi實例 1.9w次閱讀
下載排行
本周
- 1涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 76次下載 | 1 積分
- 2錦銳科技CA51F2 SDK開發包
- 24.06 MB | 29次下載 | 1 積分
- 3錦銳CA51F005 SDK開發包
- 19.47 MB | 3次下載 | 1 積分
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 3次下載 | 2 積分
- 5基礎模擬電子電路
- 3.80 MB | 3次下載 | 1 積分
- 6RA-Eco-RA6M4-100PIN-V1.0開發板資料
- 34.89 MB | 1次下載 | 免費
- 7STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊
- 3.32 MB | 1次下載 | 免費
- 8聯想A820t手機維修圖紙包括主板原理圖 尾板原理圖 點位圖
- 0.62 MB | 次下載 | 5 積分
本月
- 1AI智能眼鏡產業鏈分析
- 4.43 MB | 383次下載 | 免費
- 2蘇泊爾電磁爐線路的電路原理圖資料合集
- 2.02 MB | 296次下載 | 5 積分
- 3貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 94次下載 | 1 積分
- 4長虹液晶電視R-HS310B-5HF01的電源板電路原理圖
- 0.46 MB | 91次下載 | 5 積分
- 5涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 76次下載 | 1 積分
- 6錦銳科技CA51F2 SDK開發包
- 24.06 MB | 29次下載 | 1 積分
- 7AO4803A雙P通道增強型場效應晶體管的數據手冊
- 0.11 MB | 28次下載 | 2 積分
- 8長虹液晶彩電LS29機芯的技術資料說明
- 3.42 MB | 16次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191388次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論