pcb อเนกประสงค์ AVR-USB-Arduino (3 in 1)

(update 10/07/2009)





"Duino Acry" case สุดเท่ห์ ของ DuinoThumb !!!




========================================================================================


พอดีผมกะลังทำ project เกี่ยวกับ usb (ใช้ AVR ทำเป็น softusb ซึ่งเมื่อก่อนนี้เราจะเรียกรวมไปว่า "AVR-USB") ออกแบบวงจร ทีแรกก็เสร็จแล้วล่ะ แต่คิดไปคิดมา ไหนๆ ก็ ไหนๆ ผมควรจะขยายบอร์ดเอามาต่อเพิ่ม เผื่อไว้ใช้งานอเนกประสงค์ ในงานอื่นๆ ด้วย ...เลยเอาโปรเจ็ค AVR-USB มายำๆ จนออกมาใช้งานได้ครับ ทำให้ pcb แผ่นเดียวกันนี้ สามารถทำงานได้หลายๆ project ครอบคลุมตั้งแต่ Arduino จนไปเป็น SoftUSB ครับ โดยมีบาง project ที่ test แล้วเช่น.. - USB mouse / USB keyboard Emulator ผมเอาไปทำ keyboard เกมส์ครับ ใช้ AVR เบอร์พิมพ์นิยม ATmega8/168 - USBaspLoader (เหมือน metaboard) ทำให้บอร์ดนี้กลายเป็น Arduino Clone เลยทันที !! ซึ่งผมตั้งชื่อว่า "DuinoThumb" ทำให้การพัฒนา Arduino นั้นง่ายขึ้นมาก และไม่ต้องต่ออุปกรณ์อะไรเพิ่มเลย (มีแค่ mega8/168 ขนาดหัวแม่มือตัวเดียวจบ~!) รวมถึงไม่ต้องมี serial, USB2Serial, และไม่ต้องหาสาย power ฯลฯ อีกต่อไป เพราะ bootloader ก็ทำหน้าที่โหลดโปรแกรมลง flash ในตัวมันเองเลย ทดลองใช้งานแล้วเยี่ยม !! - USB to Serial converter ก็ทดสอบแล้ว work !! - project อื่นๆ ยังไม่ได้ทดลอง แต่คิดว่าคงได้เหมือนกัน เพราะ kernel เดียวกันจาก obdev
รายละเอียดตามรูปเลยครับ..
อันนี้ภาพขนาดเท่าของจริงครับ (ตอนที่ออกแบบตัวจริงยังไม่มา) ขนาดประมาณเหรียญสองบาท 2 เหรียญ 
หรือหัวแม่โป้งผู้ชายตัวใหญ่ๆ บึกๆ หื่นๆ (ผมเป็นผู้ชายตัวเล็ก ใบหน้าหมดจดงดงาม จึงไม่นับรวม)
อันนี้รูป PCB จากโปรแกรม Eagle

รวม collection ต้องขอบคุณ Eagle3D จริงๆ ที่ทำให้ผมมีวันนี้ (เวอร์ซะ..อิอิ ;P )
อันนี้รูปลายวงจรอเนกประสงค์ครับ
A. คือถ้าต้องการใช้งานในงานที่ต้องการไฟ 5V ก็ short ตรงนี้ไปเลย แล้วไดโอด D1,D2 อาจจะไม่ต้องใช้ก็ได้ อันนี้เหมาะกับงาน AVR ทั่วไป, แต่ถ้าต้องการไฟ 3V ก็ไม่ต้อง short กันครับ B. ตรงนี้เผื่อๆ เอาไว้ ถ้าใช้ไฟ 5V ก็ควรต่อ R C. อันนี้เหมือน Arduino ครับ แถม LED ให้ใช้เป็นตัวทดสอบก็ได้ :D D. วงจรนี้ดีกว่า metaboard ตรงที่ มี ISP ด้วย เพราะ บอร์ดเดิม metaboard ไม่มี isp เนื่องจากบ้านเค้ามี mega168 แบบ dip ขาย แต่บ้านเราต้องรอ es อย่างเดียว (แล้วก็ไม่มาสักที) ตรงนี้เลยแถมให้เผื่อว่าใช้งานอื่นๆ ด้วยจะได้สะดวก E. ตรงนี้ออกแบบมา C ให้มาขนานกัน จริงๆ จะใช้ก็ได้ไม่ใช้ก็ได้ เพราะบาง project ใช้ C 27p,18p บางทีมีแบบ chip บางทีเป็นเซอรามิค ผมเลยตัดปัญหา ทำมา 2 แบบขนานกันไป อยากใช้แบบไหน เชิญเลย เลือกได้ F. มีวงจร reset มาให้ด้วย จึงใช้กับ USBaspLoader ทำเป็น Arduino ได้ครับ

