วันจันทร์ที่ 17 พฤศจิกายน พ.ศ. 2551

TNKernel - RTOS สัญชาติรัสเซีย

TNKernel เป็น RTOS พัฒนาโดยนาย Yuri Tiomkin
ซึ่งจบจากมหาวิทยาลัยแหล่งหนึ่งในรัสเซีย จุดเด่นของ TNKernel อยู่ที่ตัว
APIs ที่คล้ายกันกับ µITRON 4.0 ของทางญี่ปุ่น (ดร. เคน ซากามูระ
ปรมาจารย์ทางด้านระบบสมองกลฝังตัวของญี่ปุ่น) นอกจากนี้
ยังถูกพอร์ตไปยังไมโครคอนโทรลเลอร์ตระกูล ARM หลายตัว
และยังสามารถเข้ากันได้ Toolchains หลายยี่ห้อ
ตั้งแต่ที่สามารถใช้งานได้ฟรี (GNU Toolchains) ไปจนถึงตัวแพงๆ
ระดับหลายพันเหรียญ

หลังจากที่ไม่มีการออกเวอร์ชันใหม่มาประมาณปีกว่า (จนนึกว่าเลิกทำไปแล้ว)
ล่าสุด ก็ได้ปล่อยเวอร์ชัน 2.5 ออกมาให้ดาวน์โหลดไปใช้กันแบบฟรีๆ

http://www.tnkernel.com/downloads.html

พร้อมกันนี้ยังได้เปิดให้ดาวน์โหลดซอร์สโค้ดของ USB Firmware Loader
ฝั่งที่ทำงานบนพีซี ซึ่งเดิมให้มาเฉพาะไบนารี

http://www.tnkernel.com/usb_fw_upgrader.html

สำหรับใครที่กำลังมองหา RTOS
ขนาดเล็กที่ออกแบบมาสำหรับไมโครคอนโทรลเลอร์ตระกูล ARM โดยเฉพาะ
(แม้ว่าจะการพอร์ตไปยัง MCU ตระกูลอื่นบ้างแล้ว เช่น PIC, Freescale
HCS08) TNKernel เป็นอีกทางเลือกหนึ่งที่น่าสนใจ

แต่ทว่า ฐานของผู้ใช้ดูเหมือนจะยังจำกัดอยู่ในวงแคบๆ เมื่อเทียบกับ RTOS
ฟรี ตัวอื่นๆ เช่น FreeRTOS เป็นต้น

วันพุธที่ 5 พฤศจิกายน พ.ศ. 2551

มาสร้างโทรศัพท์มือถือ Android ใช้เองกันดีกว่า

เมื่อพูดถึงโทรศัพท์มือถือที่เปิดเผยข้อมูลออกแบบทั้งหมด ตั้งแต่แบบวงจร
ไปจนถึงซอฟต์แวร์ต่างๆ เรียกได้ว่าเอาไปปั๊มได้เลย ก็ต้องนึกถึง Openmoko
(www.openmoko.org) แต่ทว่าดูเหมือนจะไม่ค่อยได้รับความสนใจเท่าไหร่
เมื่อเทียบกับกระแสของ Android ซึ่งเป็น Mobile Platform จากทาง Google
(ประมาณว่ายุคนี้ Google ทำอะไรก็ดัง)
แม้ล่าสุดเพิ่งมีมือถือที่วางจำหน่ายแล้วเพียงรุ่นเดียวที่ใช้ Android
คือ HTC รุ่น G1 แต่ก็มีการคาดการณ์ว่าจะมีการผลิตมือถือรุ่นนี้ถึง 5
แสนเครื่องภายในปีนี้ นอกจากนี้ยังมี Motorola, Asus
และผู้ผลิตมือถืออีกหลายราย กำลังจะปล่อยมือถือที่ใช้ Android
ออกมาในเร็ววันนี้

ระหว่างที่รอ กลับมาที่ Openmoko
ซึ่งปัจจุบันได้มีการวางจำหน่ายฮาร์ดแวร์รุ่นที่ 2 แล้ว ที่ใช้ชื่อว่า
Neo Freerunner สนนราคาอยู่ที่ 399 USD ล่าสุดพบว่า Android
กลายเป็นอีกทางเลือกหนึ่งของซอฟต์แวร์ที่สามารถทำงานบนฮาร์ดแวร์ Neo
Freerunner ได้ ซึ่งเกิดขึ้นหลังจากที่ Google เปิดซอร์สโค้ดของ Android
(source.android.com) ได้เพียงไม่กี่สัปดาห์ สามารถดูรายละเอียดได้ที่

http://wiki.openmoko.org/wiki/User:Seanmcneil3

ก็คงเป็นอะไรที่ท้าทายคนที่อยากลองสร้างมือถือ Android ไว้ใช้เอง

ตัวอย่างโปรแกรมสำหรับ LPC2148 ที่สมบูรณ์ที่สุด

หากใครที่กำลังเรียนรู้หรือศึกษาการเขียนโปรแกรมสำหรับไมโครคอนโทรลเลอร์ตระกูล
ARM MCU ตัวหนึ่งที่ยังคงเป็นที่น่าสนใจก็คือ MCU ในซีรีส์ LCP214x จาก NXP
จุดเด่นของ MCU ตัวนี้ก็คงอยู่ที่มี USB Controller ภายในตัว เพื่อให้เห็นถึงศักยภาพของ
MCU ตัวนี้ อยากแนะนำให้ดูตัวอย่างโปรแกรมที่ท่าน J.C. Wren ได้กรุณานำมาเผยแพร่
ต่อสาธารณะ ซึ่งเป็นตัวอย่างโปรแกรมที่มีการใช้งานเกือบแทบครบทุกฟีเจอร์ที่ MCU ตัวนี้
มีให้ใช้เลยก็ว่าได้

http://jcwren.com/arm/

เดิมดูเหมือนท่าน J.C. Wren
จะไม่ได้มีการอัพเดทตัวอย่างโปรแกรมดังกล่าวมาประมาณปีกว่าๆ
(ตั้งแต่เวอร์ชัน 1.20)
แต่เข้าใจว่าหลังจากที่ตัวอย่างโปรแกรมดังกล่าวได้ถูกรวมให้เผยแพร่ไปพร้อมกับ
FreeRTOS 5.0.3 (อยู่ในส่วนของตัวอย่างโปรแกรมที่พัฒนา 3rd party)
ทำให้ตัวอย่างโปรแกรมดังกล่าวได้กลับมามีการอัพเดทจนมีเวอร์ชัน 1.30 และ
1.40 ตามออกมาโดยลำัดับ

ตัวอย่างโปรแกรมดังกล่าว
ยังแสดงให้เห็นแนวทางในการพัฒนาโปรแกรมสำหรับ MCU
โดยใช้เครื่องมือเสรี (GNU Toolchain)
รวมไปจนถึงการนำเอาซอฟต์แวร์แบบเปิดเผยซอร์สโค้ดจากหลายๆ
โครงการมาประยุกต์ใช้ได้อย่างลงตัว