mc9s08dz60 BootLoader基于bin文件

最新更新时间:2021-10-14来源: eefocus关键字:mc9s08dz60  BootLoader  bin文件 手机看文章 扫描二维码
随时随地手机看文章

项目需求:


统一BootLoader下载协议为客户协议。

统一BootLoader下载文件类型为bin文件。

Boot时需要备份,如果中途下载失败需要恢复成之前版本。

硬件环境:


MCU: mc9s08dz60.

ZLG USB-CAN II.

项目控制器。

软件环境:


WIN7.

CodeWarrior10.7.

通常来说,大家写NXP的BootLoader用s19文件进行下载的较多。使用CW10.7编译,默认生成abs文件及s19文件。实际上可以通过修改设置直接生成bin文件,但是十分不建议这样做。实测CW10.7直接生成bin文件有bug(全局变量初始化代码丢失)。如下是s19文件转化为bin文件的步骤:


打开buner如下图,路径为CW10.7安装路径/MCU/prog。

点击burner dialog,选择input file(生成的abs文件),选择file(转换后文件储存路径及名称)如下图

Content的选择如下图

点击该按钮

这里需要着重说明一下,bin文件不包含程序的地址和长度。步骤3填写的0x8500是程序的起始flash地址,0x6900是程序的长度。生成的bin文件用FlexHEX打开如下图:

可以看到,bin文件从地址为0x0000开始到0x68FF结束,长度一共0x6900,与事先设定相符。最后实现的结果为,刷写后MCU Flash中地址0x8500 - 0xEDFF与上图打开0x0000- 0x68FF数据完全相同。刷写后可以通过PE对比查看Flash中的数据。


BootLoader的工作过程如下:

关键字:mc9s08dz60  BootLoader  bin文件 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic545737.html

上一篇:MC9S08DZ60单片机测量时间的问题
下一篇:GPIO的配置及使用(MC9S08AW60)

推荐阅读

[keil][python][单片机] keil 集成bin文件生成 boot+app合并 dfu生成
一、 首先配置keil执行工具.file_handling.bat @L !L $K输出文件名根据自身定义二、 编写bat脚本(此处需要根据工具存放路径进行更改 xBin2Dfu/merge_file)@echo offset bin=%1set axf=%2set keilpath=%3echo current file:%bin%.binecho current axf:%axf%echo current keilpath:%keilpath%:: 生成bin%keilpath%ARMARMCCbinfromelf.exe --bin --output=.outbin%bin%.bin %axf%:: 生成DFU.xBin2Df
发表于 2022-09-19
[keil][python][单片机] keil 集成<font color='red'>bin</font><font color='red'>文件</font>生成 boot+app合并 dfu生成
NORDIC 烧录BLE协议栈后不能用JLINK仿真bootloader问题及修改方案
问题原因:bootloader的程序区域是0X78000~0X7E000但是在bootloader程序中定义了0X0FF8与0XFFC位置处的数据,此数据与BLE协议栈冲突,BLE协议栈的flash范围是0~0X25FFF,所以烧录协议栈后不能用JLINK仿真具体在bootloader中的代码为:/** @brief Location (in the flash memory) of the bootloader address. */#define MBR_BOOTLOADER_ADDR (0xFF8)/** @brief Location (in UICR) of the bootloader address. */#def
发表于 2022-08-22
NORDIC 烧录BLE协议栈后不能用JLINK仿真<font color='red'>bootloader</font>问题及修改方案
[nrf52][SDK17] 如何使用官方BootLoader
所需文件已经编译完毕,直接放入指定目录。**nRF5_SDK_17.0.2_d674ddeexternalmicro-eccmicro-ecc.rarBootLoader工程位置xxnRF5_SDK_17.0.2_d674ddeexamplesdfusecure_bootloader使用keil编译完成后,直接烧录,是无法运行的,因为[mbr_nrf52_2.4.1_mbr.hex]引导文件没有烧录。xxnRF5_SDK_17.0.2_d674ddecomponentssoftdevicembrhexmbr_nrf52_2.4.1_mbr.hex将文件复制到工程根目录写一个脚本,命名[program.bat]@echo off@ec
发表于 2022-08-18
stm32 bootloader启动正常,APP程序会在时钟配置出错原因分析
实验环境STM32F411芯片HAL库利用CubeMX生成的Bootloader和APP工程现象描述将Bootloader和APP程序分别下载到板子上,Bootlader程序可以正常运行,而APP程序会死在Error_Handler()的while(1)循环中。具体调试发现程序是在执行HAL_RCC_OscConfig()函数的PLL 配置部分检测到当前PLL已经被配置为了系统时钟而返回了HAL_ERROR的返回值导致进入了Error_Handler()。为什么bootloader程序中的时钟配置没有问题,而APP中的时钟配置就会有问题呢?分析网上搜索了一下,发现了一种说法:PLL在启动之后便不能够重新配置。感觉有一定的道理,为了进
发表于 2022-08-09
stm32 <font color='red'>bootloader</font>启动正常,APP程序会在时钟配置出错原因分析
S3C2440使用bin文件机器码点灯
S3C2440芯片手册导读https://blog.csdn.net/qq_28258885/article/details/111461640这次我们先点亮另外一个LED灯,于是先阅读芯片手册这次配置LED2,那么我们将GPFCON的[11,10]设置成01,也就是0x400编程/**点亮LED:GPF4*/.text //表明它是代码段.global _start_start:/*配置GPF4为输出引脚*把0x100写到地址0x56000050上,熄灭led*/ ldr r1, =0x56000050 /*将这个地址存放到r1中*/ ldr r0, =0x400 /*或者使用 mov r0, #0x400 将0x400放入r
发表于 2022-08-05
S3C2440使用<font color='red'>bin</font><font color='red'>文件</font>机器码点灯
使用Digispark Bootloader工具通过USB直接对ATtiny85进行编程
ATtiny系列是AVR市场上最小的微控制器系列之一。这些微控制器能够利用Arduino平台上的许多库。 ATtiny85微控制器芯片是8引脚,8位AVR微控制器。它的体积小,功耗低,非常适合空间小,功耗低的便携式项目。但是,由于没有像微控制器板那样的USB接口,因此将代码写入芯片可能会遇到一些挑战。在前段时间,我们使用Arduino Uno对ATtiny85进行了编程。但是将Attiny85连接到Arduino并使用Arduino作为ISP既困难又耗时。因此,在本篇文章中,我们将制作一个ATtiny85编程板,以便我们可以像其他微控制器板一样直接编程。所需的组件● Arduino UNO(仅在上传引导程序时第一次)● ATti
发表于 2022-07-25
使用Digispark <font color='red'>Bootloader</font>工具通过USB直接对ATtiny85进行编程

