AN4767.fm

Similar documents
EEPROM Emulation Driver for the Kinetis E Series Microcontrollers Application Note

Freescale Semiconductor, Inc. Document Number: AN4872 应用笔记 Rev. 0, 03/2014 使用 KE06 上的四线式 I 2 C 接口 作者 :Ben Wang 1 简介 本应用笔记将描述使用 Kinetis E 系列 KE06 上的四线式

KS22 LIN Demo 用户手册

2 控 制 面 板 控 制 面 板 控 制 面 板 显 示 打 印 机 的 工 作 状 态, 并 控 制 打 印 机 的 基 本 操 作 图 2 ZT230 控 制 面 板 图 3 ZT220 控 制 面 板

IBM 全 球 企 业 咨 询 服 务 部 中 国 五 矿 筑 起 人 力 资 源 信 息 大 厦 2 回 顾 篇 慎 选 巧 选 软 件 平 台 由 于 五 矿 集 团 下 属 的 很 多 公 司 是 最 近 几 年 才 加 盟 的 新 成 员 企 业, 这 些 公 司 所 应 用 的 人 力 资

ControlSafe TM ControlSafe ControlSafe CSC CPU ControlSafe CPU CPU CPU CPU CPU I/O I/O I/O I/O I/O I/O CPU CPU CSC CPU CSC CSC /ControlSafe ControlSaf

Autodesk Product Design Suite Standard 系统统需求 典型用户户和工作流 Autodesk Product Design Suite Standard 版本为为负责创建非凡凡产品的设计师师和工程师提供供基本方案设计和和制图工具, 以获得令人惊叹叹的产品

untitled

3. 企 业 债 券 : 公 司 债 券 : 5. 证 券 公 司 债 券 : 6. 企 业 短 期 融 资 券 : 7. 中 期 票 据 : 8. 资 产 支 持 证 券 : 9. 国 际 开 发 机 构 人 民 币 债 券 : 10. 中 小 非 金 融 企 业 集 合 票 据 例 题? 判 断

i.MX 6SoloX产品使用寿命估算


在Kinetis上使用DMA进行脉冲计数

優質居所 攜手共建

Microsoft Word - Atmel-45136A-Pick-Best-Microcontroller-Strom-Eiland-Flodell_Article_CS

外围器件-new.cdr

附件四:

河 南 蓝 皮 书 文 化 (2008) 网 络 文 学 主 要 是 指 在 网 上 原 创 的 文 学 作 品 作 为 网 络 文 化 的 主 力 部 分, 网 络 文 学 的 发 展 在 近 年 来 势 不 可 挡 作 为 凭 借 新 兴 媒 介 兴 起 的 文 学, 网 络 文 学 与 传 统

《將進酒》

21 flash

加 快 审 阅 和 标 记 工 作 流 程 Acrobat X 通 过 提 供 一 种 可 靠 的 文 件 格 式 扩 展 了 Office 和 SharePoint 的 协 作 服 务, 可 以 使 用 大 多 数 桌 面 应 用 程 序 生 成 这 种 格 式 并 使 用 Acrobat 或 免

发行说明, 版

DataNet_Solution2.ai


¬¬






汇教云用户手册

HD ( ) 18 HD ( ) 18 PC 19 PC 19 PC 20 Leica MC170 HD Leica MC190 HD 22 Leica MC170 HD Leica MC190 HD Leica MC170 HD

FlexIO 外设模块的主要特性 2 FlexIO 外设模块的主要特性 FlexIO 是指灵活的输入和输出外设 具有多种功能的高度可配置模块 允许模拟标准通信接口 支持多种协议和外设, 包括 : UART I 2 C SPI I 2 S LCD RGB CMT( 载波调制发送器 ) PWM/ 波形生

R710 R720 R310 R500 R600 M510 MU-MIMO BeamFlex ac Wave 2 MU-MIMOBeamFlex+ 2.5Gbps ac Wave 2 AP BeamFlex ac Wave 1 AP BeamFlex+ 802

