Powered by Drupal, an open source content management system

การประยุกต์ใช้งาน Embedded Linux Computer (ตอนที่ 10 - i2c Hardware)

Embedded Linux ก็เหมือนกับ Embedded System ทั่วไปครับที่จำเป็นต้องมี I/O Port เพื่อติดต่อควบคุมอุปกรณ์ภายนอก เนื่องจาก ELC ของเราดัดแปลงมาจาก Router ซึ่งไม่ได้มีความจำเป็นต้องใช้ I/O Port มากมาย ดังนั้น I/O Port ที่มีอยู่บนพีซีบีจึงค่อนข้างจำกัดและถูกใช้ไปเพื่อการอื่นจนหมดสิ้น เนื่องจากเป้าหมายของโครงการเราต้องการ Input Pin เพื่อตรวจสอบสถานะของการเปิดปิดประตูโรงรถ เราจึงจำเป็นต้องหาทางขยาย I/O Port จากสิ่งที่มีอยู่แล้ว
ทางเลือกในการขยาย I/O Port ของเราก็โดยการใช้ I2C Bus ซึ่งเป็นBusที่มีคุณสมบัติของความเป็นBusครบถ้วนและต้องการเพียงสายสัญญานสองเส้นคือ SDA (Data) กับ SCL

การประยุกต์ใช้งาน Embedded Linux Computer (ตอนที่ 9 - Utilities Program)

ในตอนนี้จะรวบรวมกลเม็ดเคล็ด(ไม่)ลับถึงอาวุธยุทโธปกรณ์(Utilities Program)ที่ติดมากับระบบOpenWrtให้ทราบกันนิดนึง ก่อนเคลื่อนกำลังไปรบกันจริงนะครับ
 
เคล็ดลับที่ 1.

การประยุกต์ใช้งาน Embedded Linux Computer (ตอนที่ 8 - Networking Setup)

