嗨,欢迎来到兆亿微波官方商城!
服务热线: 010-82888379  13718660290
购物车图片 购物车 ( )
全部商品分类

FM33LE026低功耗 MCU 芯片的Flash 编程功能分析

2026/1/13 11:35:48
浏览次数: 46

FM33LE0 支持以下 Flash 编程方法:

•在系统编程(ISP):通过 FMSH 专用编程器或者 KEIL 用户界面实施芯片编程,使用 SWD 接口

•在应用编程(IAP):通过 bootloader 代码实现芯片自编程,用户可定义任意串口,可用于实现程序在线升级

编程前必须对 Flash 进行擦除。Flash 支持三种擦除操作:全擦、扇区擦、页擦

一、Flash 擦写时钟

执行 Flash 擦写时使用校准后的 RCHF 时钟,但是系统时钟可以是任意时钟。NVMIF 根据当前RCHF 实际频率设置,来产生相应的计时长度。需要支持的 RCHF 频率为 8M、16M 和 24M。

擦写时钟独立于 CPU 时钟,两者之间作为异步时钟处理。

二、Flash 擦写方法

FM33LE0 支持 Flash 擦除操作,以及单次编程和连续编程。

Flash 擦写前须进行 Key 校验,写入顺序错误或写入值错误,或者在 Flash Key 验证正确之前就进行擦除或编程 Flash 操作将会进入错误状态,并产生相应中断。Flash Key 认证错误之后将禁止擦写

Flash 直到下一次复位。而在正常擦写完成后,向 KEY 寄存器写入任意值都会使状态机返回初始的写保护状态。状态转换如下图:

FM33LE026低功耗 MCU 芯片的Flash 编程功能分析

软件可以通过查询 FLSIF.KEYSTA 来确认当前 Key 输入状态。

三、全擦操作(Matrix Erase)

全擦操作只能由 SWD 接口启动,软件禁止进行全擦。全擦操作仅擦除 main array,不会擦除特殊信息扇区。SWD 可以在制造商或用户模式下启动全擦,操作流程如下:

•编程器通过 SWD 配置 ERTYPE 寄存器为 10

•编程器通过 SWD 清除 PREQ 寄存器,置位 EREQ 寄存器

•编程器通过 SWD 写入 Flash 全擦 Key:0x9696_9696 和 0x7D7D_7D7D

•SWD 向 Flash 任意地址写擦除请求 0x1234_ABCD

•芯片启动对 Flash 的全擦,并暂停任何 Master 对 Flash 的访问

•全擦完成后置位中断标志和全擦标志(全擦标志表示 main array 全部擦除,任何对 main array的编程将清除此标志)

•在全擦标志有效的情况下,SWD 可以任意擦写 NVR0,否则擦写 NVR0 被禁止并触发错误中断

•软件确认擦除结束后向 FlashKEY 寄存器写任意值恢复写保护

四、扇区擦操作(Sector Erase)

SWD 和应用代码都可以执行扇区擦。操作流程如下:

•配置 ERTYPE 寄存器为 00

•清除 PREQ 寄存器,置位 EREQ 寄存器

•写入 Flash 块擦 Key:0x9696_9696 和 0xEAEA_EAEA

•向需要擦除的 Page 内任意地址写擦除请求 0x1234_ABCD

•芯片检查目标扇区是否属于被 ACLOCK 锁定的 Block,如果没有锁定则启动对目标扇区的擦除,如果被锁定则触发错误标志

•扇区擦完成后置位中断标志

•软件确认擦除结束后向 FlashKEY 寄存器写任意值恢复写保护

五、页擦操作(Pgae Erase)

SWD 和应用代码都可以执行页擦。操作流程如下:

•配置 ERTYPE 寄存器为 00 或 11

•清除 PREQ 寄存器,置位 EREQ 寄存器

•写入 Flash 块擦 Key:0x9696_9696 和 0xEAEA_EAEA

•向需要擦除的扇区内任意地址写擦除请求 0x1234_ABCD

•芯片检查目标扇区是否属于被 ACLOCK 锁定的 Block,如果没有锁定则启动对目标扇区的擦除,如果被锁定则触发错误标志

•扇区擦完成后置位中断标志

•软件确认擦除结束后向 FlashKEY 寄存器写任意值恢复写保护

六、单次编程

单次编程由软件发起,通过总线直接写 Flash,每次操作只能执行 word 编程,操作流程如下:

•清除 EREQ 寄存器,置位 PREQ 寄存器

