欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

STM8使用自带的bootloader

程序员文章站 2022-03-16 18:51:40
...

前言

更多技术整理,欢迎关注本人博客www.tomtwos.com

STM8使用自带的bootloader步骤

  1. 首先确认你使用的STM8有没有自带的bootloader。

    参考下表
    STM8使用自带的bootloader

  2. STM8空器件可以直接使用自带的bootloader。

  3. STM8在使用SWIM烧录后,要想继续使用自带的bootloader,必须设置可选字节为0x55AA。如下图:

    STM8使用自带的bootloader

    设置这两个字节的方法,可以使用ST Visual Programmer修改,如下图:

    STM8使用自带的bootloader

    不过这个软件显示只能修改487Eh为0x55,487Fh没更改。官方提供的软件,很奇怪。所以,我采用下一种方法

    在程序中设定,然后用SWIM下载一次,一次就够了。使用库函数如下:

     /* Define FLASH programming time */
     FLASH_SetProgrammingTime(FLASH_PROGRAMTIME_STANDARD);
     /* Unlock EEPROM Data memory */
     FLASH_Unlock(FLASH_MEMTYPE_DATA);
     FLASH_ProgramByte(0x487E,0x55);
     FLASH_ProgramByte(0x487F,0xAA);
     FLASH_Lock(FLASH_MEMTYPE_DATA);
    
  4. 最后,必须在器件复位后1S以内点击ST的Flashloader软件。设置如下:

    STM8使用自带的bootloader

    其中echo选项可以先不选,若是显示失败,它提示你选上echo,你再选上。

    附上英文原版描述:

    STM8使用自带的bootloader

    详细bootloader流程,请参考UM0560,根据该手册你可以把烧录过程写到自己的上位机软件中,无需借助flashloader了。

相关标签: MCU