本文将详细记载怎么使用STM8S自带BootLoader实现程序更新。
准备工作:
1. ST支持文档 UM0560(说明BootLoader怎么用)
2. ST官方下载软件 STMFlashLoader Demo.exe
3. IAR Embedded Workbench 、ST Visual Programmer
4. 2块STM8S105K6,用来实现更新操作。
实践操作:
1. 使用STVP -> OPTION BYTE -> ROP ->Read Out Protection OFF
STVP -> OPTION BYTE -> BOOTLOADER ENABLE ->BootLoader Enable
本文只记载怎么使用BootLoader,如果读保护使能了,不在本文讨论范围(在UM0560中有提到怎么处理)。为什么这两个字节选项字要处理,在UM0560中有说明,不这样操作,不能进入BootLoader程序,MCU复位后检测到这个这两个选项字节不符,则跳转到用户应用程序区0x8000地址处。
补充说明:
使能BootLoader能够用库函数,写字节选项字。
FLASH_Unlock(FLASH_MEMTYPE_DATA); //解锁Flash
FLASH_ProgramOptionByte(0