推荐帖子

这个STLINK错误是什么原因
想请问各位大大,这个错误是怎么一回事呢??谢谢了。这个STLINK错误是什么原因
小时 stm32/stm8
国产FPGA高云GW1N-4系列开发板测评之——硬件篇1
本帖最后由打破传统于2021-12-1014:56编辑 作为一个硬件工程师对于FPGA系统,开发非常考验一个工程师对硬件资源的把控,所谓知己知彼百战百胜,要想充分挖掘一款FPGA的潜力,让其硬件资源发挥其最大的力量,一定要对其进行全方位的认识,总体上应遵循由硬到软,由内到外,自顶向下的方针,接下来的这篇我们先来对其硬件进行全方位的学习。硬件篇之——整体概述:DK_MINI_GW1N-LV4LQ144C6I5_V1.1开发板整体布局是相当合理的开发板
打破传统 国产芯片交流
micro:bit资源
大家可能都知道micro:bit的官网有相当完备的支持,http://microbit.org/,在这里向大家介绍几个其他的micro:bit开发网站。 1.mbed.ARM的mbed现在也支持micro:bit,在线编译,开发方便。 2.http://www.bittysoftware.com/index.html这是一个micro:bit开发者的网站,里面有一些教程还是很有意思的。 3.https://twitter.com/pelikhan一个micro:bit的爱好者
renkaikaiser MicroPython开源版块
初学者买什么开发板好呢
能嵌入Linux系统,能外接液晶屏那种的,经济实惠点的初学者买什么开发板好呢
happyfeng 嵌入式系统
LaunchPad的虚拟串口到底能不能用来收发数据?
LaunchPad的虚拟串口到底能不能用来收发数据? 安装完TUSB3410的驱动后,“设备管理器”会多出一个“MSP430ApplicationUART(COM3)”这样一个虚拟串口。 这个虚拟串口能不能通信“串口调试助手”来收发数据呢? 我用“串口调试助手”测试过是可以接收到数据的,但是不能发送数据(即只能单向通信)。 找了很久都没找到原因。 有没有用LaunchPad的虚拟串口成功收发过数据的大侠出来指导一下啊。 引用“DavidLee”的原话,“LaunchPad板载
helloxieyu 微控制器 MCU
【极海 APM32E103VET6S开发板】评测4、简易示波器
本帖最后由wenyangzeng于2022-9-2410:47编辑 【极海APM32E103VET6S开发板】评测4、简易示波器本次评测综合整个评测过程的资源,将极海APM32E103VET6S开发板组成一台简易示波器。使能DAC1通道1产生正弦波测试信号,连接ADC1的通道2。ADC1通道2采正弦波信号数据,在屏幕显示正弦波波形,并计算出峰-峰值,在屏幕下方显示正弦波峰-峰电压值。ADC1配置DAC1配置主要代码 #include&quo
wenyangzeng 国产芯片交流
小广播
设计资源 培训 开发板 精华推荐

何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved