`一、遥控器固件烧写
这里的固件是指源代码编译出来的Hex
或者
Bin
文件,其中
Hex
是十六进制文件、
Bin
是二进制文件。如下图所示为遥控器代码编译出来的
Hex
文件。
只要把这个固件烧写进遥控器的主核心
STM32F103C8T6
的
Flash
内,遥控器的代码就可以运行。这里已经把编译好固件放在了“【
5
】遥控器固件烧写”文件夹下,如下图所示。
具体的烧写步骤如下:
(1)
把配套的下载器接入遥控器的下载接口,另一端通过数据线接到电脑。接口位置,如下图所示。
(2)
打开J-Flash ARM
,点击“
Start J-Flash
”,然后会弹出选择对应的
J-flash
文件框,找到型号“
STM32F103CB.jflash
”,点击打开。如下图所示。
这里遥控器的主芯片的型号明明是“
STM32F103C8T6
”,为什么会选择“
STM32F103CB.jflash
”呢
?
这是因为遥控器的整体代码大小占用空间已经超过了“
STM32F103C8T6
”的
64kB
大小,而根据
STM32
官方的提供的解决方法是,把
MDK
中选择的型号改为“
STM32F103CBT6
”,编译后也是可以下载固件到“
STM32F103C8T6
”芯片中的,如下图所示。
可以这样是因为STM32F103C8T6
和
STM32F103CBT6
是在同一晶圆上制造的,但是
ST
官方测试时,只测试手册提供的参数范围所包含的内容,也就意味这
STM32F103C8T6
也是
128kB Flash
,只不过只测试了前面
64kB
,然后打上
STM32F103C8T6
标注,所以可以依此来解决代码容量超额问题,经过大量地测试,遥控器代码运行也是正常的。
(4
)然后把对应的固件(
Hex
文件),拖到
J-Flash ARM
这个软件处就可以打开了,按下
F7
或者在“
Target
”下点击“
Auto
”,即可完成固件的下载。
拔掉下载器,重启遥控手柄电源,遥控手柄的各项功能运行正常。
`
|