CANVIO_AEROCAST_CS_EN.indd

海 南 冯 琳 峰 海 南 省 锅 炉 压 力 容 器 与 特 种 设 备 检 验 所 海 南 省 定 安 县 白 蒙 路 47 号 信 XC 内 蒙 古 冯 磊 赤 峰 市 特 种 设 备 检 验 所 内 蒙 古 赤 峰 市 红 山 区 八 里 铺 油 库 路

Logitech Wireless Combo MK45 English

Access Point C110 H320 H500 H510 R510 R ac Wave 2 DOCSIS ac Wave 2 10/100MbE BeamFlex ac Wave 1 GbE BeamFlex ac Wave

幻灯片 1

CSA SONET/SDH GR 253-CORE ITU-T G.703 ANSI T Ethernet IEEE Std ANSI X Fibre Channel Optical Fibre Channel Electrical U

Applied Biosystems StepOne™ Real-Time PCR System Quick Reference Card for Installation

第 十 一 期 2015 年 2 月 关 于 车 辆 购 置 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳 转 至 全 文 ) 国 家 税 务 总 局 公 告 2015 年 第 4 号 关 于 电 池 涂 料 消 费 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳

EK-STM32F

C110 H320 H510 R510 R ac Wave ac Wave ac Wave 2 MU-MIMO BeamFlex+ MU-MIMO BeamFlex+ DOCSIS /100MbE BeamFlex+ BeamFlex+ G

2002 Shintoukai Chinese Academy. All rights reserved 2

試卷一

Microsoft Word 箕æ−¥ï¼‹å®ı稿;

98年度即測即評學科測試與即測即評即發證技術士技能檢定簡章

陳偉補習班環境介紹

Panaboard Overlayer help

目 录 欢 迎 使 用 产 品 介 绍 产 品 概 述 产 品 特 点 代 理 商 系 统 使 用 说 明 登 陆 基 本 信 息 分 销 商 管 理 帐 户

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

<30312E20B9EFB7C5AF66BEC7A4A4A175A5CDAC7ABE69B3B1A176AABABDD7AA522E706466>

<32372E20B077A8EBABE1B7CBA5DEA4A3A650B260ABD7B9EFAA76C0F8AFABB867AEDAABACC056B4D5AF66AABAC0F8AEC4B1B4AFC12E706466>

使用 Adobe® Extension Manager CS4

PowerChute Personal Edition v3.1.0 代理用户指南


China Academic Journal Electronic Publishing House. All rights reserved.

China Academic Journal Electronic Publishing House. All rights reserved.


幻灯片 1


目 錄 使 用 者 介 面... 3 檔 案 頁 籤... 3 配 置... 4 狀 態 列... 4 功 能 區... 5 說 明... 5 文 件... 7 修 訂 雲 形... 7 標 註... 8 文 字... 9 幾 何 中 心 點 的 物 件 鎖 點 等 角 製 圖 格 線.

Microsoft Word - 1-3陳詠琳-近代..

!! :!!??!!?!??!!!... :... :'?'?! :' ' :'?' :'?' :'!' : :? Page 2

<D2B0D0C4D3C5D1C52DC8CED6BEC7BF202D20BCC7CAC2B1BE>

秘密大乘佛法(下)

國立臺東高級中學102學年度第一學期第二次期中考高一國文科試題

Page 2 of 12

Microsoft Word - Sunday

鎶ョ焊0

決議、附帶決議及注意事項

YYW1.nps

穨邱秀玲綜合展望報告.PDF

表 决, 审 议 程 序 符 合 有 关 法 律 法 规 和 本 公 司 章 程 的 规 定 3 本 议 案 尚 需 提 交 股 东 大 会 审 议, 与 该 等 交 易 有 利 害 关 系 的 关 联 股 东 将 放 弃 在 股 东 大 会 上 对 相 关 议 案 的 投 票 权 ( 二 ) 公

