การ compile QT embedded 4.6.3 และทดลองเขียนโปรแกรมด้วย QT Creator 2.0.0

    เริ่มต้นด้วยการ compile QT embedded 4.6.3 โดยคัดลอกไฟล์ใน DVD ชื่อไฟล์ linux/arm-qte-4.6.3-20100802.tar.gz ไปไว้บน ubuntu แล้วแตกไฟล์ออกมา หลังจากที่แตกไฟล์แล้ว จะมี build script เราสามารถเรียก build script ได้เลย หลังจากที่ build เรียบร้อยแล้ว จะได้ไฟล์ binary อยู่ที่ /usr/local/Trolltech/QtEmbedded-4.6.3-arm

การควบคุม LED บนบอร์ด FrienlyArm MINI2440 ด้วย PHP

    การควบคุม LED บนบอร์ด FriendlyArm MINI2440 แบบง่ายๆเลยคือการเรียกใช้โปรแกรม /usr/bin/led นั่นเอง และ PHP ก็มีฟังก์ชั่นสำหรับเรียก execute ไฟล์บน linux ด้วยฟังก์ชั่น exec() เริ่มต้นก็สร้างไฟล์ขึ้นมาตั้งชื่อว่า led.php แล้วนำโค้ด php ด้านล่างไปใส่ในไฟล์ดังกล่าว เสร็จแล้วให้บันทึกไฟล์แล้วอัพโหลดไฟล์ไปไว้บนบอร์ด MINI2440 ที่ตำแหน่ง /www เสร็จแล้วก็เปิด web browser แล้วพิมพ์ IP address ของบอร์ดเช่น http://10.1.2.3/led.php ทำเครื่องหมายที่ช่องเพื่อให้ led0-3 ติด แล้วกดปุ่ม submit หลังจากที่กดปุ่ม submit แล้ว LED บนบอร์ด MINI2440 ก็จะติดดับตามที่เราทำเครื่องหมายไว้

การอัพโหลดไฟล์ไปไว้บนบอร์ด FriendlyArm MINI2440 โดยใช้ FileZilla FTP

    ก่อนอื่นต้องไปกำหนดรหัสผ่านของ root บนบอร์ด MINI2440 ก่อน โดยเสียบสาย RS232 กับบอร์ดแล้วเปิดโปรแกรม putty ขึ้นมา เพื่อเข้าไปยัง console ของ MINI2440 แล้วพิมพ์คำสั่ง

  • passwd

    แล้วให้ใส่รหัสผ่านตามที่เราต้องการ เสร็จแล้วให้เปิดโปรแกรม FileZilla ขึ้นมาเพื่อทดสอบ ftp โดยใส่ IP address ของบอร์ด MINI2440 บนช่อง Host ในช่อง Username ใส่เป็น root ในช่อง Password ให้ใส่รหัสผ่านที่ตั้งไว้ ในช่อง Port ให้ใส่เป็น 21 แล้วคลิกที่ปุ่ม Quickconnect

ติดตั้ง THTTPD + PHP บน FriendlyArm MINI2440

    เริ่มต้นโดยการดาวน์โหลด PHP และ THTTPD มาไว้บนคอมพิวเตอร์ที่ได้ติดตั้ง cross compiler แล้ว ในตัวอย่างนี้จะดาวน์โหลดและแตกไฟล์ไปไว้ที่ /home/jirawat/Downloads/php-5.2.14 และ /home/jirawat/Downloads/thttpd-2.21b ต่อไปก็เริ่มต้นการ compile php

การติดตั้ง Cross compiler และทดลอง compile kernel สำหรับ FriendlyArm MINI2440

    สำหรับเครื่องมือที่ใช้ในการ compile kernel ของ MINI2440 ก็จะมี cross compiler หรือ arm-linux-gcc และ OS ที่ใช้ก็เป็น linux ส่วนจะใช้ linux ditribution ไหนนั้นก็แล้วแต่ความถนัดของแต่ละคน ถ้าหากยังไม่เคยชินกับ linux ผมก็แนะนำให้ใช้ ubuntu เนื่องจากมีคนใช้งานเยอะ หากข้อมูลได้ง่าย OS ที่จะใช้งานสำหรับ cross compiler ผมจะติดตั้งบน VirtualBox ซึ่งเป็น Virtual Machine ที่สามารถดาวน์โหลดมาใช้งานได้ฟรี สำหรับวิธีการติดตั้ง VirtualBox และการตั้ง ubuntu บน VirtualBox ผมขอไม่อธิบายนะครับ

