我们的开源宗旨:自由 协调 开放 合作 共享

拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~

和一群志同道合的人,做自己所热爱的事!

项目开源地址:https://github.com/Cai-Zi/STM32_RC_Transmitter

QQ交流群:1091996634 【密码:J20】

1. 遥控器控制面板各按钮和遥杆说明

2. 菜单操作逻辑

3. 遥杆校准

由于不同的遥杆的回中值和遥杆范围不一样,所以在初次使用时,应先校准遥杆的范围!

校准方法如下:

(1)按下旋转编码器的按钮,由主界面进入菜单列表;

(2)顺时针或者逆时针拧动旋转编码器的旋钮,直到行程校准一栏被选中;

(3)此时,先不要着急按下【确定】键,应先使两个遥杆都处于中立位置,包括油门!

因为一旦进入校准界面,程序会首先获取各个通道的中立值,如果你的某个通道不处于回中状态,那么会导致校准失败,输出的PWM信号是非线性的!

(4)按下旋转编码器的按钮,或者按【确定】键,进入校准界面;

校准界面的第一列数字是通道的最小值,第2列数字是遥杆的最大值。事实上,这两列数字显示的是ADC的采样值,因为STM32F103C8T6是12位ADC,所以数值范围是0~4095(2的12次方)

(5)最后,最大限度地拨动各个遥杆方向,让遥控器感知你的遥杆边界。

你将会看到第一列数字会逐渐变小,第二列数字会逐渐变大,直到所有数字都不再变化,那么校准就完成了!

按【返回】键,或者【home】键,回到主界面即可。

4. 通道正反

有初学者疑惑,通道正反是什么作用?

通俗来讲,就是当你发现拨动遥杆,但是飞机的偏转方向和你想要的方向恰好相反,这个时候就要调整通道的正反了。

此外,由于是自己制作的遥控器,可能会把电位器的GND和VCC接反,比如油门通道向上拨,应该输出最大油门,而实际却输出了最小油门,这个时候可以通过调整通道正反来校正回来,而不用拆焊电位器的接线!

设置通道正反的方法如下:

(1)按下旋转编码器的按钮,由主界面进入菜单列表;

(2)顺时针或者逆时针拧动旋转编码器的旋钮,直到通道正反一栏被选中;

(3) 按下旋转编码器的按钮,或者按【确定】键,进入通道正反设置界面;

(4)菜单默认选中通道1,此时按【数值-】或者【数值+】键,即可设置通道1的正反;

设置通道2-4的正反,需要顺时针或者逆时针拧动旋转编码器的旋钮,直到该通道一栏被选中,再按【数值-】或者【数值+】键即可。

按【返回】键,或者【home】键,回到主界面。

5. 通道微调

在飞行时,你可能会发现,遥杆处于回中状态,但是飞机会渐渐朝某个方向偏,这个时候就要用到微调功能了。

5.1 方法一

如果飞机正在空中飞行,你可以使用6个微调按键对偏转的那个通道进行调整。调整时确保OLED屏幕显示的是主界面,否则六个按键操作的是菜单,而不是微调功能

5.2 方法二

如果你的飞机静止放置在地面,你需要对舵面进行调整。除了方法一,还可以在菜单栏里找到通道微调,点击确定按键,可对每个通道的数值进行调整。这个方法的好处在于,有数值一目了然。

设置方法如下:

(1)按下旋转编码器的按钮,由主界面进入菜单列表;

(2) 按下旋转编码器的按钮,或者按【确定】键,进入通道微调界面;

(3)菜单默认选中通道1,此时按【数值-】或者【数值+】键,即可设置通道1的微调;

可以试试短按和长按有什么区别喔~(笔者的得意之处)

设置通道2-4的微调,需要顺时针或者逆时针拧动旋转编码器的旋钮,直到该通道一栏被选中,再按【数值-】或者【数值+】键即可。

按【返回】键,或者【home】键,回到主界面。

彩蛋

可以试试在菜单列表时,长按旋转编码器的按钮会有什么效果哈~

有任何问题欢迎在评论区留言哦


写在最后

首先感谢项目中所有的贡献者!(截止2020.08.01)

* 蔡子CaiZi(B站up主)  https://space.bilibili.com/349576976
 * A-XIN;
 * 小何;
 * ZL_Studio(B站up主)https://space.bilibili.com/364251289
 * 王天天@WangTiantian139  https://wangtiantian139.github.io/
 * 刘桶桶;
 * 简繁;
 * 王博;
 * 与非门;
 * Talons;
 * 大米粥;
 * P a S S ||;

特别感谢正点原子提供的STM32例程和开源社区http://www.openedv.com/

由于笔者学业繁忙,时间有限,无法投入过多的精力,所以欢迎更多学有余力的模友,加入到项目的开发和维护工作中哈,现在基础的程序框架已经搭建完成,剩下的要做的就是填充、优化和扩展了,有意愿的模友加群后请私聊群主喔~

