寒假無聊,在家里整了個航模遙控器。遙控器的代碼大體算是完成了,但略顯粗糙,計劃寫個藍牙軟件對這個遙控器進行調參,開學了,就沒整軟件。
接收機的代碼寫的也差不多了,我自己只試過無刷電調的單向驅動,還不錯。雙向電調家里邊沒有,所以雙向電調的對中信號也沒算出來。
NANO引腳分配
左遙桿 X軸Y軸 A0,A1
右遙桿 X軸Y軸 A2,A3
OLED屏幕 SDA SCL A4,A5
電位器1,2 A6,A7
電容觸摸按鍵 2自鎖2點動 D2,D3,D4,D5
指示燈LED PWM輸出 D6
二段開關 D7,D8
NRF24L01P引腳 D9,D10,D11,D12,D13
藍牙串口 RX0,TX1
LED指示燈
指示燈我用的是共陽極的三色LED,之前,我還不知道有2812這種好東西 o(0…0)o ,所以就自己整了個電路
由于NANO只剩一個6號io口,使用6號口的pwm,利用LM339電壓比較器將電壓分開,對LED分開控制;
下邊是LM339接線圖;
但實際接線過程中,不懂什么原理,1.2-2.5v那一欄是沒有用的,而且直接用直流電源接輸入端與用方波信號輸入出現不同的結果,不知哪位大神能解答一下
但這些問題不影響使用,只用了兩個狀態
遙控器外殼
組裝成品
下面有代碼
遙控器代碼大體算完成,不用改基本能用,但推薦自己根據情況修改
接收機的代碼未完整需要自己調整pwm占空比,接收機有三個模式
模式1:接收機采用PCA9685模塊擴展PWM接口;50Hz 無刷電調上升沿為1ms-2ms 對應值為187-373; 舵機上升沿102為0度 187為45度 280為90度 373為135度 510為180度模擬通道
數值算法:
0.05 X 4096 X 0.915 ~= 187 ;
0.1 X 4096 X 0.915 ~= 374 ;
以此類推。
模式2:接收機采用nano自帶的3,5,6,9,10 PWM引腳輸出。11腳被占用,用軟件模擬的話會占用單片機資源,所以,只有五路PWM輸出口。
模式3:自行定義~
程序:
arduino nano遙控器.rar
(35.12 KB, 下載次數: 23)
2021-3-11 19:26 上傳
點擊文件名下載附件
|