FlySky-i6x源码-硬件初始化

2022-09-06 15:01:49 浏览数 (1)

FlySky-i6x源码-AFHDS 2A

AFHDS 一代协议(FlySky)

FlySky - i6X 遥控器输出PPM信号

FS-i6X刷OpenTX(恢复到原始固件)

以上是以前的文章,此外代码经过分离,我上传到了不同的代码仓库。大家可以去看。

里面有汇编的启动代码,这里推荐这个插件

我其实想找下遥控器拆一下,看看里面的芯片,但是就是找不到了,也不知道我妈给我放哪里了。

我们来想一下,如何看这份源码,我想应该去看一下说明书:

支持2代协议的有这些

FS- i6X是一款支持固定翼/滑翔机/直升机模式的发射机。搭载AFHDS2A协议,最大支持10通道DIY拓展,具备USB模拟器功能。

可以去FCC看看

两份

这个看图是I6的照片

拆开的电路图

芯片

贴纸

协议一个简单的介绍

天线的位置

系统的特性

控制的按键

I6使用的是,NXP的 i6X使用的是STM32的

解惑了

我这样提交会被打吗?

芯片的配置

看这里就行

LCD的引脚配置

引脚树

ADC测量的IO

GPIO的寄存器

蜂鸣器

配对

PPM信号的输入和输出

射频芯片,主要是集中在GPIOE上面

使用的定时器函数

这个是16KHz的定时器

生成PPM的

第六个定时器是设计用来阶段的发送协议的活动包

LCD控制的初始化

用到了位定义

接着是要初始化控制的引脚

下面是ADC

这里是单个寄存器位置的定义

断电储存的功能

和射频芯片之间是SPI链接

这个是执行AD的转换

转换完以后写入到一个数组里面

灯光的亮灭

BSRR是置位寄存器位置

这是屏幕的控制,都置位

LCD屏幕的数据发送函数

上下,OK,取消

SPI数据是一位一位的输出

DR是SPI的数据寄存器

SPI的状态

传输缓冲区为空

编程就是状态的转换。

状态位的意思

单个的意思

SPI接收一个数据快

射频模块

代码语言:javascript复制
https://www.st.com/en/microcontrollers-microprocessors/stm32f072vb.html
代码语言:javascript复制
https://apps.fcc.gov/eas/GetApplicationAttachment.html?id=3044497
代码语言:javascript复制
https://www.flyskytech.com/u_file/photo/20200226/FS-i6X使用说明书20171108.pdf
代码语言:javascript复制
https://apps.fcc.gov/eas/GetApplicationAttachment.html?id=4791344
代码语言:javascript复制
https://apps.fcc.gov/oetcf/eas/reports/GenericSearchResult.cfm?RequestTimeout=500
代码语言:javascript复制
https://www.flyskytech.com/products/
代码语言:javascript复制
https://www.flyskytech.com/products_detail/37.html

0 人点赞