Nanobit with microPython ตอนที่ 8

ใช้งาน microPython กับ Nanobit แบบ Offline ด้วย Mu

Python Editor V2.0 แบบ Offline

ตัวอย่างก่อนหน้านี้ ในการใช้ Nanobit
กับ microPython จะใช้ผ่าน Python Editor V2.0 (https://python.microbit.org/v/2) ซึ่งเป็นแบบ online กรณีไม่ได้เชื่อมต่ออินเตอร์เน็ตก็ยังใช้งาน Python Editor V2.0 ได้อยู่ แต่ต้องเปิดใช้งานครั้งแรกขึ้นมาก่อน แล้วทำการบุ๊คมาร์กเอาไว้

เมื่อไม่ได้เชื่อมต่ออินเตอร์เน็ต ก็จะยังคงใช้งานได้อยู่ โดยเรียกผ่านลิงก์ที่บุ๊คมาร์กเอาไว้

Code with Mu และการใช้งาน microPython กับ Nanobit

    Mu Editorเป็นตัวเลือกที่ดีที่สุดสำหรับการเขียนโค้ดแบบ Offline กับ microbit แต่สำหรับ Nanobit
โปรแกรม Mu Editor กลับมองไม่เห็น ทำให้ต้องใช้วิธีการคัดลอกไฟล์หรือดาวน์โหลดไฟล์ไปยังไดรฟ์ของ Nanobit แทน ซึ่งไม่ค่อยจะสะดวก กรณีที่มีการเรียกใช้ไลบรารี่ เพราะเมื่อดาวน์โหลด ไฟล์ที่ดาวน์โหลดไปจะไปทับไฟล์ไลบรารี่ ทำให้เรียกใช้งานไลบรารี่ไม่ได้ สำหรับการใช้งานที่ถูกต้องจะต้องทำตามขั้นตอนดังนี้

ขั้นตอนการใช้งาน Mu

1.เข้าไปที่ https://codewith.mu/ จากนั้นกด Download

2. เลือกดาวน์โหลดเวอร์ชั่นที่ตรงกับระบบปฏิบัติการที่ใช้ ในที่นี้เลือกใช้ Windows 64 bit

3. ดับเบิ้ลคลิกเพื่อติดตั้ง และทำตามขั้นตอนการติดตั้งจนเสร็จสมบูรณ์

4. เปิดโปรแกรม Mu Editor เลือกโหมด BBC micro:bit

5. ทดสอบเข้าสู่โหมด REPL พิมพ์คำสั่งเพื่อดูการแสดงผลที่ LED 5×5

display.scroll('Hello World')

เมื่อกด Enter จะมีข้อความ Hello World วิ่งที่ LED 5×5 ทันที กดที่ปุ่ม REPL อีกครั้งเพื่อออกจากโหมด REPL

6. ทดสอบเขียนโค้ด สั้นๆ ตามรูป

7. เมื่อกดปุ่ม Flash โปรแกรม Mu editor จะสอบถามตำแหน่งที่ต้องการเก็บไฟล์ นั่นหมายความว่า Mu Editor ไม่สามารถค้นหาเพื่อเชื่อมโยงไปยังบอร์ด Nanobit โดยตรงได้ จะต้องระบุตำแหน่งเก็บไฟล์ไปที่ไดรฟ์ของ Nanobit

วิธการนี้จะมีปัญหาเมื่อมีการใช้ไลบรารี่

Nanobit กับแสดงผลตัวเลขด้วย โมดูล TM1637

    สำหรับอุปกรณ์ที่มีชุดคำสั่งที่ซับซ้อน คำสั่งต่างๆ จะถูกเก็บอยู่ในไลบรารี่ ส่วนของไลบรารี่จะต้องโยนไปเก็บไว้ในตัว Nanobit ก่อนผ่านเมนู File

ดาวน์โหลดไลบรารี่ของ TM1637

ไลบรารี่ต้นฉบับมาจาก

https://github.com/mcauser/micropython-tm1637

มีขนาดค่อนข้างใหญ่ ถ้าเขียนโค้ดเพิ่มมากไปหน่วยความจำจะเต็มได้ Memory allocation error

ดังนั้นทาง inex ขอตัดบางส่วนเพื่อให้ใช้หน่วยความจำน้อยลง และให้ดาวน์โหลดที่

https://github.com/inexglobal/upython_TM1637

    เมื่อดาวน์โหลดมาแล้วให้แตกไฟล์ทั้งหมด แล้วนำไฟล์ TM1637.py

C:\Users\<ชื่อของคอมพิวเตอร์>\mu_code

เพิ่มไลบรารี่ให้กับ Nanobit

1. ที่โปรแกรม Mu Editor ให้คลิกที่เมนู Files สำหรับ File ในช่องด้านซ้ายเป็นไฟล์ที่อยู่ในตัว Nanobit ส่วนไฟล์ในช่องด้านขวาเป็นไฟล์ที่อยู่ในคอมพิวเตอร์ของเรา

2. ให้ลากไฟล์ TM1637.py จากช่องด้านขวามายังช่องด้านซ้าย เพื่อส่งไฟล์ไลบรารี่ไปเก็บที่ Nanobit

3. ต่อโมดูล TM1637 เข้ากับบอร์ด Nanobit โดยใช้ขา 13 สำหรับ CLK และขา 14 สำหรับ DIO

4. เขียนโค้ดเพื่อแสดงค่าอุณหภูมิที่ TM1637

 
 
from  microbit import *
import tm1637
tm = tm1637.TM1637(clk=pin13, dio=pin14)
while True:
    temp=temperature()
    tm.show('{:4d}'.format(temp))
    sleep(500)

5. บันทึกไฟล์ในชื่อ main.py ไว้ที่ C:\Users\<ชื่อของคอมพิวเตอร์>\mu_code ต้องตั้งเป็นชื่อนี้เท่านั้น เพื่อให้หลังจากรีเซตแล้วจะได้เรียกใช้งานไฟล์นี้ได้ทันที

6. คลิกที่เมนูไฟล์เพื่อปิดแล้ว กดเปิดใหม่อีกครั้ง จะพบไฟล์ main.py ปรากฎอยู่ในส่วนคอมพิวเตอร์ของเรา

7. ลากไฟล์ main.py จากด้านขวามายังด้านซ้าย เพื่อส่งไฟล์ไปยัง Nanobit จะมีหน้าต่างถามว่าต้องการเขียนทับหรือไม่ให้ตอบ OK

เราจะไม่ใช้การ flash เพราะจะทำให้ไลบรารี่ที่ลากมาไว้ตอนแรกถูกทับหายไป

ทุกครั้งที่มีการแก้ไขโค้ด จะต้องบันทึกและส่งไฟล์ด้วยวิธีนี้

8. ที่บอร์ด Nanobit กดปุ่ม reset เพื่อให้ไฟล์ main.py ที่ดาวน์โหลดมาเริ่ม RUN นำค่าอุณหภูมิที่อ่านได้จาก CPU แสดงผลที่ TM1637

วิธีการนี้อาจจะมีขั้นตอนยุ่งยากอยู่บ้าง แต่ Mu Editor ก็เป็นทางเลือกของการเขียนโค้ดโดยไม่ต้องต่ออินเตอร์เน็ตที่ดีมากตัวนึงเลย

Facebook Comments Box

Press Ctrl+C to copy the following code.
"