【开源教程6】疯壳·开源编队无人机-遥控器固件烧写

2022年08月12日 10:21    发布者:Linda-x
COCOFLY 教程——疯壳·无人机·系列遥控器固件烧写






图1   

    一、遥控器固件烧写
    这里的固件是指源代码编译出来的 Hex 或者 Bin 文件,其中 Hex 是十六进制文件、Bin 是二进制文件。如下图所示为遥控器代码编译出来的 Hex 文件。


    图2

    只要把这个固件烧写进遥控器的主核心 STM32F103C8T6 的 Flash 内,遥控器的代码就可以运行。这里已经把编译好固件放在了“【5】遥控器固件烧写” 文件夹下,如下图所示。

   
    图3
    具体的烧写步骤如下:
    (1)把配套的下载器接入遥控器的下载接口,另一端通过数据线接到电脑。接口位置,如下图所示。

   
    图4
    (2)打开 J-Flash ARM,点击“Start J-Flash”,然后会弹出选择对应的 J-flash文件框,找到型号“STM32F103CB.jflash”,点击打开。如下图所示。

   
    图5   

   
    图6
    这里遥控器的主芯片的型号明明是“STM32F103C8T6”,为什么会选择“STM32F103CB.jflash”呢?这是因为遥控器的整体代码大小占用空间已经超过了“STM32F103C8T6”的 64kB 大小,而根据 STM32 官方的提供的解决方法是, 把 MDK 中选择的型号改为“STM32F103CBT6”,编译后也是可以下载固件到“STM32F103C8T6”芯片中的,如下图所示。

   
    图7
    可以这样是因为 STM32F103C8T6 和 STM32F103CBT6 是在同一晶圆上制造的,但是 ST 官方测试时,只测试手册提供的参数范围所包含的内容,也就意味这 STM32F103C8T6 也是 128kB Flash,只不过只测试了前面 64kB,然后打上STM32F103C8T6 标注,所以可以依此来解决代码容量超额问题,经过大量地测试,遥控器代码运行也是正常的。
    (4)然后把对应的固件(Hex 文件),拖到 J-Flash ARM 这个软件处就可以打开了,按下 F7 或者在“Target”下点击“Auto”,即可完成固件的下载。

   
    图8
    拔掉下载器,重启遥控手柄电源,遥控手柄的各项功能运行正常。



如需定制开发,请通过官网“疯壳”网页底部的“联系我们”进行联系

文件下载请点击:259166

该文章有附件资料,如需下载请访问 电脑版