MicroPython เป็นภาษาโปรแกรม Python รุ่นน้ำหนักเบาที่พัฒนาขึ้นสำหรับการเขียนโปรแกรมไมโครคอนโทรลเลอร์ SOCs และอุปกรณ์ระบบฝังตัวอื่น ๆ สร้างขึ้นเพื่อให้นักพัฒนาสามารถใช้ประโยชน์จาก " เรียนรู้และใช้งานง่าย" ลักษณะของ python สำหรับการพัฒนาระบบฝังตัว ด้วย Python ในตอนนี้เป็นภาษาเบื้องต้นที่สำคัญในโรงเรียนส่วนใหญ่และด้วยการที่มันเป็นหนึ่งในภาษาโปรแกรมที่ได้รับความนิยมและใช้กันอย่างแพร่หลายทั่วโลกผ่านไมโครไพ ธ อนผู้ใช้ Python สามารถหลีกเลี่ยงเส้นโค้งการเรียนรู้ที่สูงชันที่เครียดซึ่งเกี่ยวข้องกับการใช้ C และ C ++ เพื่อตั้งโปรแกรมไมโครคอนโทรลเลอร์ พวกเขาสามารถเริ่มใช้ความรู้ที่ได้รับในช่วงหลายปีเพื่อเข้าถึงฮาร์ดแวร์ระดับต่ำได้ทันทีเช่นเดียวกับภาษาอื่น ๆ Micro-python เป็นการนำ Python 3 มาใช้โดยเฉพาะและเข้ากันได้กับไวยากรณ์ของ python 3
แม้ว่า MicroPython ยังไม่ได้อยู่ในระดับความนิยมเดียวกับ C และ C ++ สำหรับการพัฒนาระบบฝังตัว แต่ความนิยมก็เพิ่มขึ้นเรื่อย ๆ เนื่องจากไมโครคอนโทรลเลอร์ IDE และบอร์ดพัฒนารองรับการใช้งานมากขึ้นเรื่อย ๆ สำหรับบทช่วยสอนในวันนี้เราจะมาดูหนึ่งในบอร์ดดังกล่าวที่สามารถพัฒนาเฟิร์มแวร์โดยใช้ MicroPython ได้
สำหรับการกวดวิชาของวันนี้เราจะมองเข้าไปในการพัฒนารหัสสำหรับ ESP32 โดยใช้ MicroPython
เราจะเริ่มต้นด้วยการดูว่าเหตุใด MicroPython จึงดีสำหรับ ESP32 และดำเนินการผ่านการตั้งค่า ESP32 สำหรับ MicroPython และอัปโหลดร่างกะพริบด้วย MicroPython บน ESP32
ทำไมต้อง MicroPython (MicroPython กับ Arduino C)
หนึ่งในวิธีที่ง่ายที่สุดที่ได้รับการพิสูจน์แล้วและง่ายที่สุดในการเขียนโปรแกรม ESP32 คือการใช้ Arduino IDE ซึ่งหมายถึงการใช้ C หรือ C ++ เวอร์ชัน Arduino C และ C ++ เป็นภาษาที่ได้รับความนิยมมากที่สุดสองภาษาสำหรับการพัฒนาระบบฝังตัวมานานหลายทศวรรษและภาษาเวอร์ชัน Arduino ทำให้ภาษานี้ง่ายขึ้นซึ่งแสดงถึงความนิยมในหมู่ผู้ผลิตและผู้ทำงานอดิเรกเนื่องจากความสะดวกในการพัฒนารหัส นอกจากนี้ Arduino ยังมีชุมชนเทคโนโลยีที่ใหญ่ที่สุดแห่งหนึ่งในโลกพร้อมด้วยไลบรารีใหม่การแก้ไขซอฟต์แวร์การสนับสนุนบอร์ดใหม่ ฯลฯ ที่เผยแพร่โดยชุมชนทุกวัน ทั้งหมดนี้ทำให้เป็นเครื่องมือที่น่ากลัวสำหรับการเขียนโปรแกรมแผงระบบแบบฝังตัว ข้อ จำกัด ที่แท้จริงเพียงอย่างเดียวที่สามารถเชื่อมต่อกับ Arduino C คือความจริงที่ว่ามันใช้งานได้ภายใน Arduino IDE เท่านั้นเนื่องจาก IDE มีข้อ จำกัด และขาดคุณสมบัติบางอย่างซึ่งอาจเป็นประโยชน์อย่างมากเมื่อพัฒนาฐานรหัสขนาดใหญ่ Arduino C จึงไม่ได้มีประสิทธิภาพสูงสุด
ในทางกลับกันMicroPythonนั้นค่อนข้างใหม่ ในขณะที่ชุมชนของผู้ใช้กำลังเติบโตขึ้นด้วยการรองรับแพลตฟอร์มที่มากขึ้นความแรงของมันไม่สามารถเทียบได้กับ Arduino ในทางกลับกัน MicroPython เป็น Python เวอร์ชันลีนซึ่งเป็นหนึ่งในภาษาโปรแกรมที่ได้รับความนิยมมากที่สุดในโลกดังนั้นปัญหาใด ๆ ที่ไม่สามารถแก้ไขได้โดยชุมชน MicroPython สามารถรับข้อมูลเชิงลึกจากชุมชน Python ทั่วไปได้
นอกเหนือจากการสนับสนุนจากชุมชนแล้วMicroPython ยังมีคุณสมบัติบางอย่างที่เหนือระดับของ Arduino หนึ่งในคุณสมบัติดังกล่าวเป็นREPLREPL ย่อมาจาก Read-Evaluate-Print คุณสมบัตินี้ช่วยให้คุณเชื่อมต่อกับบอร์ดและรันโค้ดได้อย่างรวดเร็วโดยไม่จำเป็นต้องคอมไพล์หรืออัปโหลดโค้ดทั้งหมด ด้วยเหตุนี้คุณสามารถทดสอบแต่ละส่วนของโค้ดของคุณในขณะที่คุณพัฒนาได้
ไม่ว่าคุณจะเลือกสองข้อใดสำหรับโครงการของคุณให้แน่ใจว่าสิ่งใดที่ตอบสนองคุณได้ดีที่สุด เมื่อถึงขั้นตอนนี้เรามาเริ่มต้นการสร้างตัวอย่างการกะพริบโดยใช้ ESP32 กับ MicroPython
ส่วนประกอบที่จำเป็น
ในการสร้างตัวอย่างการกะพริบเราจะต้องมีส่วนประกอบต่อไปนี้
- DOIT ESP32 DevKit v1 (1)
- ไฟ LED (1)
- ตัวต้านทาน 100 โอห์ม (1)
- สายจัมเปอร์
- เขียงหั่นขนม (1)
คุณสามารถใช้บอร์ดอื่น ๆ ที่ใช้ ESP32 แทน DOIT ESP32 DevKit V1 และคุณสามารถเลือกที่จะทำงานกับ LED ออนบอร์ดซึ่งหมายความว่าคุณต้องใช้บอร์ด ESP32 สำหรับบทช่วยสอนนี้เท่านั้น ก่อนหน้านี้เรากะพริบ ESP32 LED โดยตั้งโปรแกรมโดยใช้ Arduino IDE
นอกเหนือจากส่วนประกอบฮาร์ดแวร์แล้วเรายังต้องใช้ซอฟต์แวร์เช่น Thonny IDE