单片机教程网

电脑版
提示:原网页已由神马搜索转码, 内容由www.51hei.com提供.
查看:2549|回复:0
打印上一主题下一主题

arduino nano小遥控器源程序

[复制链接]
跳转到指定楼层
楼主
ID:688515发表于 2021-3-11 19:23|只看该作者|只看大图回帖奖励
寒假无聊,在家里整了个航模遥控器。遥控器的代码大体算是完成了,但略显粗糙,计划写个蓝牙软件对这个遥控器进行调参,开学了,就没整软件。
接收机的代码写的也差不多了,我自己只试过无刷电调的单向驱动,还不错。双向电调家里边没有,所以双向电调的对中信号也没算出来。

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, 下载次数: 22)

评分

黑币 +50
收起理由
+ 50
共享资料的黑币奖励!

查看全部评分

手机版|小黑屋|51黑电子论坛|51黑电子论坛6群QQ管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网