สารบัญ:
- ขั้นตอนที่ 1: เปิดใช้งานคุณสมบัติใน Windows
- ขั้นตอนที่ 2: ติดตั้ง Linux Distribution
- ขั้นตอนที่ 3: ติดตั้ง ESP32 Toolchain
- ขั้นตอนที่ 4: ติดตั้งกรอบการพัฒนา ESP IoT
- ขั้นตอนที่ 5: ติดตั้งและกำหนดค่าไดรเวอร์อนุกรม USB
- ขั้นตอนที่ 6: สร้างและแฟลชโปรแกรม
- ขั้นตอนที่ 7: การเชื่อมต่อกับ ESP32 และการดูเอาต์พุต
วีดีโอ: การพัฒนา ESP32 บนระบบย่อย Windows สำหรับ Linux: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
ESP32 เป็นบอร์ดไมโครคอนโทรลเลอร์ราคาประหยัดและใช้พลังงานต่ำจาก Espressif เป็นที่นิยมในหมู่ผู้ผลิตเนื่องจากมีราคาถูกและอุปกรณ์ต่อพ่วงในตัว ซึ่งรวมถึง WiFi และ Bluetooth อย่างไรก็ตาม เครื่องมือในการพัฒนาสำหรับ ESP32 นั้นต้องการสภาพแวดล้อมแบบ Unix ซึ่งอาจยากต่อการติดตั้งและบำรุงรักษาบนระบบ Windows
ต้องขอบคุณการสื่อสารแบบซีเรียลที่เพิ่มเข้ามาเมื่อเร็วๆ นี้ เราสามารถใช้ระบบย่อยของ Microsoft Windows สำหรับ Linux เพื่อเรียกใช้ toolchain บน Linux ทั้งหมดบน Windows 10 โดยไม่ต้องคอมไพล์ใหม่หรือใช้เครื่องเสมือนหรือคอนเทนเนอร์
Windows Subsystem for Linux (WSL) เปิดใช้งานการเรียกใช้งานไบนารีของ Linux (หรือ ELF64 เพื่อตั้งชื่อที่เป็นทางการมากขึ้น) เพื่อให้ทำงานเป็นคลาสพิเศษของกระบวนการ เรียกว่ากระบวนการ pico Windows สกัดกั้นการเรียกระบบ Linux และแปลเป็นการเรียกผู้บริหารของ Windows ที่เหมาะสมโดยอัตโนมัติ ผลที่ได้คือแอปพลิเคชั่น Linux ที่ทำงานได้ดีส่วนใหญ่จะทำงานบน Windows
ขั้นตอนที่ 1: เปิดใช้งานคุณสมบัติใน Windows
เพื่อใช้งาน WSL เราต้องเปิดใช้งานคุณสมบัตินี้ในระบบปฏิบัติการก่อน คลิกขวาที่ปุ่ม Start แล้วเลือก Run พิมพ์ OptionalFeatures.exe แล้วกด Enter ตรวจสอบให้แน่ใจว่าได้เลือกระบบย่อย Windows สำหรับ Linux แล้วคลิกตกลง คุณอาจต้องรีบูตเพื่อให้คุณลักษณะนี้ติดตั้งได้
ขั้นตอนที่ 2: ติดตั้ง Linux Distribution
ถัดไปเปิด Windows Store และค้นหา Ubuntu นี่คือการกระจาย Linux ที่เราจะใช้สำหรับสภาพแวดล้อมการพัฒนาของเรา เมื่อคุณติดตั้งและเปิดแอป Ubuntu แล้ว คุณจะได้รับแจ้งให้เลือกชื่อผู้ใช้และรหัสผ่าน (ไม่จำเป็นต้องเหมือนกับชื่อผู้ใช้และรหัสผ่าน Windows ของคุณ แต่ควรเป็นสิ่งที่สมเหตุสมผลที่คุณจะจำได้)
ขั้นตอนที่ 3: ติดตั้ง ESP32 Toolchain
อันดับแรก เราต้องติดตั้งข้อกำหนดเบื้องต้นสำหรับ toolchain ทำได้โดยใช้ตัวจัดการแพ็คเกจของ Ubuntu เปิด Ubuntu และพิมพ์ดังต่อไปนี้:
sudo apt-get update
sudo apt-get ติดตั้ง gcc git wget ทำให้ libncurses-dev flex bison gperf python python-serial
ในการติดตั้ง toolchain เราจำเป็นต้องดาวน์โหลดและแตกไฟล์:
ซีดี ~
wget https://dl.espressif.com/dl/xtensa-esp32-elf-linu… mkdir esp cd esp tar -xzf ~/xtensa-esp32-elf-linux64-1.22.0-80-g6c4433a-5.2.0 tar.gz
ขั้นตอนที่ 4: ติดตั้งกรอบการพัฒนา ESP IoT
การสร้าง git clone ของที่เก็บ Espressif IDF เป็นขั้นตอนแรกในการติดตั้งเฟรมเวิร์กการพัฒนา:
cd ~/espgit clone --recursive
ESP-IDF ต้องการตัวแปรสภาพแวดล้อมบางอย่างเพื่อให้ทำงานได้อย่างถูกต้อง เราจะตั้งค่าเหล่านี้ในโปรไฟล์ของเชลล์บรรทัดคำสั่ง เพื่อให้พร้อมใช้งานทุกครั้งที่เราเริ่ม Bash
พิมพ์ nano ~/.profile เพื่อเริ่มแก้ไข เพิ่มบรรทัดต่อไปนี้ต่อท้าย:
ส่งออก PATH="$PATH:$HOME/esp/xtensa-esp32-elf/bin"export IDF_PATH=”$HOME/esp/esp-idf”
บันทึกและออกด้วย Ctrl+X
ขั้นตอนที่ 5: ติดตั้งและกำหนดค่าไดรเวอร์อนุกรม USB
บอร์ดพัฒนา ESP32 ส่วนใหญ่มี USB เข้ากับพอร์ตอนุกรม ดังนั้นคุณจึงสามารถตั้งโปรแกรมและตรวจสอบเอาต์พุตจากคอมพิวเตอร์ของคุณได้ อย่างไรก็ตาม พวกเขาไม่ได้ใช้ชิป FTDI ที่บอร์ด Arduino ส่วนใหญ่ทำ ส่วนใหญ่ใช้ชิป CP210x จาก Silicon Labs แทน คุณจะต้องดาวน์โหลดและติดตั้งไดรเวอร์ก่อนเสียบอุปกรณ์
เมื่อคุณทำเสร็จแล้ว ให้เปิด Device Manager และยืนยันว่าอุปกรณ์นั้นรู้จัก คุณจำเป็นต้องรู้ว่าพอร์ต COM ใดที่ Windows กำหนดให้กับอุปกรณ์ของคุณ ในกรณีของฉันคือ COM4 แต่ของคุณอาจแตกต่างกัน
ใน Ubuntu เราไม่ได้อ้างถึงอุปกรณ์โดยใช้พอร์ต Windows COM แต่เราจะใช้ชื่อไฟล์ /dev/ttyS X โดยที่ X คือหมายเลขพอร์ต Windows COM ดังนั้น COM4 จะเป็น /dev/ttyS4
เพื่อให้สามารถเขียนไปยังพอร์ตอนุกรมได้ เราจำเป็นต้องตั้งค่าการอนุญาต เมื่อต้องการทำเช่นนี้ พิมพ์:
sudo chmod 0666 /dev/ttyS4
หมายเหตุ ในกรณีของฉัน ฉันใช้ /dev/ttyS4 คุณควรแทนที่ชื่ออุปกรณ์ของคุณแทน
ขั้นตอนที่ 6: สร้างและแฟลชโปรแกรม
มาทดสอบ ESP32 ของเราด้วยการสร้างและแฟลชโปรแกรม Hello World ที่แพร่หลาย
คุณอาจสังเกตเห็นว่าจนถึงขณะนี้เราได้ทำงานในระบบไฟล์ที่เหมือน Unix ที่มีไดเร็กทอรีเช่น /dev, /bin และ /home เราจะคัดลอกไฟล์โครงการไปยังไดรฟ์ C หลักของเรา เพื่อให้เราสามารถแก้ไขได้โดยใช้โปรแกรมแก้ไขข้อความของ Windows หากจำเป็น ไดรฟ์ทั้งหมดของเรามีอยู่ใน WSL ผ่านทางไดเร็กทอรี /mnt
mkdir /mnt/c/espcp -r $IDF_PATH/examples/get-started/hello_world /mnt/c/espcd /mnt/c/esp/hello_worldmake menuconfig
หมายเหตุ สิ่งนี้จะสร้างโฟลเดอร์บนรูทของไดรฟ์ C: ชื่อ esp หากคุณต้องการทำงานในที่อื่น ให้เปลี่ยนเส้นทางง่ายๆ
เราจำเป็นต้องเปลี่ยนพอร์ตอนุกรมเริ่มต้นตามอุปกรณ์ที่เราระบุก่อนหน้านี้ ในกรณีของฉัน นั่นหมายถึงการเปลี่ยนพอร์ตอนุกรมเริ่มต้นเป็น /dev/ttyS4 อย่าลืมบันทึกเมื่อคุณออกจาก menuconfig
make -j16 allmake flash
ไม่จำเป็นต้องใช้ตัวเลือก -j16 แต่จะช่วยเร่งกระบวนการสร้างในคอมพิวเตอร์ที่มีโปรเซสเซอร์หลายตัว เนื่องจากฉันมีเครื่องเธรด 16 ฉันจึงผ่าน -j16 หากคุณมีโปรเซสเซอร์สี่เธรด คุณควรใช้ -j4
บอร์ดของฉันมีปุ่มกดชื่อ IOO ซึ่งคุณต้องกดเพื่อเปิดใช้งานกระบวนการแฟลช แค่กดสั้นๆ ระหว่างเฟส Connecting…… ก็เพียงพอแล้ว
ขั้นตอนที่ 7: การเชื่อมต่อกับ ESP32 และการดูเอาต์พุต
หากต้องการดูผลลัพธ์จาก ESP32 เพียงพิมพ์
ทำจอภาพ
นี่จะแสดงผลลัพธ์จากแอปพลิเคชัน hello_world ของเรา ขอแสดงความยินดี คุณตั้งโปรแกรมอุปกรณ์ ESP32 ของคุณสำเร็จโดยใช้ระบบย่อย Windows สำหรับ Linux!
แนะนำ:
การติดตั้งระบบย่อย Windows สำหรับ Linux (WSL): 3 ขั้นตอน
การติดตั้งระบบย่อย Windows สำหรับ Linux (WSL): ชุดคำสั่งนี้มีขึ้นเพื่อช่วยให้ผู้ใช้ติดตั้งระบบย่อย Windows สำหรับ Linux ลงในคอมพิวเตอร์ Windows 10 ของตน การกระจาย Linux เฉพาะที่ชุดคำสั่งนี้จะใช้เรียกว่า Ubuntu ดูภาพรวมของ Linux ต่างๆ ที่นี่
ตั้งค่า Linux สำหรับ Windows!: 12 ขั้นตอน
ตั้งค่า Linux สำหรับ Windows!: ยินดีต้อนรับสู่ชุดคำสั่งสำหรับการตั้งค่า Linux สำหรับ Windows! ชุดคำสั่งนี้มีขึ้นเพื่อช่วยให้ผู้เริ่มต้นตั้งค่าบรรทัดคำสั่งระบบ Ubuntu Linux บนเครื่อง Windows และเชื่อมต่อไฟล์ windows กับระบบ linux ระบบย่อยของลินุกซ์
การพัฒนา Java อย่างมีประสิทธิภาพสำหรับ Raspberry Pi: 11 ขั้นตอน (พร้อมรูปภาพ)
การพัฒนา Java อย่างมีประสิทธิภาพสำหรับ Raspberry Pi: คำแนะนำนี้อธิบายแนวทางที่มีประสิทธิภาพมากสำหรับการพัฒนาโปรแกรม Java สำหรับ Raspberry Pi ฉันได้ใช้วิธีนี้ในการพัฒนาความสามารถของ Java ตั้งแต่การรองรับอุปกรณ์ระดับต่ำไปจนถึงโปรแกรมแบบมัลติเธรดและบนเครือข่าย แอปพ
Flipperkonsole สำหรับ PC Flipper / Pinball Console สำหรับ PC Pinballs: 9 ขั้นตอน
Flipperkonsole สำหรับ PC Flipper / Pinball Console สำหรับ PC Pinballs: ใช้งานได้กับ USB พื้นฐาน เกมสำหรับ PC-Flipperkästen Die Spannungsversorgung erfolgt über das USB Kabel. Implementiert sind die beiden Flipper Buttons และ ein Startbutton Zusätzlich ist ein stossen von unten, von links และ von rechts implem
3.3V Mod สำหรับ Ultrasonic Sensors (เตรียม HC-SR04 สำหรับ 3.3V Logic บน ESP32/ESP8266, Particle Photon ฯลฯ): 4 ขั้นตอน
3.3V Mod สำหรับ Ultrasonic Sensors (เตรียม HC-SR04 สำหรับ 3.3V Logic บน ESP32/ESP8266, Particle Photon, ฯลฯ.): TL;DR: บนเซนเซอร์ ตัดร่องรอยไปที่ Echo pin จากนั้นเชื่อมต่อใหม่โดยใช้ a ตัวแบ่งแรงดันไฟฟ้า (Echo trace -> 2.7kΩ -> Echo pin -> 4.7kΩ -> GND) แก้ไข: มีการถกเถียงกันว่า ESP8266 นั้นทนทานต่อ GPIO 5V จริงหรือไม่ใน