การเขียนโปรแกรม ARM Cortex-M ตอนที่ 2 : ภาคซอฟต์แวร์

มาต่อกันในตอนที่ 2 ส่วนนี้เราจะพูดถึงเรื่องซอฟต์แวร์ที่จำเป็นสำหรับการเขียนโปรแกรม ซึ่งประกอบด้วย 3 ส่วนด้วยกันคือ IDE driver ของ programmer/debug probe ตัวช่วยสร้างโค้ดเริ่มต้น หรือ initialization code generator library และ middleware สำหรับ MCU แต่ละแบรนด์ ว่าด้วย IDE กันก่อน ผู้ผลิต MCU แต่ละเจ้าส่วนใหญ่ก็จะมี IDE เฉพาะของตัวเองออกมา และจะให้ใช้ได้ฟรีๆ กัน นอกจากนี้ยังมีผู้ผลิต IDE สำหรับ MCU อีกหลายรายที่บอกว่า IDE ของตัวเองมีความสามารถและคุณสมบัติที่แตกต่างจากตัวอื่นซึ่งมีทั้งที่ให้ใช้ฟรีและที่ต้องจ่ายเงินซื้อ License IDE จากผู้ผลิต MCU IDE จากผู้ผลิตอิสระ ส่วนต่อไปก็คือ driver ของ programmer/debug probe อันนี้ก็ขึ้นอยู่กับว่าเราจะพัฒนาโปรแกรมบนบอร์ดตัวไหน development board หลายๆตัวจะมี on-board

การเขียนโปรแกรม ARM Cortex-M ตอนที่ 1 : ภาคอุปกรณ์

แน่นอนว่าเมื่อเราจะเขียนโปรแกรมบนไมโครคอนโทรลเลอร์ อย่างแรกที่ต้องมีคือตัวไมโครคอนโทรเลอร์เอง ใน blog นี้และตอนต่อไปจะใช้บอร์ดต่อไปนี้เป็นหลัก Arduino M0 หรือเทียบเท่า บอร์ด STM32F030 Discovery บอร์ด STM32F030 หรือ STM32F103 อย่างตัวนี้ http://www.ebay.com/itm/401193554185 หรือ http://www.ebay.com/itm/STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-For-Arduino/311156408508 บอร์ด Arduino M0 และ STM32F103 นี้สามารถเขียนโปรแกรมด้วย Arduino IDE ได้ โดยที่ตัว STM32F103 จะต้อง upload code ผ่าน USB serial adapter อย่างต่อไปคือ Debug Probe ซึ่งก็คือตัวที่ใช้เขียนโปรแกรมลงไมโครคอนโทรลเลอร์และยังใช้ debug โปรแกรมที่เราเขียนลงไปได้ด้วย แบบนี้จะต่างจากการใช้ Arduino IDE ที่โดยมากเราจะเขียนโปรแกรมและปล่อยมันทำงานไปเลย จากนั้นก็ดูผลการทำงานโดยอาจดูจากไฟ LED หรือ serial monitor ไม่สามารถไล่โปรแกรมทีละบรรทัดได้ การใช้ IDE

Google cloud + Pi + micro:bit part 2

ต่อจากตอนที่แล้ว (Part 1) ตอนนี้เราจะเชื่อมต่อทั้งหมดเข้าด้วยกัน โดยหน้าที่ของแต่ละส่วนเป็นดังนี้ Pi จะเรียกข้อมูลจาก web service ที่จะ return ข้อมูลกลับมาในรูปแบบ JSON ประกอบด้วย String และ List of String ตามรูป และส่งข้อมูลที่อยู่ใน List of String ไปแสดงผลที่ micro:bit ทีละตัว ทาง usb serial ทุกกี่วินาทีที่กำหนด micro:bit รับข้อมูลทาง usb serial มาแสดงผล เมื่อกดปุ่ม A ที่ micro:bit จะเป็นการร้องขอข้อมูลชุดใหม่จาก Pi ให้ Pi ส่งกลับมาทันที ไม่ต้องรอตามรอบ vdo แสดงการทำงาน code ของ micro:bit เขียนด้วย JavaScript Blocks Editor

Google cloud + Pi + micro:bit part 1

จากที่เพิ่งซื้อ Micro:bit มา มันมี led อยู่ประมาณนึง ใช้ทำ scroll text ได้ เลยคิดเล่นๆ ว่าจะให้ Micro:bit แสดงข้อมูลที่ส่งมาจาก internet แล้วจะให้แสดงข้อมูลอะไรดี คิดไปคิดมา ทำ data provider  เองดีกว่า จากงาน Google Next ที่ผ่านมา Google ก็มี free tier ให้ใช้แล้ว ก็ขอลองสักหน่อย ขั้นสุดท้ายคงเป็นแบบนี้ micro:bit — pi — internet — google cloud สร้าง App วิ่งบน Google App Engine Google App Engine รองรับหลายภาษามาก แต่ ณ เวลานี้ที่ตัวเองทำ webapp ได้เร็วสุดก็ Python

รีวิวติดตั้ง AIS Fibre

เรื่องของเรื่องคือช่วงหลังๆ นี้บริการอินเทอร์เน็ตของทรูแบบ DOCSIS ที่ใช้อยู่ออกอาการเอ๋อๆ คือ เวลาเข้าเว็บบางครั้งจะเจอ error ว่า service unavailable ต้อง refresh browser แล้วจะเข้าได้ปกติ หรือบางครั้งเวลาเข้าเว็บเป็น url แบบย่อ เช่น t.co ของ twitter หรือ bit.ly จะค้างไปเลย ต้องกด stop และ reload ถึงจะหาย แต่บางครั้งก็ไม่หาย จึงเริ่มมองหาทางเลือกอื่นนอกจากทรู ที่หมู่บ้านมี node ของ 3BB อยู่ข้างๆ ป้อมยาม และมีป้ายของ AIS บอกว่ามีบริการ fiber แล้ว ก็เลยมองไปที่ AIS ก่อน เพราะว่าไม่ชอบ JAS เป็นการส่วนตัว ถถถถ 28 ธันวาคม 59 ไปเดินเก็บใบโปรโมชั่นของทรูกับ AIS มาเทียบกัน