星期六, 3月 01, 2014

RF遙控器 for Gearuino Part1

曾經覺得抬頭顯示器搭配無線遙控器應該是很屌的主意, 可惜已經有人作出來了

雖然如此, 自己土砲一個還是有樂趣的.

原本的方案是想要用藍芽做出遙控器, 但是藍芽耗電以及體積都是問題, 最後找到一般遙控器常採用的433MHz無線發射器, 體積小很多, 塞在方向盤遙控器裡不是問題.左邊為藍芽模組, 右邊為433MHz無線發射模組:


下面這是我所採用的方向盤遙控器, 已經將按鍵修改為電阻矩陣鍵盤(MCU沒那麼多I/O可以來解碼9個按鍵):


找到無線模組後, 就是決定MCU了.原本是打算用Arduino Micro或者Mini之類的模組:


不過體積略大了一點, 塞到方向盤遙控器有點困難.
所以後來找到更小的ATTiny(其實也沒有差很多)
上面是ATmega328P的模組, 下面是ATTiny85的模組:


但或許因為製程的關係(?), ATmega328P比較省電!
在1MHz, 1.8V下:
ATmega328P 200uA
ATtiny85/V: 300uA

但為了搞定ATTiny, 可是耗費了一番功夫.
首先, ATTiny不好買, 一開始我買到ATTiny13...容量太小...除非我自己去建Library..... 不是不願意, 而是花點錢就可以解決的問題, 還是花錢吧(我又沒有要量產...), 所以想法子改買ATTiny45或85.
但ATTiny真的很不好買, 最後我買到燒好Bootloader而且還有板子的ATTiny85, 如下圖:


這是由一家BlackBox的台灣公司出品的Arduino相容板, 或許應該說Digispark相容板會更精確(底下會再詳細說明), 這家的東西其實都挺有意思的, 但是Sales的回答卻讓我覺得很沒Sense.....
因為方向盤遙控器的電力來源只有一顆CR2025, 電壓僅有3V, 所以我要想辦法用3V去驅動這片板子, 板子上的有Regulator可以降壓到5V, 卻無法把3V昇到5V去驅動ATTiny(我也不想這麼做, 會吃掉額外的電), 跟Sales詢問有無方法可以用3V驅動, 結果Sales順便推銷了他們家的昇壓板, 要我把3V先昇上5V來驅動這塊ATTiny....用電池供電這是多麼沒效率的做法......

為了讓3V可以驅動, 只好自己想辦法, 多了解這塊板的硬體設計....
這塊BlackBox的ATTiny85板並沒有個響亮的名稱,暫且就叫BloackBox吧. 從BlackBox的英文網站宣稱, 是相容Digispark的板, 但後來被人家吐嘲硬體腳位不同, shield並不通用, 後來才改為"Digispark 軟體相容".

所以我深入去了解Digispark又是何方神聖, 簡單的說, 他是基於ATTiny85的板子, 其生態類似Arduino, 延用Arduino的IDE, 並且有自己的shield....和自己的Bootloader, Digispark所採用的Bootloader叫"Micronucleus", 最神的地方就是內含V-USB, 以軟體的方式模擬USB運作, 使的沒有USB晶片的ATTiny可以透過V-USB, 直接跟電腦溝通, 但也因為沒有UART轉USB的晶片, 無法造出一個UART, 因此Aduino的Serial指令都無法使用, 除錯得用其他方式.

但是這塊BlackBox的ATTiny85板又跟Digispark長的差很多, Digispark如下:

後來我發現, Blackbox的板子其外貌比較接近同樣是基於ATTiny的Adafruit Trinket(但Layout並不同). 上為Adafruit Trinket, 下為Blackbox:
考古結束, 重點是如何讓BlackBox可以在3V下運作, 我們在下回分曉.






沒有留言:

Mr.Color飛機模型用Color 與 水性AQUEOUS HobbyColor 對照表

          最近跟兒子一起研究長谷川的飛機模型, 其中說明書中採用的模型漆色號以Mr.Color硝基漆為主, 水性漆AQUEOUS 為輔. 很多Mr.Color有的顏色, AQUEOUS 都沒有, 前100的色號大致上都有對應到, 但Mr.Color 300號以後的都是特...