之前在研究GPIO driver的時候
利用LED來當做測試的標的
然後很無聊地寫了四個測試用app.....
不過一次點一個app很麻煩 所以就很無聊地想再把它們合起來
先來談談這個LED的driver
============================================
CoAsia43的板子有三個LED -> 綠 紅 藍
藉由Port B來控制其亮暗
GPB1 --> Green
GPB2 --> Red
GPB3 --> Blue
因為Green好像受到其它程式的控制 只要系統開機就會亮
你不管要他亮或暗它都不會鳥你
所以不理它 來玩弄剩下兩個LED
在driver的Init下設定Port B的相關參數 以下只提到重點 實際寫法請自行揣摩 GPBCON = (0x50<<0)or(0x5<<4) -> 設定為output
0xc = 1100 : 由於GPBUP 設定成pull-up 所以1是亮
GPBUP = (0x0<<0) or(0x00<<4) -> pull up enable
GPBDAT = (0xc<<0) or(0x3<<2)
故上面這個就是讓R B都亮起來
我的測試用驅動主要是要測試它是否有被掛載起來
所以至少讓它亮其中一個會比較好
接下來是CEPB的設定
開一個新的DLL專案之後 修改*.def *.reg
直接在專案名稱上按右鍵
將 Make Run-Time Image After Build 選取之後
再對其進行build 等他跑完後 記得修改ce.bib -> romimage ce.bib -> 燒錄kernel
沒意外的話 開機時就會看到綠燈以外的兩個燈亮了!!! (看怎麼設定的)
這篇先這樣 下一篇再來寫寫如何用App去控制亮暗
2008-04-25
wince LED (1)driver篇
posted at 18:20
Type: master life
訂閱:
張貼留言 (Atom)
1 則留言:
有別支程式用到了GPB1
搜尋一下程式碼就知道啦
張貼留言