[TH] I2C Bus/Wire.h

บทความนี้เป็นการอธิบายเมธอดต่าง ๆ ของ Wire.h ซึ่งเป็นคลาสสำหรับสื่อสารกับอุปกรณ์ผ่านบัสประเภท I2C ที่ใช้สายสัญญาณ 2 เส้นเรียกว่า SDA และ SCL สำหรับรับส่งข้อมูลระหว่างกัน ศึ่งพวกเรามีบทความเกี่ยวกับการสื่อสารประเภทนี้ค่อนข้างเยอะ และใช้เป็นบัสหลักในการพัฒนาอุปกรณ์ขึ้นมาเองแล้วเรียกใช้งานผ่านบัส เข่น บทความการใช้ esp8266 เชื่อมต่อกัย Arduino Uno หรือ การใช้ esp8266 กับ stm32f030f4p6 เป็นต้น

[TH] machine.Pin

บทความนี้เป็นการเรียนรู้การใช้งานคลาส Pin ซึ่งเป็นคลาสย่อยในคลาส machine ของ Micropython เพื่อใช้งานกับไมโครคอนโทรลเลอร์ ESP8266 หรือ ESP32 พร้อมทั้งกล่าวถึงหน้าที่ของขาของชิพทั้ง 2 ที่ควรทราบก่อนใช้งาน

[TH] random

การสุ่มตัวเลขในภาษาไพธอนใช้คลาส random แต่ในระบบไมโครคอนโทรลเลอร์ไม่มีระบบที่สนับสนุนการสุ่มมากเหมือนในระบบคอมพิวเตอร์ทำให้ Micropython รองรับคำสั่งแตกต่างกันไปตามประเภทของชิพ โดยในบทความนี้กล่าวถึงการใช้ random กับไมโครคอนโทรลเลอร์ esp8266 และ esp32 ซึ่งมีคำสั่งให้ใช้งานเพียงสร้างตัวเลขสุ่ม และกำหนดค่า seed ของการสุ่มดังนี้

[TH] machine.RTC

บทความนี้นำรายละเอียดของคลาส machine.RTC ของ Micropython มาเรียนรู้กัน โดยหน้าที่หลักของคลาสนี้คือ ออกแบบมาเพื่อเป็น RTC (Real-Time Clock) หรือนาฬิกาฐานเวลาจริง ภายในไมโครคอนโทรลเลอร์สำหรับเก็บวันที่และเวลาจึงทำให้สะดวกมากขึ้นเมื่อใช้งานร่วมกับชิพ ESP8266 หรือ ESP32 เนื่องจากสามารถเข้าถึง NTP เพื่ออ่านวันที่และเวลาจากอินเทอร์เน็ตหลังจากนั้นนำค่ามาเก็บลง RTC ทำให้มีวันที่และเวลาที่ถูกต้องพร้อมทั้งไม่ต้องเข้าถึงอินเทอร์เน็ตบ่อย ๆ เพื่ออ่านค่าดังกล่าวอีกครั้ง ซึ่งประหยัดการใช้วงจร RTC ภายนอกอีกด้วย

[TH] Arduino : DHT Sensor

บทความนี้เป็นการอธิบายการใช้งานไลบรารี DHT Sensor ของ Adafruit ที่รองรับกับทุกสถาปัตยกรรมที่ใช้กับ Arduino ได้ ทำให้สามารถประยุกต์การใช้งานเซ็นเซอร์ DHT ซึ่งใช้สำหรับอ่านค่าความชื้นและอุณหภูมิได้สะดวกและกับหลายแพลตฟอร์มได้ง่ายขึ้น โดยบทความนี้ได้ทดสอบกับ ESP32, ESP8266, Arduino UNO และ stm32f103c แล้วพบว่าสามารถใช้งานได้โดยไม่ต้องปรับแก้ไขโค้ดในส่วนของการทำงานหรือต้องเข้าไปแก้ไขรหัสต้นฉบับเพื่อให้ใช้งานได้กับแพลตฟอร์มที่ใช้งาน

ภาพที่ 1 dht22 Sensor กับ BluePill

[TH] RTC DS1302 and Micropython

บทความนี้อธิบายการเขียนโปรแกรมเพื่อใช้งาน DS1302 (ภาพที่ 1) ซึ่งเป็นไอซีที่ทำหน้าที่เป็น RTC (Real-Time Clock) อีกตัวหนึ่ง (ก่อนหน้านี้ได้เขียนถึง PCF8583 ด้วยภาษาไพธอนและ Arduino C++) และเป็นโมดูลที่นิยมใช้ในการเริ่มต้นศึกษาเนื่องจากเป็นโมดูลในชุดเรียนรู้ทั้งของ Arduino, IoT, 37-Sensors หรือ 45 Sensors เป็นต้น

ภาพที่ 1 ตัวอย่างการต่อใช้โมดูล ds1302

[TH] RTC PCF8583

จากบทความภาษาไพธอนสำหรับใช้งานบอร์ด pcf8583 ที่ทำหน้าที่เป็น RTC (Real-time clock) ทางทีมเราเลยนำโค้ดมาเขียนใหม่เพื่อใช้กับภาษา C++ ของ Arduino โดยทดสอบกับ esp8266, esp32 และ stm32

[TH] An Interrupt in MicroPython

บทความนี้อธิบายหลักการทำการขัดจังหวะหรืออินเทอร์รัพต์ (Interrupt) และการดักการเกิดการขัดจังหวะด้วย MicroPython โดยทดลองกับ ESP8266 และ ESP32 เพื่อเป็นแนวทางในการเขียนโปรแกรมตอบสนองการเกิดเหตุการณ์จากภายนอกโดยไม่ต้องรอให้งานที่ทำอยู่นั้นทำเสร็จก่อน

ภาพที่ 1 การทดลองตรวจจับระยะด้วยการดักการขัดจังหวะ

[TH] Digital Compass Sensor

บทความนี้เป็นการอธิบายการใช้งานเซ็นเซอร์เข็มทิศดิจิทัลรุ่น GY-271 ด้วยภาษาไพธอนของ MicroPython เพื่อใช้งานกับ ESP8266 หรือ ESP32 (และได้ทดลองกับ STM32F411CEU6 กับ Raspberry Pi 3B+ และ 4B แล้วสามารถใช้งานได้เหมือนกัน) เพื่อตั้งค่าการทำงานและอ่านค่าแกน X,Y และ Z จากเซ็นเซอร์ หลังจากนั้นนำมาคำนวณเป็นค่าองศาของทิศเหนือ

ภาพที่ 1 ทดลองใช้ GY-271

[TH] ESP8266 and OLED

บทความนี้เป็นการเชื่อมต่อ ESP8266 เข้ากับโอแอลอีดี หรือ OLED ซึ่งเป็นแอลอีดีกราฟิกแบบ 2 สี คือ สี 0 แทนไม่แสดงจุดสี และ 1 แทนการแสดงจุดสี โดยเชื่อมต่อกับไมโครคอนโทรลเลอร์ผ่านบัส I2C โดยกล่าวถึงวิธีการใช้และฟังก์ชันสำหรับใช้งานเพื่อเป็นแนวทางและเนื้อหาอ้างอิงในการนำไปใช้ต่อไป

ภาพที่ 1 ตัวอย่างการใช้งาน OLED