<4D F736F F D20B9F0D5FEB0ECB7A2A3A A3A93532BAC52E646F63>

103_02.xls

<313032A655A874B2D5B3CCA743BFFDA8FABCD0B7C7AAED2E786C73>

柳州历史上的今天内文改版式.FIT)

生 產 準 備 您 接 近 生 產 之 注 意 事 項 : 備 妥 住 院 用 物, 勿 遠 行 ( 生 產 用 物 包 ) 最 好 有 人 在 家 陪 伴, 或 和 陪 產 者 保 持 連 繫, 有 任 何 狀 況 可 立 即 趕 到 可 做 家 事 散 步 蹲 下 等 運 動, 以 不 太 累

省十二届人大常委会

Q8. 公 營 事 業 機 構 之 公 務 員 兼 具 勞 工 身 分 者, 於 97 年 3 月 19 日 以 前, 原 選 擇 參 加 勞 保, 調 任 其 他 公 營 事 業 機 構 時, 應 改 參 加 公 保 所 謂 調 任 其 他 公 營 事 業 機 構 之 判 別 依 據 ( 或 標

学生工作部处2010年工作总结

天人炁功行入與感應經驗分享

untitled

(Microsoft Word - 101Q1\246X\250\326\260]\260\310\251u\263\370\252\355.doc)

Xear 3D USB CH-IN-2 SPKs 2 6 :

untitled

<4D F736F F D20C7B6C8EBCABDCAB5D1E9CAD2B7BDB0B82E646F63>

untitled

使用 Adobe® Extension Manager CS4

Autodesk Whitepaper A4 size

使用FlexIO模块模拟I2S总线主机

Kinetis KL1x – 通用超低功耗MCU

xueshu004.doc



EMC® VNX® Series VNX8000™ Block 安装指南

Microsoft Word - Functional_Notes_3.90_CN.doc


Avigilon Control Center 6 ACC High Definition Stream Management (HDSM) ACC 6 ( Avigilon Appearance Search ) Avigilon Appearance Search ACC NVR HD Vide

Transcription:

Freescale Semiconductor 应用说明 Document Number: AN4767 Rev. 0, 7/2013 Kinetis E 系列上的 UART Boot Loader 设计 通过 : Wang Peng 在一个特定的场合, 很多应用或产品都需要升级固件, 以修复 Bug 或提高性能 大多数人都不愿意使用专用的调试接口, 而是使用 UART USB I2C 等通信接口 这种情况下, 就需要一个串行 Boot Loader 通过其中一个通信接口升级固件, 而不需要调试器或特定的程序工具 本文档将指导您如何使用 UART ( 通用异步接收器 / 发送器 ) 接口在 Kinetis E 系列上设计 Boot Loader 本文档中列出的示例代码是在 IAR 6.50 中开发的 内容 1. 简介...................................... 1 2. 软件体系结构.............................. 2 3. 结论...................................... 5 4. 参考...................................... 5 5. 术语表.................................... 5 1 简介 Boot Loader 是一种内置固件, 用于通过通信接口将应用代码编程到片上非易失性存储器 (Kinetis E 上的 Flash ) 本文档将介绍如何在 FRDM-KE02Z 板上设计 UART Boot Loader 该程序将使用 AN2295 PC 端主机 GUI 工具解码 s19 文件, 然后通过 UART 接口将应用代码传输到目标 MCU 然后写入到 Flash 2013 Freescale Semiconductor, Inc. All rights reserved.

