5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 7125|回复: 21
打印 上一主题 下一主题

用stm32DIY制作PPM编码器

[复制链接]
跳转到指定楼层
楼主
发表于 2018-7-29 11:20 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 HYH520 于 2018-7-29 11:20 编辑

最近和魔友换了一架四轴穿越机,然后就买了个f4飞控,问题来了,收到货后发现F4飞控的接受机信号只能用PPM或是SBUS信号,手里只有个华科尔六通接收机,没有sbus或是ppm信号接收机,一开始是想到买个华坑的sbus接收机,但是鉴于价格就不打算入手.........
所以呢,打算自己写一个编码器,头一回想到的是用arduino单片机,于是乎自己动手写了一个程序,按照ppm的编码格式,写完之后上机调试,问题又来了,感觉飞机跟不上手,延迟巨大,然后又对代码进行优化,但是效果依旧不理想,接着从网上找到别人用arduino写的ppm编码源程序,试了下延迟依旧很高.........可能是arduino的性能本来就不够快,也可能是我学的不够深吧,毕竟arduino才刚接触;
然后就想到用stm32f103c8t6单片机,这款单片机用的比较久,而且一块c8t6的价格比一块arduino nano板还便宜;性能上,stm32使用的是32位处理器,处理器速度最高72MHz,arduino只有八位;最快也就16MHz;精度方面,stm32也更胜一筹;
今天刚写完程序,又写了一个arduino读取ppm高低电平信号的程序,用来测试程序效果及具体延迟,结果然我惊喜,
最后贴上源码链接
链接:https://pan.baidu.com/s/12Jq_gU2ks8xbQCZZVyH5TQ 密码:otvf




1532833872(1).png (14.63 KB, 下载次数: 67)

这是ppm信号的低电平间隔,我是用的间隔是400us,arduino的打印结果是每个间隔均在400us左右

这是ppm信号的低电平间隔,我是用的间隔是400us,arduino的打印结果是每个间隔均在400us左右

1532833907(1).png (10.5 KB, 下载次数: 78)

这个是八个通道的ppm高电平时间,比较大4000左右的那个相当于起始信号

这个是八个通道的ppm高电平时间,比较大4000左右的那个相当于起始信号
22
 楼主| 发表于 2020-10-12 18:48 | 只看该作者
cmcli 发表于 2020-10-10 20:50
第 這部是 自找麻煩嗎
  O  BUS F4飛控 接收器 只有 UARTˊ6  有接反向
你其他 UART POST 你可以 選用 例 ...

我是萌新
21
发表于 2020-10-10 20:50 | 只看该作者
第 這部是 自找麻煩嗎
  O  BUS F4飛控 接收器 只有 UARTˊ6  有接反向
你其他 UART POST 你可以 選用 例如富斯  IBUS  
還有 SBUS 需要反向氣  要處理 這問題 第一  例如 O BUSF4 他在 UART6 接上一個反向氣 (三集管 PNP)
第二 你自己 買三極管 PNP 接再 你的 SBUS 接收器 然後可以 接再 任何一個 飛控 沒有接反向氣 UART 
第三  你玩不久 也不是很懂  STM 單晶片 硬體原理特性 去了解一下下  F3 F7 這飛控 支援 SBUS 協議 硬體內建 反向氣
F4 沒有 硬件 反向氣
 
20
发表于 2019-4-1 15:12 | 只看该作者
66666666666666666
19
 楼主| 发表于 2019-2-28 13:08 | 只看该作者
入门者 发表于 2019-2-28 09:59
不好意思啊   是我打错字了,我的意思是想请教一下,用stm32 单片机做ppm编码器    硬件的接线图是什么样 ...

我发的网盘里面有
18
发表于 2019-2-28 09:59 | 只看该作者
HYH520 发表于 2019-2-26 17:59
什么意思,没看懂

不好意思啊   是我打错字了,我的意思是想请教一下,用stm32 单片机做ppm编码器    硬件的接线图是什么样的啊?请赐教
17
 楼主| 发表于 2019-2-26 17:59 | 只看该作者
入门者 发表于 2019-2-26 17:24
stm32  ppm编码器迎检都是怎么连接的啊

什么意思,没看懂
16
发表于 2019-2-26 17:24 | 只看该作者
stm32  ppm编码器迎检都是怎么连接的啊
15
发表于 2018-12-2 09:52 | 只看该作者
666
<
14
发表于 2018-9-29 16:29 | 只看该作者
HYH520 发表于 2018-9-29 10:47
http://bbs.5imx.com/forum.php?mod=viewthread&tid=1438962&page=1#pid21127540
看新帖,有教程文件

谢谢                                                           
13
 楼主| 发表于 2018-9-29 10:47 | 只看该作者
oolloo 发表于 2018-9-26 07:50
楼主,麻烦你讲讲怎做ppm编码器,上些图,讲解一下。谢谢

http://bbs.5imx.com/forum.php?mod=viewthread&tid=1438962&page=1#pid21127540
看新帖,有教程文件
12
发表于 2018-9-26 07:50 | 只看该作者
楼主,麻烦你讲讲怎做ppm编码器,上些图,讲解一下。谢谢
11
 楼主| 发表于 2018-8-13 22:22 | 只看该作者
PLYL 发表于 2018-8-13 11:19
您好,请问关于ppm编码器的那个帖子有硬件连接图吗?可以分享一下吗?QQ 1219613309

请看新帖http://bbs.5imx.com/forum.php?mo ... ;page=1#pid21039084

10
 楼主| 发表于 2018-8-13 17:12 | 只看该作者
PLYL 发表于 2018-8-13 11:19
您好,请问关于ppm编码器的那个帖子有硬件连接图吗?可以分享一下吗?QQ 1219613309

有的,过些日子把sbus的一起发上来

9
发表于 2018-8-13 11:19 | 只看该作者
您好,请问关于ppm编码器的那个帖子有硬件连接图吗?可以分享一下吗?QQ 1219613309
8
发表于 2018-7-29 17:07 | 只看该作者
sbus没搞过,只搞过dsm,不过这两种解码都可以参考mwc飞控,代码量虽大一些,但比在百度上搜来的资料强100倍!
<
7
 楼主| 发表于 2018-7-29 16:56 | 只看该作者
t20109020 发表于 2018-7-29 16:50
其实你可以参考一下KK飞控的源码,里面有ppm解码算法。这款飞控的代码非常简单,你可以去下载来看看。

...

好的,下回还想尝试用sbus模式通信,sbus信号解码延迟更低。

6
发表于 2018-7-29 16:50 | 只看该作者
HYH520 发表于 2018-7-29 16:37
arduino没有多学,只是会用,所以也没法写的太好,而且我也上网找了一个arduino程序,效果不理想。

其实你可以参考一下KK飞控的源码,里面有ppm解码算法。这款飞控的代码非常简单,你可以去下载来看看。

5
 楼主| 发表于 2018-7-29 16:37 | 只看该作者
t20109020 发表于 2018-7-29 13:18
我估计可能是你程序没写好吧,我之前也写过arduino ppm解码,用来遥控flightgear里面的真机,ppm解码方面感 ...

arduino没有多学,只是会用,所以也没法写的太好,而且我也上网找了一个arduino程序,效果不理想。
4
发表于 2018-7-29 13:18 | 只看该作者
本帖最后由 t20109020 于 2018-7-29 13:57 编辑

我估计可能是你程序没写好吧,我之前也写过arduino ppm解码,用来遥控flightgear里面的真机,ppm解码方面感觉不到延迟,而主要延迟是来自于单片机和pc的半双工通信,单工通信也感觉不到延迟。

<
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表