FriendlyArm MINI2440 การดาวน์โหลด bootloader, linux kernel, root file system

     การเริ่มต้นศึกษาและใช้งาน Linux embedded ด้วย FriendlyArm MINI2440 ขั้นตอนแรกเลยเราจะต้องศึกษาวิธีการดาวน์โหลด bootloader, linux kernel และ root file system ก่อน
    ในขั้นตอนการดาวน์โหลดไฟล์ต่างๆลงบอร์ด MINI2440 เราจะใช้ไฟล์ใน DVD ที่แถมมากับบอร์ด โดยไฟล์ที่ใช้จะอยู่ในโฟล์เดอร์ images\linux_20100817 ส่วนโปรแกรมที่ใช้ในขั้นตอนการดาวน์โหลดจะมี putty และ dnw.exe โปรแกรม putty ต้องดาวน์โหลดมาก่อน ส่วนโปรแกรม dnw.exe มีอยู่ในแผ่น DVD ตรงโฟล์เดอร์ tools

แทรกรูปภาพหรือ logo ลงบน pcb ใน Altium

    หลายๆคนที่ใช้โปรแกรม Altium ออกแบบ PCB อยู่ อาจจะสงสัยว่าจะแทรกรูปภาพ หรือว่า logo สัญญลักษณ์ต่างๆลงบน pcb ได้อย่างไร วันนี้ผมมีวิธีการแทรกรูปภาพลงบน pcb มาแนะนำกันครับ เริ่มด้วยเปิดโปรแกรม altium ขึ้นมา แล้วเปิดโปรเจค C:\Program Files\Altium Designer Summer 08\Examples\Scripts\Delphiscript Scripts\Pcb\CreateRegionsFromBitmap\PCBPictureCreator.PRJSCR ขึ้นมา หลังจากที่เปิดโปรเจคขึ้นมาแล้ว จะมีไฟล์อยู่ในโปรเจค 3 ไฟล์ให้เปิดไฟล์ที่ชื่อ ConvertPicture.PAS ขึ้นมา หลังจากนั้นให้เพิ่ม code ตรง Procedure TConverterForm.LoadButtonClick(Sender: TObject); โดยให้เพิ่ม

ความเข้าใจที่ผิดเกี่ยวกับ Ethernet controller ใน PIC32

 

   วันก่อนได้ออกแบบวงจรใหม่ตั้งใจจะใช้ PIC32 ที่ออกมาใหม่ เพราะเห็นว่ามี ethernet controller ในตัว เอาไปต่อกับ LAN Connector ได้เลย ลดพื้นที่บนบอร์ดได้ด้วย แต่หลังจากไปดูวงจรตัวอย่างจาก PIC32 ethernet starter kit แล้วจึงรู้ว่าความจริงแล้ว Ethernet บน PIC32 ยังไม่ได้รวมตัว PHY ไว้ด้วย ถ้าจะนำ PIC32 ไปใช้งาน ethernet จะต้องต่อ ic ที่เป็น PHY เพิ่มอีก ในวงจรตัวอย่างของ microchip เข้าใช้ ic เบอร์ DP82848C

การตั้งค่า IOL1WAY config bit ของ PIC24

    PIC24 บางเบอร์จะมี register สำหรับการทำ remap ขา I/O เพื่อย้ายตำแหน่งขา I/O ไปยังตำแหน่งขาที่เราต้องการได้ แต่ค่า configuration bit IOL1WAY ที่เป็นค่า default นั้นตั้งไว้ให้ผู้ใช้งานสามารถเขียนข้อมูลไปยัง remap register เพียงครั้งครั้งเดียว หลังจากนั้นหากต้องการย้ายขา I/O จะต้องทำการ unlock register ก่อนถึงจะเขียน remap register ได้ ดังนั้นหากต้องการเขียนข้อมูลไปยัง remap register โดยไม่ต้อง unlock ก่อนจะต้องตั้งค่า config bit IOL1WAY เป็น IOL1WAY_OFF

วิธีการสร้างไฟล์ library สำหรับ mplab C32 และ Hi-tech C

    ก่อนอื่นมาทำความรู้จักกับไฟล์ library ก่อน ไฟล์ library คือไฟล์ที่รวบรวมฟังชั่นที่เราเขียนขึ้นมา เอามาไว้ในไฟล์เดียว ถ้าจะอ้างอิงการเขียนโปรแกรมบนคอมพิวเตอร์ ไฟล์ library สำหรับ microcontroller ก็จะเหมือนกับไฟล์ dll หรือ Dynamic Link Library นั่นเองครับ library ที่เราเขียนมาใช้เองนั้น สามารถนำไปใช้ร่วมกับการเขียนโปรแกรมครั้งต่อไปได้ ข้อดีของไฟล์ library คือ ข้างในไฟล์จะเป็นข้อมูลแบบ binary ทำให้เราสามารถนำฟังก์ชั่นที่เราเขียนขึ้นไปแจกจ่ายให้กับบุคคลอื่นได้ โดยไม่ต้องเปิดเผย source code ภาษา c คนอื่นที่นำไฟล์ไปใช้ จะได้ไฟล์ไปสองไฟล์คือไฟล์ library (.a, .lib) และไฟล์ header (.h) ในไฟล์ header จะเป็นตัวบอกว่าไฟล์ library นั้น มีฟังก์ชั่น ตัวแปล และค่าคงที่ อะไรบ้าง ที่เราสามารถเรียกใช้งานได้