软件体系结构 2 软件体系结构 可以从飞思卡尔网站上下载 win_hc08sprg.exe 软件, 使用该工具解码 S19 文件并与目标 MCU 通信 该工具兼容 FC 协议 关于详细的信息, 请参见 www.freescale.com 上提供的 AN2295 内置 Flash 上的 Boot Loader 在通电后将开始运行, 并确定握手是否成功 如果发生超时, 将跳转到应用代码的入口地址 2.1 Flash 操作 KE02 提供了 flash 操作的高级功能 : 闪存控制器 (FMC) 和 flash 访问控制, 它们不仅能够加速对 flash 的存取, 避免在访问 flash 过程中等待, 而且还能在 flash 繁忙时避免冲突 下面我们介绍两种 Flash 编程方法 : 1. 通过 RAM 中运行的代码编程 Flash 2. 通过 Flash 中运行的代码编程 Flash 2.1.1 RAM 中运行的代码 将 Flash 启动命令的代码复制到 RAM 并禁用中断, 使代码可以在 RAM 中运行, 不需要从 Flash 中读取指令 此方法在传统的片上 Flash 设备中使用最为广泛 用于启动 Flash 命令和检查 Flash 状态的代码片段如下 : ramfunc void FTMRH_LaunchCMD(uint8_t bwaitcomplete) DisableInterrupts; if(bwaitcomplete) // Wait till command is completed FTMRH_FSTAT = 0x80; while (!(FTMRH_FSTAT & FTMRH_FSTAT_CCIF_MASK)); EnableInterrupts; 2.1.2 Flash 中运行的代码 KE02 包含 FMC 功能, 这是一个极其重要的外围设备, 连接于 Flash 和 MCU 之间 KE02 还包含 Flash 访问控制 预取缓冲器 单入口缓冲器和缓存, 因此, 在 Flash 中运行的代码能够编程和擦写 Flash 如果启用 Flash 访问控制功能, 当 Flash 繁忙时, 该控制器能够暂时阻止对 Flash 的存取, 直到 Flash 变为空闲状态, 才允许对 Flash 的访问 用这种方法不需要禁用中断, 从而可以提高代码的效率 相应的程序片段如下 : void FTMRH_LaunchCMD(uint8_t bwaitcomplete) /* enable stalling flash controller when flash is busy */ MCM_PLACR = MCM_PLACR_EFSC_MASK; FTMRH_FSTAT = 0x80; if(bwaitcomplete) // Wait till command is completed while (!(FTMRH_FSTAT & FTMRH_FSTAT_CCIF_MASK)); 2 Freescale Semiconductor

软件体系结构 2.2 中断向量表重定位 在 Boot Loader 的设计方面, 另一个重要事项是如何处理中断向量表 Kinetis E 系列支持中断向量表重定位 默认情况下, 向量表的地址为 0x00 到 0xBF 用户可将向量表重定位到其他任何可用地址, 例如其他的 Flash 地址或者是 RAM 地址 Boot Loader 应用会将 Boot Loader 代码和应用代码分配到不同的 Flash 空间 请参见下图来了解 Boot Loader 和应用代码的内存分配 0X7FFF 0X1410 0X1000 Boot Loader INIT_SP RESET_BL 0x400 0x40f 0xC0 0x0000 图 2-1. 内存分配 要重定位中断向量表, 可以简单地用下面的方法写重定位地址到 SCB_VTOR 寄存器 : SCB_VTOR = RELOCATION_ADDRESS; 在用 boot loader 下载用户程序时,PC 工具会解码 S19 文件 ( 应用代码 ), 并将地址空间 (0x00 0x3FF) 的内容写入重定位地址 (0x1000 到 0x13FF) 这可以确保在复位后,Boot Loader 首先开始运行, 然后再跳转到应用入口地址 以下章节介绍了复位后的软件流程 2.3 软件流程图 MCU 上电后, 软件将先运行 Boot Loader, 以检查握手是否成功 如果发生超时, 则会初始化 SP, 然后把用户中断向量地址写入 SCB_VTOR 寄存器 然后跳转到用户代码 Freescale Semiconductor 3