เอาล่ะครับ มาถึงจุดนี้ Router WRT54GL ของเราก็ได้แปลงร่างมาเป็นEmbedded Linux computerไปเรียบร้อยแล้ว แต่ยังขาดส่วนสำคัญส่วนนึงที่ต้องเซ็ทอัพเพื่อให้สมบูรณ์แบบนั่นคือการทำให้มันสามารถเชื่อมต่อแบบไร้สายกับระบบเน็ทเวิร์คภายในบ้านในลักษณะเดียวกับที่เราใช้Laptopต่อเน็ทแบบไร้สายนั่นเอง ซึ่งการต่อในลักษณะแบบนี้เรียกว่า Client Mode
 
 
ก่อนอื่นมาดูโครงสร้างเน็ทเวิร์คในบ้านผมก่อนนะครับ จากภายนอกเข้ามาก็จะเป็น Cable (หรือสายโทรศัพท์ใ

การติดตั้ง x-window บน debian file system สำหรับ mini2440

ตรวจสอบไฟล์ sources.list ว่ามีข้อความ deb http://ftp.de.debian.org/debian lenny main บรรจุอยู่ดังนี้

# cat /etc/apt/sources.list
deb http://ftp.de.debian.org/debian lenny main

 

ถ้าไม่มีให้เพิ่มเติมด้วยคำสั่งดังนี้

การสร้าง Debian File System สำหรับ mini2440

Linux Debian Distribution เป็นระบบที่มี packages มากมายพร้อมใช้งาน นอกจากนี้ debian ยังรองรับ ARM ด้วย บทความนี้แสดงการสร้าง File System ของระบบ Debian เพื่อใช้วิ่งบน Mini2440

การสร้าง File System จำเป็นต้องใช้คำสั่ง sudo ในฐานะ root ดังนั้นหากท่านใช้คำสั่ง sudo แล้วพบ error username is not in the sudoers file. ให้แก้ไขไฟล์ /etc/sudoers แล้วเพิ่มเติมข้อความ username ALL=(ALL) ALL ดังนี้ โดยให้แทน username ด้วยชื่อของ user ที่คุณใช้ในการสร้าง file system

การประยุกต์ใช้งาน Embedded Linux Computer (ตอนที่ 7 - ชุบชีวิต)

สำหรับตอนนี้จะว่าถึงเรื่องที่สำคัญสองอย่าง
1. วิธีการกู้ชีพของRouterของเราในกรณีที่พลาดท่าBrickไป และวิธีเดียวกันนี้ยังใช้สำหรับการเปลี่ยนFirmwareได้ด้วย ไม่ว่าจะเป็นการอัพเกรดFirmware ของ OpenWrt ไปเป็นตัวใหม่ หรือ แปลงร่างจากOpenWrtกลับไปเป็นLinksys Firmware

2. การเซ็ทอัพให้WRT54Gของเราติดต่อกับระบบเน็ทเวิร์คหลักในบ้านผ่านWireless (จำได้ไม๊ครับ โจทย์ผมคือจะเอาWRT54Gไปใช้ในโรงรถซึ่งผมไม่ต้องการเดินสายเน็ทระโยงระยาง และต้องการติดต่อจากโลกภายนอกผ่านอินเตอร์เน็ทจากเครือข่ายอินเตอร์เน็ทในบ้านที่ผมมีอยู่แล้ว ด้วยเหตุนี้จึงได้เลือก Wireless Router มาเป็น

การประยุกต์ใช้งาน Embedded Linux Computer (ตอนที่ 6 - Flashing)

เอาล่ะครับ ได้เวลา Flash Router จริงๆสักที ก่อนอื่นขออธิบายกฏกติกามารยาทก่อนครับ
กติกาคือ ถึงแม้ว่าจะมีวิธีการที่จะกู้ router ของท่านหากท่านพลาดท่า Brick มันไป แต่ใดๆในโลกล้วนอนิจจัง ดังนั้น “Do it as your own risk!!!” นะครับ

หมายเหตุ
- Brick ในกรณีนี้เป็นคำกริยา หมายถึงการแปลง Router อันมีค่าของท่านให้กลายไปเป็นเหมือนก้อนอิฐที่ใช้ประโยชน์เพียงไว้ทับกระดาษกันลมพัดปลิวไป
- โดยส่วนตัวเคย Brick มาแล้ว และใช้วีธีดังกล่าวนี้ http://oldwiki.openwrt.org/KamikazeWRT54GBrickToBridge.html จัดการให้คืนสู่สภาพปกติได้

การประยุกต์ใช้งาน Embedded Linux Computer (ตอนที่ 5 - Prepare Flashing Image)

ถ้าไม่มีอะไรผิดพลาด เราก็จะได้ Image Files ที่จะใช้แฟลช Router ของเรา ทำการตรวจสอบได้ดังนี้
$ ls –la ~/openwrt/kamikaze/bin
total 38716
drwxr-xr-x  3 sak sak    4096 2009-09-07 22:58 .
drwxr-xr-x 15 sak sak    4096 2009-09-07 22:28 ..
-rw-r--r--  1 sak sak     958 2009-09-07 22:58 md5sums
-rw-r--r--  1 sak sak 2625536 2009-09-07 22:58 openwrt-brcm47xx-squashfs.trx
-rw-r--r--  1 sak sak 2625564 2009-09-07 22:58 openwrt-usr5461-squashfs.bin

การประยุกต์ใช้งาน Embeded Linux Computer (ตอนที่ 4 - สร้าง Image File)

มาถึงตอนนี้เราก็มีเครื่องเทียมที่วิ่งระบบปฎิบัติการ Linux Ubuntu และพร้อมที่จะทำการสร้าง Image File เพื่อใช้ในการ Flash WRT54GL ของเราแล้วนะครับ
หากท่านทำทุกอย่างถูกต้อง เมื่อเปิดโปรแกรม VirtualBox ขึ้นมาใหม่ ก็จะเห็นดังภาพ ให้คลิ๊กเลือก Ubuntu แล้วคลิ๊กปุ่ม Start
 
 
รอสักครู่ Linux Ubuntu ก็จะปรากฏขึ้นมา หลักๆแล้วเราจะทำงานกับส่วนที่เรี

Backup/Restore ด้วย Supervivi

Supervivi เป็น Bootloader ที่มาพร้อมกับบอร์ด mini2440 ซึ่งเราสามารถใช้ในการ backup และ restore NAND flash ดังนี้

ติดตั้ง usb driver ที่ใช้ในการ upload/download ระหว่าง supervivi กับ pc host
  • Turn off power switch
  • Switch NOR/NAND selector to NOR
  • Connect Serial0(RS232) to PC
  • เปิดโปรแกรม putty แล้วต่อกับ Rs232 ด้วย Buadrate 115200,n,8,1 

 

007611