MicroPython Startup Script

Sittipong Jansorn
Jul 22, 2017 · 2 min read

หลังจากที่ได้เรียนรู้การใช้งาน MicroPython ในรูปแบบของ Interactive Mode (REPL) คราวนี้เราจะมาทำงานในรูปแบบของระบบ file กันบ้าง

การทำงานในระบ file จะมีอยู่ 2 แบบใหญ่ ๆ

การรัน code จากเครื่องคอมพิวเตอร์โดยที่ยังไม่ได้ upload ไปไว้ที่บอร์ด
การสร้าง startup file

การรัน code จากเครื่องคอมพิวเตอร์ต้องใช้งานผ่าน AMPY ให้เราใช้ Text Editor ในการเขียน code โดยตั้งชื่อ blink.py หรือโหลดได้เลยจาก link

blink.py

สั่งรัน code จาก AMPY ด้วยคำสั่ง run

ampy -p COM11 run blink.py

run

ที่หน้า command line ถ้าทำงานสำเร็จก็จะค้างอยู่ พร้อมกับที่บอร์ดเราก็จะทำงานไปกระพริบ ต้องการยกเลิกการทำงานให้กด Ctrl + C การทำงานตรงนี้ก็ยังทำงานอยู่ในส่วนของหนาวยความจำ ถ้ากด reset หรือปิดแล้วเปิดมาใหม่โปรแกรมก่อนหน้านั้นก็จะหายไปเหมาะเอาไว้ทดอบการทำงานก่อนใช้งานจริง

เท่าที่ทดสอบกด Ctrl + C เพื่อจบการรันจาก AMPY ใน windows จะค้างไม่สามารถยกเลิกได้ ก็ให้เรากด reset ที่บอร์ด

หลังจากกด reset ที่บอร์ด

การสร้าง startup file ใน MicroPython จะมองหา file ที่ชื่อว่า main.py เพื่อใช้ในการทำงานของโปรแกรมเริ่มต้น นั่นหลายความว่า เราต้องทำการ upload file ที่เป็น main.py โปรแกรมลงไปไว้ที่ระบบ file system ของบอร์ด

เราจะใช้สคลิปที่ชื่อว่า blink.py เพื่อสร้าง main.py

ampy -p COM11 put blink.py main.py
ampy -p CM11 ls

main.py

โปรแกรมเราพร้อมทำงาน ให้ลองกด reset ท่บอร์ดเพื่อเริ่มต้นทำงานใหม่ จะเห็นว่าโปรแกรม blink ของเราจะทำงานทุกครั้งทีมีการเรื่มต้นใหม่ ถ้ามีการแก้ไขหรือโปรแกรใหม่ก็ upload ทับลงไปได้เลย

ถ้าไม่ต้องการใช้งานโปรแกรมนี้แล้วเราสามารถลบออกจากระบบ file system ของบอร์ดได้ด้วยคำสั้ง rm

ampy -p COM11 rm main.py
ampy -p CM11 ls

สังเกตุว่าหลังจากที่เราลบ file main.py แล้วโปรแกรมที่บอร์ดจะหยุดทำงานทันที

    Sittipong Jansorn

    Written by

    Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
    Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
    Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade