历史上的今天
返回首页

历史上的今天

今天是:2025年04月19日(星期六)

2021年04月19日 | mc9s08dz60添加BootLoader实现CANboot下载更新功能

2021-04-19 来源:eefocus

 为了以后项目升级方便的需要,在原始程序添加CanBoot下载功能;

1、 把Bootloader安排在高地址区间 (比如0xEE00~0xFFAF),然后固化NVC寄存器的值,将这块Flash区域保护起来;

2、中断向量的搬移,将原来0xFFC0所对应的中断向量搬移到0xEDC0;

Bootloader的代码无非就是启动、查找用户程序入口,跳转至用户程序,从用户程序跳转至bootloader,与上位机通信(UART或者CAN),擦除Flash,写入Flash等功能;


具体操作就是修改两部分;


1、修改Project.prm文件,重新划分分区。我划分的分区如下所示:


SEGMENTS /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */

    Z_RAM                    =  READ_WRITE   0x0080 TO 0x00FF;

    RAM                      =  READ_WRITE   0x0100 TO 0x107F;

    APP_ROM_ENTRY            =  READ_ONLY    0xEDB0 TO 0xEDBF; 

    APP_ROM                  =  READ_ONLY    0x1900 TO 0xEB00; 

    DATA_ROM                 =  READ_ONLY    0xEB00 TO 0xEDAF;   

    APP_ROM1                 =  READ_ONLY    0x1080 TO 0x13FF;   

    BOOT_ROM                 =  READ_ONLY    0xEE00 TO 0xF8FF;

    BOOT_ROM1                =  READ_ONLY    0xF900 TO 0xFFAD;

    EEPROM                   =  READ_ONLY    0x1400 TO 0x17FF;

/*  INTVECTS                 =  READ_ONLY    0xFFC0 TO 0xFFFF; Reserved for Interrupt Vectors */

/*  INTVECTS_REL             =  READ_ONLY    0xEDC0 TO 0xEDFF; Reserved for Relocated Interrupt Vectors */


END


2、修改中断向量表,如下所示:


#include "Interrupt.h"

#if (0 == DEBUG_ON)

const char NVPROT_INIT@0xFFBD = 0xFC; //4.5K保护0xEE00~0xFFFF

const char  NVOPT_INIT@0xFFBF = 0x20; //中断向量重映射

#endif

extern void _Startup(void);

#pragma CODE_SEG APP_ENTRY

void AppEntry(void)

{

    _Startup();

}

#pragma CODE_SEG DEFAULT


extern void ISR_RTC(void);

extern void ISR_Key(void);


void DummyISR(void)

{

    for(;;);

}



/*** 重定向的中断向量表 ***/

#if (0 == DEBUG_ON)

const void (* const _VectRedirection[])( ) @0xEDC0 =

#else

const void (* const _VectRedirection[])( ) @0xFFC0 =

#endif

{

    DummyISR,           // 0xFFC0:ACMP2

    DummyISR,           // 0xFFC2:ACMP1

    DummyISR,           // 0xFFC4:MSCAN   Transmit

    DummyISR,          // 0xFFC6:MSCAN    Receive

    DummyISR,           // 0xFFC8:MSCAN    Errors

    DummyISR,           // 0xFFCA:MSCAN    Wake Up

    ISR_RTC,            // 0xFFCC:RTC

    DummyISR,           // 0xFFCE:IIC

    DummyISR,           // 0xFFD0:ADC Conversion

    ISR_Key,           // 0xFFD2:Port A,B,D Pin

    DummyISR,           // 0xFFD4:SCI2 Transmit

    DummyISR,           // 0xFFD6:SCI2 Receive

    DummyISR,           // 0xFFD8:SCI2 Error

    DummyISR,         // 0xFFDA:SCI1 Transmit

    DummyISR,           // 0xFFDC:SCI1 Receive

    DummyISR,           // 0xFFDE:SCI1 Error

    DummyISR,           // 0xFFE0:SPI

    DummyISR,           // 0xFFE2:TPM2 Overflow

    DummyISR,           // 0xFFE4:TPM2 Channel 1

    DummyISR,           // 0xFFE6:TPM2 Channel 0

    DummyISR,           // 0xFFE8:TPM1 Overflow

    DummyISR,           // 0xFFEA:TPM1 Channel 5

    DummyISR,           // 0xFFEC:TPM1 Channel 4

    DummyISR,           // 0xFFEE:TPM1 Channel 3

    DummyISR,           // 0xFFF0:TPM1 Channel 2

    DummyISR,           // 0xFFF2:TPM1 Channel 1

    DummyISR,           // 0xFFF4:TPM1 Channel 0

    DummyISR,           // 0xFFF6:MCG    Loss of Lock

    DummyISR,           // 0xFFF8:Low Voltage Detect

    DummyISR,           // 0xFFFA:IRQ

    DummyISR,           // 0xFFFC:SWI

//  _Startup,           // 0xFFFE:Reset  Cannot be redirected


};


下载并修改BootLoader,此处注意BootLoader下载程序时首先要对dz60进行复位,要根据dz60的供电电源电压设置复位电压,否则可能导致单片机一直处于复位状态。


推荐阅读

史海拾趣

Global Specialties公司的发展小趣事

在电子技术的不断推动下,Global Specialties始终保持对新技术的高度敏感。公司不断投入研发资源,对现有产品进行升级换代,并推出了一系列具有创新性的新产品。例如,公司开发的智能测试仪器能够自动完成复杂的测试任务,大大提高了测试效率和准确性。这些技术创新不仅巩固了Global Specialties在业内的领先地位,还为公司带来了更多的商业机会。

Great American Electronics公司的发展小趣事

在电子技术的不断推动下,Global Specialties始终保持对新技术的高度敏感。公司不断投入研发资源,对现有产品进行升级换代,并推出了一系列具有创新性的新产品。例如,公司开发的智能测试仪器能够自动完成复杂的测试任务,大大提高了测试效率和准确性。这些技术创新不仅巩固了Global Specialties在业内的领先地位,还为公司带来了更多的商业机会。

City_Technology公司的发展小趣事

1977年,伦敦大学内,四个富有远见的科学家怀揣着梦想,创立了City Technology公司。他们利用Wolfson研究所开发的电化学技术,着手研发新型氧气感应技术。这一创新技术的诞生,标志着City Technology在气体传感领域的初步尝试,并为其日后的腾飞奠定了坚实的基础。在接下来的几年里,公司不断突破技术瓶颈,其铁罐氧气传感器技术于1982年获得了英国皇后奖技术成就奖,这一荣誉不仅肯定了公司的技术实力,也为其在市场上赢得了良好的声誉。

Hilscher Gesellschaft für Systemautomation mbH公司的发展小趣事

面对市场的多元化需求,HVPSI不断扩展其产品线,从最初的高压电源模块拓展到高压直流电源、高压脉冲电源等多个领域。公司还投入大量资源研发新型材料和技术,以提升产品的性能和可靠性。这些努力使得HVPSI能够提供全方位的高压电源解决方案,满足不同行业、不同应用场景的需求。

GSI Technology公司的发展小趣事

随着电子行业的快速发展,GSI Technology积极寻求新的市场机会。公司凭借其高性能存储器产品在军事、医疗、汽车等领域的应用优势,成功进军这些新兴市场。同时,GSI还积极与行业内其他企业建立战略合作关系,共同推动技术创新和市场拓展。例如,GSI与某知名汽车制造商合作,为其开发定制化的高性能存储器解决方案,有效提升了汽车智能化水平。

Astron Wireless Technologies Inc公司的发展小趣事

Astron Wireless Technologies Inc公司注重企业文化的建设和发展。公司倡导创新、合作、共赢的企业文化,鼓励员工积极参与技术创新和业务拓展。同时,公司还注重员工的培训和发展,为员工提供广阔的职业发展空间和丰富的福利待遇。这种积极向上的企业文化使得公司能够吸引和留住一批优秀的人才,为公司的长远发展提供了有力保障。

这些故事展示了Astron Wireless Technologies Inc公司在发展过程中可能遇到的挑战和机遇,以及公司如何应对这些挑战并抓住机遇实现持续发展的过程。然而,需要强调的是,这些故事仅为虚构,不代表公司的真实发展历程。要了解公司的真实情况,建议查阅相关的新闻报道、行业分析报告或公司官方资料。

问答坊 | AI 解惑

【2009年电子设计大赛题目分析三】——多图

电子竞赛中的30m的频率通讯电路图出来了 https://bbs.eeworld.com.cn/thread-85045-1-1.html 电子大赛之最大功率跟踪 https://bbs.eeworld.com.cn/thread-85046-1-1.html 大赛B题 自制声源 https://bbs.eeworld.com.cn/viewthread.php?tid=85080 ...…

查看全部问答>

教你如何学习嵌入式系统(基于ARM平台)(转)

一、嵌入式系统的概念          着重理解“嵌入”的概念    主要从三个方面上来理解。      1、从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构 ...…

查看全部问答>

WIFI安全性问题

wifi在连接路由器时,wifi会搜索出周围存在无线路由器,对于其中一台无线路由器,如果我们不输入密码,能不能连上。我在做wifi测试的时候,只指定用户名,而没有输入密码或者输入错误的密码能连接上了无线路由器,请问产生这个现象的原因是不是wifi ...…

查看全部问答>

中*美*爱*梯*科*技, 9月10日新班开课, 免费试听!

中*美*爱*梯*科*技, .NET外企软件工程师班将于2007年9月10日开课, 开课第一周免费试听, 欢迎大家踊跃报名参加!   中*美*爱*梯*科*技向学员郑重承诺: 百分之百保证就业, 月薪3000——8000, 就不了业者退还全部学费!    ...…

查看全部问答>

Code Composer Studio v4.2 for MSP430(tm) User’s Guide

[ 本帖最后由 wstt 于 2011-9-14 13:34 编辑 ]…

查看全部问答>

单片机通电之后继电器就一直响。

在淘宝上买的铁牛单片机,本来之前用还好好的,后来不知道烧了一个什么程序,导致每次通电之后继电器都会响一声,同时继电器下面那个绿灯也闪了一下,就一下。。。。烧录程序过程中,继电器就一直响,绿灯也一直闪烁。求高手们解答这是什么问题。? ...…

查看全部问答>

基于无线的定位算法研究资料大全

最近由于在研究无线定位算法,所以上传一些资料和大伙共享下,这都是我从各个渠道汇集而来的,希望对大家有用,也希望下载过的朋友留下个脚印。 [ 本帖最后由 wateras1 于 2012-5-3 22:01 编辑 ]…

查看全部问答>

MXCHIP+跑第一个Wifi例程的注意事项

第一个例程我昨天晚上就跑通了。今天看到网友说得好像很不容易,我把我的方法及遇到的问题说下。为以后扫清道路。 首先只要严格按照用户手册去做就应该没有问题。在这里再传下手册。同时自己也MARK一下。 我首先是下bootlaod: 手册上说很明确了 ...…

查看全部问答>

求教用msp430g2553 做一个音乐流水灯

想用PWM做一个蜂鸣器播放音乐加流水灯一起,做一个音乐流水灯,那个大神有成熟的程序吗,帮忙分享一下…

查看全部问答>