•清除连续编程使能寄存器

•写入 Flash 编程 Key:0xA5A5_A5A5 和 0xF1F1_F1F1

•向 Flash 目标地址写数据,如果目标地址被 ACLOCK 锁定,则触发错误标志,如果没有锁定,则执行编程

•编程完成后置位中断标志

•软件确认编程结束后向 FlashKEY 寄存器写任意值恢复写保护

七、连续编程

连续编程指通过 DMA 的 Memory 通道一次向 Flash 写入 half-sector(256 字节)。连续编程时 DMA从 RAM 指定地址读取数据,Flash 目标编程地址必须是 half-sector 对齐的,也就是 Flash 地址低 6位为 0。采用这种方式时一次编程的数据长度是固定的,主要用于快速大数据量写入。

在启动连续编程期间,DMA 完全占据 Flash 总线,暂停 CPU 对 Flash 的一切访问。连续编程的操作流程如下:

•清除 EREQ 寄存器,置位 PREQ 寄存器

•置位连续编程使能寄存器(DMA 模式使能)

•向 RAM 中写入 256 字节待编程数据

•配置 DMA 存储器通道,设定传输方向、读地址和写地址

•使能 DMA 存储器通道

•写入 Flash 编程 Key:0xA5A5_A5A5 和 0xF1F1_F1F1

•软件触发 DMA 存储器通道,DMA 连续 64 次读取 RAM 并对 Flash 编程,芯片每收到 1 个 word自动完成 4 次 byte program

•芯片检查被编程扇区是否被 ACLOCK 锁定,如果锁定则触发错误中断并通知 DMA 停止编程

•256 字节完全编程结束后产生中断,释放 Flash 总线

•软件确认编程结束后向 FlashKEY 寄存器写任意值恢复写保护

注意:如果 CPU 在 Flash 中取指时进行 Flash 擦写,则 CPU 取指将被暂停,直到擦写操作完成。如果 CPU 跳转到 RAM 中取指运行,则 Flash 擦写不会暂停 CPU 的执行。Flash 擦写过程中,若用户希望在 RAM 中执行代码时仍然能够实时响应中断,应将中断向量表重新映射到 RAM 中。

八、启动区交换(BootSwap)

BootSwap主要目的是,防止在系统更新启动代码时出现意外中断(停电、异常复位等),如果此时原来的启动代码已经被擦除,将导致芯片重启后无法正常运行。BootSwap功能通过编程informationpage3最低地址word实现。

BootSwap示意图如下:

FM33LE026低功耗 MCU 芯片的Flash 编程功能分析

实现BootSwap功能后,假设启动代码占据0000~1FFF共8KB空间,系统升级时应先将新的启动代码写入2000~3FFF地址,然后使能BootSwap。此时有几种可能性:

•芯片擦写2000~3FFF地址时掉电,由于原来的启动代码还在,不会影响重启

•芯片成功写入boot program1,然后使能bootswap并执行软复位,芯片重启后将执行bootprogram1

•芯片擦写boot program0时掉电,由于boot program1已经写入,将不影响后续运行另一种BootSwap应用方法如下图,为了保证可靠的更新启动代码,使用2nd 8KB物理空间作为原来Boot程序的备份,如果编程期间发生异常掉电,则触发BootSwap:

FM33LE026低功耗 MCU 芯片的Flash 编程功能分析

如果启动程序更新期间没有发生异常掉电,则可以不执行软复位,无需真正Swap,仅需在更新原来的Boot程序前使能BootSwap,成功更新后撤销BootSwap即可:
FM33LE026低功耗 MCU 芯片的Flash 编程功能分析

推荐应用按照如下步骤升级:

•更新application program

•如需升级boot,先将新的boot程序写入第二个8KB空间

•配置information block,使能BootSwap

•执行软复位,重启后执行新的boot程序

•将第二个8KB空间改写为新的应用程序

逻辑地址对Flash物理地址的重映射由NVMIF模块完成,不论程序还是DEBUG都以逻辑地址进行访问。

寄存器标志(FLSIF.BTSF)来表示当前的Boot区是1st 8KB物理地址、还是2nd 8KB物理地址,用于给用户代码查询当前启动情况。

以上是关于其的一些相关信息,如有采购及选型需求,可联系兆亿微波电子元件商城。

