摘要: 通過開發(fā)板與相應外設,實現(xiàn)了用手柄無線控制小車行駛的功能,系統(tǒng)由控制端和被控端兩個部分組成。 控制端:1.arduino開發(fā)板(下面簡稱ard) 2.24L01無線模塊a 3.wii手柄 被控端:1.51單片機 2.24L01無線模塊b 3.小車框架與四個電機 4.電機驅動板 主要流程:(1)控制端(發(fā)送端):人操作手柄→信號輸入ard→ard講信號傳入24L01(a) (2)被控端(接收端):24L01(b)接收數(shù)據(jù)→傳入51→51通過驅動板控制四個電機→小車產(chǎn)生相應動作 詳細描述: 1:ard開發(fā)板:ard語言易掌握,具有靈活性,可以簡單的與wii手柄和24L01連接,自帶很多開源的示例代碼,例如與24L01通訊所需的SPI協(xié)議可以直接引用,有3.3V引腳可以很方便的直接給24L01供電,可以實時查看串口數(shù)據(jù),便于手柄和24L01的調試。 其中,SPI固定了引腳接口,【the SPI bus uses pins 10 (SS), 11 (MOSI), 12 (MISO), and 13 (SCK).】 2.24L01無線模塊:8個引腳,需要3.3V供電,使用SPI協(xié)議通訊,51上沒有3.3v引腳,所以自己焊了一個,用的AMS1117,可以使5V轉為3.3V。 引腳圖(圖片引自淘寶提供的產(chǎn)品資料): 實物圖: 
AMS1117(圖片引自百度):3:wii手柄:日本任天堂公司的游戲手柄,俗稱雞腿手柄,傳感器可以通過操縱桿在x軸與y軸兩個方向上產(chǎn)生位移,wii的庫可以直接加進ard程序的頭文件。接口轉為排針的形式,便于與ard連接。 實物圖:
4:51開發(fā)板: 分別與接收用的24L01和電機驅動板連接,☆其中無線模塊SPI協(xié)議通訊部分用IO的高低電平模擬了時鐘信號,程序可以將收發(fā)同步,發(fā)送數(shù)據(jù)的最高位,后將電平置高,所有數(shù)據(jù)左移一位后將要發(fā)送的數(shù)據(jù)補進末位,再將電平拉低,循環(huán)8次實現(xiàn)一個字節(jié)的發(fā)送! 5:電機與驅動: 四個電機分別帶動四個輪子,驅動板由51發(fā)出的信號的控制,提供更高的電壓使電機轉動。 實物圖(51開發(fā)板和驅動板):
|