การตั้งชื่อโฮสต์แบบกำหนดเอง
ชื่อโฮสต์คือป้ายกำกับที่กำหนดให้กับอุปกรณ์เมื่อเชื่อมต่อภายในเครือข่าย ชื่อโฮสต์ช่วยในการระบุอุปกรณ์เพื่อให้สามารถจัดการได้ง่ายและแยกความแตกต่างจากอุปกรณ์อื่นที่คล้ายคลึงกัน
เมื่อ ESP32 เชื่อมต่อภายในเครือข่ายไร้สาย เช่น จุดเข้าใช้งานเราเตอร์ WiFi จะแสดงป้ายกำกับที่ช่วยในการระบุอุปกรณ์อื่นๆ เราสามารถแก้ไขชื่อโฮสต์นี้ได้ภายในรหัส Arduino
ทำไมเราต้องการชื่อโฮสต์ที่กำหนดเอง
เหตุผลที่เราต้องการชื่อโฮสต์ที่กำหนดเองก็เพราะเมื่อมีอุปกรณ์ที่คล้ายกันหลายเครื่องเชื่อมต่อกับจุดเชื่อมต่อเดียวกัน การค้นหาอุปกรณ์เฉพาะนั้นทำได้ยาก เนื่องจากอุปกรณ์เหล่านี้ทั้งหมดมีชื่อโฮสต์เดียวกันตามค่าเริ่มต้น ดังนั้น เพื่อแยกความแตกต่างระหว่างอุปกรณ์ที่คล้ายกัน สามารถใช้ชื่อโฮสต์แบบกำหนดเองได้
การตรวจสอบชื่อโฮสต์เริ่มต้นของ ESP32
ก่อนที่เราจะกำหนดชื่อโฮสต์แบบกำหนดเอง เราจะตรวจสอบโดยใช้รหัส ESP32
รหัส
เชื่อมต่อบอร์ด ESP32 กับพอร์ต COM ของพีซี เปิด Arduino IDE และอัปโหลดรหัสที่กำหนดใน ESP32
#include 'WiFi.h' /*รวม WiFi Library*/คอสต์ ถ่าน * ซิด = 'REPLACE_WITH_YOUR_SSID' ;
คอสต์ ถ่าน * รหัสผ่าน = 'REPLACE_WITH_YOUR_PASSWORD' ;
เป็นโมฆะ ติดตั้ง ( ) {
อนุกรม. เริ่ม ( 115200 ) ; /*กำหนดอัตราบอดของการสื่อสารแบบอนุกรม*/
ไวไฟ. เริ่ม ( ssid, รหัสผ่าน ) ; /*WiFi เริ่มทำงาน*/
ในขณะที่ ( ไวไฟ. สถานะ ( ) ! = WL_CONNECTED ) {
ล่าช้า ( 1,000 ) ;
อนุกรม. พิมพ์ ( 'กำลังเชื่อมต่อไวไฟ..' ) ;
}
อนุกรม. พิมพ์ ( ไวไฟ. IP ท้องถิ่น ( ) ) ; /*ที่อยู่ IP ของเครือข่าย WiFi ที่เชื่อมต่อ*/
อนุกรม. พิมพ์ ( ไวไฟ. รับชื่อโฮสต์ ( ) ) ; /*พิมพ์ชื่อโฮสต์ ESP32*/
}
เป็นโมฆะ ห่วง ( ) { }
รหัสนี้จะเชื่อมต่อ ESP32 กับเครือข่าย WiFi และพิมพ์ที่อยู่ IP ในเครื่องและชื่อโฮสต์ปัจจุบันของบอร์ด ESP32
เอาต์พุต
เมื่ออัพโหลดโค้ดและ ESP32 เชื่อมต่อกับจุดเชื่อมต่อแล้ว เราจะเห็นที่อยู่ IP ที่กำหนดโดยจุดเชื่อมต่อบนจอภาพอนุกรม หลังจากรหัสนั้นพิมพ์ชื่อโฮสต์ปัจจุบันซึ่งในกรณีของเราคือ esp32-4B3B20 .
เราได้ตรวจสอบชื่อโฮสต์ปัจจุบันของ ESP32 เรียบร้อยแล้ว ตอนนี้เราจะกำหนดชื่อโฮสต์ที่กำหนดเอง เราได้ตรวจสอบชื่อโฮสต์ปัจจุบันของ esp32 เรียบร้อยแล้ว
การกำหนดชื่อโฮสต์แบบกำหนดเองให้กับ ESP32
ในการกำหนดชื่อโฮสต์แบบกำหนดเองให้กับ ESP32 เราจะกำหนดชื่อใหม่ให้กับสตริง จากนั้นใช้ WiFi.setชื่อโฮสต์() ฟังก์ชันกำหนดค่าสตริงให้กับบอร์ด ESP32 สำหรับการกำหนดชื่อโฮสต์ที่กำหนดเองให้กับ ESP32 จะต้องเชื่อมต่อกับจุดเชื่อมต่อ
รหัส
เชื่อมต่อ ESP32 กับพอร์ต COM และอัปโหลดรหัสที่กำหนด
#includeคอสต์ ถ่าน * ซิด = 'REPLACE_WITH_YOUR_SSID' ;
คอสต์ ถ่าน * รหัสผ่าน = 'REPLACE_WITH_YOUR_PASSWORD' ;
ชื่อโฮสต์สตริง = 'ESP32Linuxhint.com' ; /*กำหนดชื่อโฮสต์ใหม่*/
เป็นโมฆะ เริ่มต้น WiFi ( ) {
ไวไฟ. โหมด ( WIFI_STA ) ; /*กำหนดโหมดสถานี ESP32*/
ไวไฟ. การกำหนดค่า ( INADDR_NONE, INADDR_NONE, INADDR_NONE, INADDR_NONE ) ;
ไวไฟ. ตั้งค่าชื่อโฮสต์ ( ชื่อโฮสต์ c_str ( ) ) ; /*ตั้งค่าชื่อโฮสต์ ESP32*/
ไวไฟ. เริ่ม ( ssid, รหัสผ่าน ) ; /*เริ่มการเชื่อมต่อ WiFi*/
อนุกรม. พิมพ์ ( 'กำลังเชื่อมต่อไวไฟ..' ) ;
ในขณะที่ ( ไวไฟ. สถานะ ( ) ! = WL_CONNECTED ) {
อนุกรม. พิมพ์ ( '.' ) ;
ล่าช้า ( 1,000 ) ;
}
อนุกรม. พิมพ์ ( ไวไฟ. IP ท้องถิ่น ( ) ) ; /*พิมพ์ที่อยู่ IP*/
}
เป็นโมฆะ ติดตั้ง ( ) {
อนุกรม. เริ่ม ( 115200 ) ;
เริ่มต้น WiFi ( ) ;
อนุกรม. พิมพ์ ( 'ชื่อโฮสต์ใหม่ของ ESP32: ' ) ;
อนุกรม. พิมพ์ ( ไวไฟ. รับชื่อโฮสต์ ( ) ) ; /*พิมพ์ชื่อโฮสต์ใหม่*/
}
เป็นโมฆะ ห่วง ( ) {
}
รหัสนี้จะใช้ SSID และรหัสผ่านเพื่อเชื่อมต่อ ESP32 กับเครือข่ายไร้สายก่อน ถัดไปโดยใช้สตริง ชื่อโฮสต์ = “ESP32 Linuxhint.com” เรากำหนดชื่อนี้ให้กับ ESP32
ฟังก์ชันโหมด WiFi จะเปิดใช้งาน ESP32 WiFi หลังจากนั้นใช้ฟังก์ชั่น WiFi.setHostname(ชื่อโฮสต์.c_str()) มีการกำหนดชื่อโฮสต์ใหม่ซึ่งกำหนดไว้ภายในสตริง
เมื่อกำหนดชื่อใหม่แล้ว รหัสจะพิมพ์ทั้งที่อยู่ IP ในเครื่องที่กำหนดโดยจุดเข้าใช้งานไปยัง ESP32 และชื่อโฮสต์ใหม่
เอาต์พุต
เอาต์พุตบนจอภาพอนุกรมแสดงชื่อโฮสต์ที่กำหนดใหม่ให้เราเห็น
บทสรุป
ชื่อโฮสต์เป็นชื่อประจำตัวชนิดหนึ่งที่กำหนดให้กับ ESP32 ภายในเครือข่ายไร้สาย ช่วยในการระบุอุปกรณ์เฉพาะจากอุปกรณ์อื่นที่คล้ายคลึงกัน ตามค่าเริ่มต้น ESP32 ส่วนใหญ่ที่มีรุ่นรุ่นเดียวกันจะมีชื่อโฮสต์เหมือนกัน ดังนั้นจึงเป็นการยากที่จะแยกความแตกต่างระหว่างกันเมื่อมีการเชื่อมต่อ ESP32 มากกว่าหนึ่งเครื่องในเครือข่ายเดียวกัน อย่างไรก็ตาม การใช้ชื่อโฮสต์ที่กำหนดเอง เราสามารถระบุอุปกรณ์ ESP32 ใดๆ ได้อย่างง่ายดาย อ่านเพิ่มเติมในบทความนี้