在线留言询价
推荐阅读
  • 点击次数: 2
    2026-11-04
    AD8319是一款解调对数放大器,它能将RF输入信号精确地转换为相应的dB标度输出。它在级联放大器链上采用渐进压缩技术,每一级均配有检波器单元。该器件有测量和控制器两种工作模式。对于1 MHz至8 GHz信号,它能保持精确的对数一致性,并能在最高10 GHz下工作。输入动态范围为40 dB(典型值,电阻:50 Ω),误差小于±1 dB。AD8319具有8 ns/10 ns响应时间(下降时间/上升时间),实现超过50 MHz脉冲速率的RF突发检测。在环境温度条件下,该器件具有极佳的对数截距稳定性。需在3.0 V至5.5 V电源供电下工作。典型功耗为22 mA,当器件禁用时,功耗降至200 μA。AD8319可配置为向功率放大器提供控制电压或从VOUT引脚提供测量输出。因为输出可以用于控制器应用,所以宽带噪声问题得到了特别处理,可降至较小。在这种模式下,设定点控制电压作用于VSET引脚。RF放大器的反馈环路通过VOUT闭合,其输出将放大器的输出调节至对应于VSET的幅度。AD8319在VOUT引脚端提供0 V至(VPOS − 0.1 V)输出能力,适合控制器应用。作为一款测量器件,VOUT外部连接到VSET以产生输出电压VOUT,该电压为RF输入信号幅度的较小线性dB函数。对数斜率为-22 mV/dB,由VSET接口确定。截距为15 dBm(电阻:50 Ω,CW输入),采用INHI输入。这些参数非常稳定,不随电源电压和温度波动而变化。AD8319采用SiGe双极性IC工艺制造,并采用2 mm × 3 mm、8引脚LFCSP_VD封装,工作温度范围为−40℃至+85℃。特性• 宽带宽:1 MHz至10 GHz• 高精度:±1.0 dB(温度范围内)• 动态范围:>40 dB (8 GHz)• 温度稳定性:±0.5 dB• 低噪...
  • 点击次数: 2
    2026-11-04
    TPS62840 是一款高效降压转换器,具有典型值为 60nA 的超低工作静态电流。此器件具有特殊电路,可在 100% 模式下实现仅 120nA 的 IQ,因此可在放电末期进一步延长电池寿命。此器件采用 DCS-Control 技术,可以为无线电提供干净的电源,工作时具有 1.8MHz 的典型开关频率。在省电模式下,此器件可将轻负载效率向下扩展至 1µA 负载电流及以下。可以将一个电阻器连接到 VSET 引脚以选择 16 种预定义的输出电压,因此这款器件可以灵活地用于各种 应用 并最大限度地减少了外部组件的数量。该器件的 STOP 引脚可立即消除所有的开关噪声,从而在测试和测量系统中执行无噪声测量。TPS62840 提供了高达 750mA 的输出电流。此器件的输入电压为 1.8V 至 6.5V,支持多种电源,例如 2 节至 4 节碱性电池或 1 节至 2 节锂二氧化锰 (Li-MnO2) 或 1 节锂离子/锂亚硫酰氯 (Li-SOCl2) 电池。特性• 60nA 工作静态电流• 100% 占空比模式下,IQ 为 120nA• 输入电压范围 VIN:1.8V 至 6.5V• 高达 750mA 的输出电流• 射频友好型 DCS-Control™• 1µA IOUT(3.6VIN 至 1.8VOUT)时的效率为 80%• 通过 VSET 引脚提供 16 种可选输出电压• 自动转换 PFM/PWM 或强制 PWM 模式• 可选的强制 PWM 和 STOP 模式• 输出放电功能• 25nA 关断电流• SON-8、WCSP-6 和热增强型 HVSSOP-8
  • 点击次数: 2
    2026-11-04
    LTM8033 是一款电磁兼容 (EMC) 36V、3A DC/DC μModule® 降压型转换器,专为满足 EN55022 标准的辐射发射要求而设计。传导发射要求可以通过增设标准的滤波器元件来满足。封装中内置了开关控制器、电源开关、电感器、滤波器以及所有的支持元件。LTM8033 可以在 3.6V 至 36V 的输入电压范围内运作,支持 0.8V 至 24V 的输出电压范围和一个 200kHz 至 2.4MHz 的开关频率范围 (均由单个电阻器来设定)。仅需采用大容量的输入和输出滤波电容器便可实现完整的设计。LTM8033 采用紧凑(11.25mm x 15mm x 4.32mm) 的模压焊盘网格阵列 (LGA) 和球式网格阵列 (BGA) 封装,适合采用标准的表面贴装设备来进行自动化装配。LTM8033 具有符合 SnPb (BGA) 或 RoHS 标准的引脚涂层。特性• 完整的降压型开关模式电源• 宽输入电压范围:3.6V 至 36V• 3A 输出电流• 0.8V 至 24V 输出电压• 符合 EN55022 Class B 标准• 可对多个 LTM8033 稳压器进行均流以提供超过 3A 的输出• 可选的开关频率:200kHz 至 2.4MHz• 电流模式控制• 符合 SnPb 或 RoHS 标准的涂层 • 可编程软起动• 紧凑的表面贴装型 LGA (11.25mm x 15mm x 4.32mm) 和 BGA (11.25mm x 15mm x 4.92mm) 封装应用汽车电池法规便携式产品电源分布式供应监管工业用品壁式变压器调节
  • 点击次数: 2
    2026-11-03
    LT4356-3 浪涌抑制器可保护负载不受高电压瞬态的影响。它可在过压事件(例如汽车负载突降)期间通过控制外部 N 通道 MOSFET 来调节输出。输出将被限制为安全值,从而允许负载继续正常运行。LT4356-3 还可监控 VCC 和 SNS 引脚之间的电压降,以防止发生过流故障。内部放大器可将电流检测电压限制为 50mV。在任一故障条件下,将会根据 MOSFET 应力按比例反向启动计时器。如果计时器终止,FLT 引脚将会拉低以警告即将关断。如果该状况持续存在,则会关闭 MOSFET,直到 SHDN 引脚暂时拉低。该辅助放大器可用作电压检测比较器或用于驱动外部 PNP 调整管的线性稳压器控制器。特性• 可阻止高电压浪涌• 可调输出钳位电压• 过流保护• 宽工作范围:4V 至 80V• 反向输入保护高达 –60V• 7µA 低关断电流• 可调闩锁故障计时器应用汽车/航空电子浪涌保护热插拔/实时插入电池供电系统的高压侧开关
  • 点击次数: 6
    2026-10-30
    MAX74840 是一款单电源、轨到轨输出 (RRO)、结型场效应晶体管 (JFET) 输入运算放大器 (运放)。输入电压范围包括负电源电压,输出电压摆幅可达轨到轨。这样,用户就可以在低电压、单电源应用中最大限度地提高动态输入范围,而无需单独的负电压电源进行接地检测。输入 EMI 滤波器可提高信号在面对邻近开关噪声源时的鲁棒性。带宽和转换速率方面的速度随着强大的输出驱动而提高,从而改善了建立时间性能,并使这些器件能够驱动现代单端逐次逼近寄存器 (SAR) 模数转换器 (ADC) 的输入。MAX74840 的额定工作温度范围为 -40°C 至 +125°C,工作电压为 5V 至 30V,额定电压为 ±15V。MAX74840 采用 8 引脚 MSOP 封装。特性宽增益带宽乘积:典型值 8MHz高压摆率23V/μs 典型值(低到高)-18V/μs 典型值(高到低)低输入偏置电流:TA = 25°C 时为最大值 ±15pA低失调电压:TA = 25°C 时为最大值 ±10mV低失调电压漂移:典型值±4μV/°C输入电压范围包括引脚 V-轨到轨输出电磁干扰抑制比(EMIRR)在 f = 1000MHz 和 f = 2400MHz 时,典型值为 90dB。应用高输出阻抗传感器接口光电二极管传感器接口跨阻放大器ADC 驱动器精密滤波器和信号调理
热门分类
关于我们

───  公众号二维码  ───

兆亿微波商城微信公众号

兆亿微波商城www.rfz1.com是一个家一站式电子元器件采购平台,致力于为广大客户提供高质量、高性能的电子元器件产品。产品覆盖功放器件、射频开关、滤波器、混频器、功分器、耦合器、衰减器、电源芯片、电路板及射频电缆等多个领域,平台主营业务涵盖电子元器件现货销售、BOM配单及提供产品配套资料等,为客户提供一站式供应链采购服务。 

  • 品质 • 正品行货 购物无忧
  • 低价 • 普惠实价 帮您省钱
  • 速达 • 专业配送 按时按需
Copyright ©2020 - 2021 兆亿微波科技有限公司
X
1

QQ设置

    1
3

SKYPE 设置

4

阿里旺旺设置

5

电话号码管理

电话 电话 电话
010-82888379
    1
6

二维码管理

    1
返回顶部
展开