软件体系结构 图 2-2. 软件流程图 建议编辑 Flash 保护区, 以避免意外擦除 Boot Loader 2.4 用户代码 用户代码必须定位到指定的位置, 然后才能通过 Boot Loader 下载到 Flash 2.4.1 链接文件 可以使用普通项目将代码起始地址定义为任何可接受的地址 例如, 在 IAR 中 : define symbol code_start = ICFEDIT_region_ROM_start + 0x410; 在本例中, 定义的代码起始地址偏移为 0x410 对于使用 Boot Loader 下载代码的用户代码, 需要根据 Boot Loader 里面的 FC_protocol.h 文件里面定义的中断向量表重定义地址来定义代码的开始地址 请参见 FC_protocol.h 中的以下宏定义 #define RELOCATION_VERTOR_ADDR 0x1000 代码起始地址应是 RELOCATION_VERTOR_ADDR 加 0x410 地址空间从 RELOCATION_VERTOR_ADDR 到 RELOCATION_VERTOR_ADDR + 0x410 是重定位的中断向量表 4 Freescale Semiconductor

结论 2.4.2 中断向量表 在进入用户代码之前, Boot Loader 必须向 SCB_VTOR 寄存器写入重定位地址 如果用户代码需要将向量表复制到 RAM 中, 则请在写入 SCB_VTOR 之前, 将 RELOCATION_VECTOR_ADDR 的内容复制到目标 RAM 地址 不应向此寄存器写入任何其他值 2.4.3 Flash 配置区域 Flash 配置区域的地址为 Boot Loader 区域中的 0x400 到 0x40F 如果该区域受保护, 不能对它进行修改 否则, 可以擦除或者是编程这部分区域 用户代码首先需要读出地址 0x400 到 0x40F 上包含 Flash 配置字段扇区的所有内容 然后, 擦除此扇区, 修改缓冲区里面的内容, 再写回此扇区 附注请不要定义常量在地址 0x400 到 0x40f, 因为这样会导致无法通过 Boot Loader 下载代码 3 结论 本文档介绍了使用 AN2295 PC 端主机软件实施 UART Boot Loader 的方法 在某些特殊应用中, 用户无需使用其他编程工具, 就能方便地更新用户代码 4 参考 KE02 子系列参考手册 (MKE02Z64M20SF0RM) 开发人员系列 Boot Loader (AN2295) Kinetis L 外围模块快速参考用户指南 (KLQRUG) 5 术语表 UART FCCOB WDOG MCG FMC 通用异步接收器 / 发送器 Flash 通用命令对象看门狗多用途时钟发生器 Flash 控制器 Freescale Semiconductor 5

How to Reach Us: Home Page: freescale.com Web Support: freescale.com/support 本文档中的信息仅供系统和软件实施方使用飞思卡尔产品 未包含基于本文档信息设计或加工任何集成电路的任何明确或隐含的版权许可授权 飞思卡尔保留对此中所有产品进行更改的权利, 如有更改, 恕不另行通知 飞思卡尔对其产品在任何特定用途方面的适用性不做任何担保 声明或保证, 也不承担因为应用或使用产品或电路所产生的任何责任, 特别声明, 拒绝承担包括但不局限于因果性或附带损害在内的所有责任 飞思卡尔数据表和 / 或技术规格中所提供的 典型 参数在不同应用中可能, 并且确实不同, 实际性能会随时间而有所变化 所有操作参数, 包括 典型值 在内, 在每个客户应用中必须经由客户的技术专家进行验证 飞思卡尔未转让与其专利权及其他权利相关的许可 飞思卡尔销售产品时遵循以下网址中包含的标准销售条款和条件 :freescale.com/salestermsandconditions Freescale, and the Freescale logo, and Kinetis are trademarks of Freescale Semiconductor, Inc., Reg.U.S.Pat.& Tm.Off.All other product or service names are the property of their respective owners.arm is a registered trademark of ARM Limited. 2013 Freescale Semiconductor, Inc. Document Number: AN4767 Rev. 0 7/2013