找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 3764|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

自制DIY藍(lán)牙游戲手柄

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
## RW007 藍(lán)牙游戲手柄
- 聽(tīng)說(shuō)RW007支持BLE啦,于是想制作一個(gè)藍(lán)牙游戲手柄,玩一下游戲模擬器,找回童年的樂(lè)趣!
- 設(shè)計(jì)雛形,一塊開(kāi)發(fā)板,然后杜邦線連接,發(fā)現(xiàn)問(wèn)題,有點(diǎn)費(fèi)手!插針扎手啦。

- 果斷放棄,免費(fèi)PCB打樣中,重新設(shè)計(jì)一款。

- PCB到了,還沒(méi)來(lái)及焊接,先上個(gè)諜照吧!




- 主控芯片信息

| 參數(shù) | 敘述 |
| ------ | ------ |
| 型號(hào) | FR8012乞丐版 |
| 版本 | 藍(lán)牙5.1 |
| 內(nèi)核 | cortex-m3 |
| 時(shí)鐘頻率 | 48Mhz |
| RAM | 48K |
| FLASH | 256KB |
| 封裝 | SOP-16 |
| 系統(tǒng) | rt-thread 民間移植版 |

- 技術(shù)難題
  這個(gè)藍(lán)牙游戲手柄,其實(shí)藍(lán)牙通訊,如何匹配倒沒(méi)有花費(fèi)很多的精力,或許因?yàn)橥ㄓ嵞遣糠直容^成熟,拿過(guò)來(lái)使用就可以了。另外得到了大佬的指導(dǎo),順利的調(diào)通了無(wú)線通訊協(xié)議部分。主要遇到的難點(diǎn)是引腳不夠,比較緊張。如圖:

1 PA2,PA3燒寫(xiě)調(diào)試,無(wú)法做按鍵輸入使用。PASS。
2 采用ADCKEY方式,分析因?yàn)槭直С纸M合按鍵,該方案pass。
3 剩下5個(gè)引腳,其中PD4,PD5做搖桿ADC通道采集使用,只剩下3個(gè)GPIO了,PC6,PC7,PD5.如果對(duì)地設(shè)計(jì)按鍵,只能設(shè)計(jì)3個(gè)了.
4 游戲手柄除去4個(gè)方向鍵,目測(cè)還有select,start,A,B,AA(連發(fā)),BB(連發(fā))6個(gè)鍵值。
4 有點(diǎn)腦瓜疼!誰(shuí)讓我們用的是SOP-16封裝呢?想辦法,辦法總比困難多。這3個(gè)GPIO分別ADC0,ADC1做矩陣,時(shí)分復(fù)用能否可行?
5 細(xì)思量后發(fā)現(xiàn)一個(gè)極其恐怖的問(wèn)題,手柄是支持組合按鍵的,如果玩家方向鍵與A鍵同時(shí)按下,會(huì)發(fā)生很?chē)?yán)重的過(guò)流問(wèn)題。是堅(jiān)決不能允許的。
6 串聯(lián)過(guò)流電阻,解決了問(wèn)題。



- 工作原理
1 先將5個(gè)引腳關(guān)閉上拉,配置輸入方向,配置ADC0,ADC1,獲取4個(gè)方向數(shù)值。adc關(guān)閉轉(zhuǎn)換結(jié)束。
2  將5個(gè)引腳配置GPIO,并且上拉有效。
   2.1 配置PD4方向?yàn)檩敵觯⑶逸敵?.
   2.2 分別讀取PC6,PC7引腳電平值,作為SELECT,START鍵值.
   2.3 配置PD4方向輸入,上拉有效,配置PD5方向輸出,并且輸出0
   2.4 分別讀取PC6,PC7引腳電平值,作為AA(連發(fā)),BB(連發(fā))鍵值.
   2.6 配置PD5方向輸入,上拉有效,配置PD6方向輸出,并且輸出0
   2.7 分別讀取PC6,PC7引腳電平值,作為A,B鍵值.
   2.8 配置PD6方向輸入,上拉有效。J結(jié)束。

- 焊接成品


[視頻:]oss-club.rt-thread.org/uploads/20210724/7b92d8479847445e46886d6b3ece25a6.mp4

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表