



我们的开源宗旨:自由 协调 开放 合作 共享 拥抱开源,丰富国内开源生态,开展多人运动,欢迎加入我们哈~ 和一群志同道合的人,做自己所热爱的事! 项目开源地址:https://github.com/J20RC/STM32_RC_Transmitter 码云(Gitee)地址:https://gitee.com/J20RC QQ交流群:1091996634 【密码:J20】
PPM输出是什么?能做什么?
笔者在这篇文章中详细汇总了PPM协议 https://www.cnblogs.com/cai-zi/p/14110204.html,感兴趣的小伙伴可以前往查看哈~
因为PWM每路只能传输一路信号,在分别直接驱动不同设备的时候(比如固定翼,每路各自驱动不同的舵机和电调)这没有任何问题。但在一些场合,我们并不需要直接驱动设备,而是需要先集中获取接收机的多个通道的值,再做其他用途时,
比如遥控器接电脑玩模拟器,比如用PPM连接高频头来增加遥控距离,当然还有我们玩多轴,要将接收机的信号传输给飞控时,每个通道一组物理连线的方式就显得非常的繁琐和没有必要。这时候就要用到PPM了。

如何制作PPM输出引脚?
从2.2版本的固件起,J20航模遥控器开始支持PPM输出(固件下载:https://gitee.com/J20RC/STM32_RC_Transmitter/releases/2.2)
PPM输出只需GND和信号线即可,信号线接在PC13引脚,可使用3.5mm耳机插座进行安装。



温馨提醒:
由于PPM输出是最高优先级中断,不使用时请关闭【输出设置>>PPM输出】)。
从2.2版本的固件起,J20航模遥控器同时发布按键和EC11旋转编码器两个版本(固件下载:https://gitee.com/J20RC/STM32_RC_Transmitter/releases/2.2)
keil5源代码工程默认适配EC11旋转编码器版本,如果您想使用按键版本: 请在Keil5中打开工程后,点击魔法棒(Options for Target...) 点击选项栏 C/C++ >> Preprocessor Symbols 的define文本框中删除 EC11_VERSION 即可。



基础版遥控器mini板PCB 1.0版本的CSN/CE/IRQ连线与之后的版本不同,工程默认适配2.0版本PCB。 如果您使用的是1.0版本PCB,请在Keil5中打开工程后,点击魔法棒(Options for Target...) 点击选项栏 C/C++ >> Preprocessor Symbols 的define文本框中删除 NRF_PIN 即可。

mini板PCB 1.0版本 无线模块与STM32的连接:
NRF24L01模块: GND 电源地 VCC 接3.3V电源 CSN 接PA8 SCK 接PB13 MISO 接PB14 MOSI 接PB15 CE 接PA9 IRQ 接PB12
mini板PCB 2.0版本 无线模块与STM32的连接(调换了CSN/CE/IRQ):
NRF24L01模块: GND 电源地 VCC 接3.3V电源 CSN 接PB12 SCK 接PB13 MISO 接PB14 MOSI 接PB15 CE 接PA8 IRQ 接PA9
首先感谢项目中所有的贡献者!(截止2020.12.21) * 蔡子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 ||; * 佚名; * 小吴; * xuech007; 特别感谢正点原子提供的STM32例程和开源社区http://www.openedv.com/ QQ交流群:1091996634 【密码:J20】