รูปประกอบร่าง หลังจากได้บอร์ดมาแล้วววววววครับ

อันนี้ "DuinoThumb 168" ขนาดเท่าเหรียญสองบาท 2 เหรียญ
อันนี้กับโปรแกรมสุด classic ไฟกระพริบครับ
ชัดๆ อีกสักรูป.. ภาพการใช้งานจริง DuinoThumb (Arduino ขนาดเท่าหัวแม่โป้งงงงงงง) สรุป : หลังการประกอบ ก็ใช้งานพวก USB Soft เพื่อจำลอง AVR ให้กลายเป็น USB Device ได้เช่น USBKeyboard , USBMouse , Usb2Serial รวมไปถึง Arduino (ใช้ USBasp เป็น bootloader) โดยใช้ได้เป็นอย่างดีครับ แต่ตอนประกอบ ต้องระวังนิดหน่อย เพราะยังไม่ได้ทำ Solder Mask ผมใช้ ลวดซับหมดไปเป็นม้วนๆ เลย อิอิ

ทีแรกตั้งใจว่าจะใช้ dip แต่ผมต้องการ "อเนกประสงค์จริงๆ" คือทำขายก็ได้, เปลี่ยนงานก็ได้ (ครอบคลุม) ฯลฯ เลยเอาแบบ chip ดีกว่า เพราะถ้าว่าตามกันจริงๆ เลย ปกติแล้ว ถ้าบอร์ด(ทดลอง)มันลงตัว (ไม่ใช่เศษๆ อุปกรณ์มารวมๆ กัน) ส่วนใหญ่เมื่อเราประกอบกันเสร็จแล้ว "เรามักจะทิ้งมันไว้อย่างนั้น" น้อยคนนักที่จะแงะ MCU ออกมาเพื่อทดลอง project ใหม่ (ส่วนใหญ่เรียกว่า "ดอง") เราเลือกที่จะซื้อ MCU ตัวใหม่มากกว่า สำหรับงานต่อไป ผมเลยเลือกที่จะใช้ MCU แบบ SMD นั่นเอง เพราะบอร์ดจะได้เล็ก อีกทั้งยังเลือกทำแบบบาง เพื่อจะได้ดูสวย เวลาลงกล่องก็ไม่เกะกะด้วย


ขอบคุณที่ติดตามครับ (^^)
เป็นหนึ่ง




นอกเรื่อง...
อันนี้เป็นอุปกรณ์มหัศจรรย์ จากประเทศจีนครับ เดินตาม pantip ซื้อมา 30 บาท บางร้าน 25 บาท (ยังไม่ได้ต่อ!!) ผมกลับมานั่งคิด นอนคิด เอาตีนก่ายหน้าผาก คิดจนหัวเกือบแตก "โห่แมร่ง~ มึงทำยังไงให้ราคามันได้ถูกขนาดนี้ฟร่ะ" (แล้วยังงี้กรูจะเอาไรไปสู้บ้านมรึง แสดดดด) 30บาท เมืองไทย ค่ากล่องก็เกินแล้วครับ แต่ 30 บาทบ้านมันนี่ยังได้กำไรอีกนะ !!! 
ช้ำสุดๆ ก่อนกลับบ้าน คนขายถามว่า "จะซื้อไปทำ project หรอน้อง ซื้อเยอะหรือป่าว เดี๋ยวพี่ลดให้อีก !!" ... 
ผมคิดในใจ สงสัยบ้านมันขาย 3 อัน 5 บาท..-_-!
ภาพการต่ออุปกรณ์มหัศจรรย์ เพื่อการใช้งาน

นอกเรื่องมาเยอะแล้ว เข้าเรื่องดีฝ่า เพราะต้องรักษาภาพพจน์ เนื่องจากงานนี้หัวต่อ เป็น USB ครับ ทีแรกผมคิดว่า ผมจะต่อ supply ด้วย แต่พอเห็นไอ้อุปกรณ์มหัศจรรย์ตัวนี้เลย ตัดใจไป เวลาใช้งานจริงๆ ก็เอา DuinoThumb เสียบตูด เสียบปลั๊ก จบเลย !!! นี่เป็นตัวอย่างบอร์ดเก่างานเก่าครับ รับ remote ไปเปิดปิดไฟฟ้า ใช้ AVR ตัวเล็กเบอร์ Tiny2313 แต่ถึงกระนั้น "DuinoThumb" ก็ยังเล็กกว่า(นิดหน่อย) อยู่ดีครับ แถม port ใช้งานครบ !!!


ขอบคุณคร้าบบบ
เป็นหนึ่ง (-_-')
Comments