|
本帖最后由 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
|
|