﻿================================================================================
                                样例使用说明
================================================================================
Date            Author      IAR       MDK       GCC
2025-11-03      CDT         7.70      5.36      gcc-arm-none-eabi-10.3-2021.10-win32

================================================================================
平台说明
================================================================================
GCC工程，由Eclipse IDE外挂GNU-ARM Toolchain，再结合pyOCD GDB Server实现工程的编译、
链接和调试。在用Eclipse导入工程后，请将xxxx_PyOCDDebug中pyocd-gdbserver和SVD文件
设置为正确的路径；请将xxxx_PyOCDDownload中pyocd设置为正确的路径。注意，这些路径不
能包含非英文字符。

================================================================================
功能描述
================================================================================
本样例展示EFM引导交换功能。程序先下载到扇区0，使能引导交换功能后，下一次程序将下载到扇
区1。程序将不断开关引导交换功能，从而实现MCU交替从扇区0和扇区1启动运行。

================================================================================
测试环境
================================================================================
测试用板:
---------------------
EV_A448_LQ80_Rev1.0

辅助工具:
---------------------
无

辅助软件:
---------------------
无

================================================================================
使用步骤
================================================================================
1）打开efm_swap0样例工程，编译下载，全速运行，可观察到红灯闪烁；
2）按下按键K1，使能引导交换功能；
3）打开efm_swap1样例工程，编译下载，全速运行，可观察到蓝灯闪烁；
4）按下K2(SWAP功能关闭)，程序从sector0运行，可观察到红灯闪烁；
5）再次按下K1(SWAP功能开启)，程序从sector1运行，可观察到蓝灯闪烁；
6）重复步骤4）和步骤5），可观察到红灯蓝灯交替闪烁。

================================================================================
注意
================================================================================
1.若扇区0的OTP没有锁存(0x0300_0A80~0x0300_0A83数据全1)，引导交换有效后，Flash的扇区0
  和扇区1全体地址互换；且扇区0的OTP锁存地址(0x0300_0A80~0x0300_0A83)无法进行编程。
  若扇区0的OTP已锁存(0x0300_0A80~0x0300_0A83数据非全1)，引导交换会无效，
2.在bus_hold时，进行编程和擦除请勿单步调试，单步调试有可能使芯片发生未知错误
3.按键请长按，避免代码运行在delay延时中，未检测到按键按下
4.下载efm_swap0样例前请片擦，下载efm_swap1样例时，不能片擦
================================================================================