QQ交流群:1091996634 【密码:J20】

本文欢迎转载,请注明出处哈~

J20航模遥控器开源项目系列教程(二)使用说明 | 遥控器制作完成了,怎么用?的更多相关文章

  1. J20航模遥控器开源项目系列教程(一)制作教程 | 基础版V1.0发布,从0到1

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/C ...

  2. J20航模遥控器开源项目系列教程(五)| 制作STM32F0接收机,8路PWM输出,SBUS输出,PPM输出 | 加密狗无线化,畅玩飞行模拟器

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/J ...

  3. J20航模遥控器开源项目系列教程(七)PPM输出 | 关于按键版本和旋转编码器版本的兼容说明、布局建议 | 关于MINI版PCB的兼容说明

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/J ...

  4. J20航模遥控器开源项目系列教程(三)开发说明 | 想要自己改造程序,扩充功能,怎么实现?

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/C ...

  5. J20航模遥控器开源项目系列教程(四)PCB打印 | 嘉立创PCB下单教程,5元顺丰包邮解君愁!

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/J ...

  6. J20航模遥控器开源项目系列教程(六)亚克力外壳制作

    我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/J ...

  7. Laravel大型项目系列教程(二)之用户管理

    Laravel大型项目系列教程(二) 一.前言 本节教程将大概实现用户的注册.修改个人信息.管理用户功能. 二.Let's go 1.创建用户注册视图 $ php artisan generate:v ...

  8. ABP框架搭建项目系列教程基础版完结篇

    返回总目录<一步一步使用ABP框架搭建正式项目系列教程> 经过前面十二篇的基础教程,现在终于该做个总结了. 回顾 第一篇,我们建议新手朋友们先通过ABP官网的启动模板生成解决方案,因为这样 ...

  9. Laravel大型项目系列教程(三)之发表文章

    Laravel大型项目系列教程(三)之发表文章 一.前言 上一节教程中完成了用户管理,这节教程将大概完成发表Markdown格式文章并展示的功能. 二.Let's go 1.数据库迁移 文章模块中我们 ...

随机推荐

  1. Spring Security 实战干货:理解AuthenticationManager

    1. 前言 我们上一篇介绍了UsernamePasswordAuthenticationFilter的工作流程,留下了一个小小的伏笔,作为一个Servlet Filter应该存在一个doFilter实 ...

  2. 深入理解JVM(③)Java的锁优化

    前言 从JDK5到JDK6HotSpot虚拟机开发团队花费了大量的资源实现了各种锁优化技术,如适应性自旋(Adaptive Spinning).锁消除(Lock Elimination).锁膨胀(Lo ...

  3. IDEA中项目的两种打包方式

    本文主要介绍在IDEA中怎么打包,及可以用哪种方式打包. 若是有指正或补充的,欢迎留言~  ٩(●̮̃•)۶ 接下来进入正题: IDEA中打包需要先进行配置,so,我们先打开<abbr titl ...

  4. ✨Shell脚本实现Base64 加密解密

    加密算法 # !/bin/bash # 全局变量 str="" base64_encode_string(){ # 源数据 source_string=$1 echo " ...

  5. AttributeError: module 'time' has no attribute 'clock'

    在python3.8中flask项目运行报错: AttributeError: module 'time' has no attribute 'clock'解决方案 主要原因是因为python3.8中 ...

  6. 线程_进程间通信Queue合集

    # Queue的工作原理 from multiprocessing import Queue q = Queue(3)#初始化一个Queue对象,最多可接收3条put消息 q.put("In ...

  7. PHP ignore_user_abort() 函数

    实例 设置为 false(默认)- 与客户机断开会终止脚本的执行: <?phpignore_user_abort();?>高佣联盟 www.cgewang.com 上面代码的输出如下: 0 ...

  8. 痞子衡嵌入式:MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项(i.MXRT500为例)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项. 痞子衡前段时间写过一篇小文<为i.MXRT设计更 ...

  9. C/C++编程笔记:一张思维导图,带你总结C语言全部知识点!

    很多小伙伴想要好好地学习一下C语言的知识,但是又不知道怎么学,应该学哪一些C语言的知识,笔者在网上看到了这一张C语言的比较完善的C语言的学习路线图,有兴趣的小伙伴可以保存起来哈! C语言是面向过程的, ...

  10. NOI Online 游戏 树形dp 广义容斥/二项式反演

    LINK:游戏 还是过于弱鸡 没看出来是个二项式反演,虽然学过一遍 但印象不深刻. 二项式反演:有两种形式 一种是以恰好和至多的转换 一种是恰好和至少得转换. 设\(f_i\)表示至多的方案数 \(g ...