0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【GD32 MCU 入门教程】六、GD32 MCU 选项字节设置及解除方法

聚沃科技 2024-08-26 09:43 次阅读

您在使用GD32过程中是否遇到过芯片反复复位,代码无法更新,代码一直执行在0x1fffxxxx区域,或代码执行在SRAM区域的情况?如果有遇到这类现象是否找到原因呢?如果没找到是否检查过选项字节是否正常呢?这一章节我们针对各系列的选项字节设置和解除做一个相关说明,后续遇到上述问题可以考虑一下是否是选项字节配置错误导致。

1 .各系列选项字节说明

GD32L23x/GD32E50x系列选项字节:

输入图片说明

GD32E103/GD32E11x/GD32VF103/GD32C103/GD32C113GD32F10x/GD32F20x/GD32F30x/GD32F403系列选项字节介绍:

输入图片说明

GD32F1x0/GD32F3x0/GD32E230/GD32E231/GD32E232系列选项字节:

输入图片说明

GD32A503选项字节:

输入图片说明

GD32F4xx系列选项字节:

输入图片说明

2.通过代码实现

具体做法这里不详细介绍,具体参考5.11章FMC配置介绍,需要注意,读保护的设置和解除需要芯片上下电才能生效,通过外部代码解除读保护需要将代码运行在ram里面执行。

3.通过 JTAG/SWD 接口实现

3.1.使用 Jlink 设置和解除选项字节

连好Jlink与目标板连线,打开J-Link Commander命令提示窗工具“JLink.exe”

输入图片说明

按照提示输入相应信息 connect→?→s→100

输入图片说明

如果连接OK,可以识别到芯片的内核信息,即可输入mem命令获取对应的选项字节信息;

输入图片说明

Jlink command 常用命令简介:

mem Read memory. Syntax: mem [:], (hex) mem8 Read 8-bit items. Syntax: mem8 [:], (hex) mem16 Read 16-bit items. Syntax: mem16 [:], (hex) mem32 Read 32-bit items. Syntax: mem32 [:], (hex) w1 Write 8-bit items. Syntax: w1 [:], (hex) w2 Write 16-bit items. Syntax: w2 [:], (hex) w4 Write 32-bit items. Syntax: w4 [:], (hex)

通过上位机J-Flash设置读保护:

a.在J-Flash中选择对应物料型号:

输入图片说明

b.接调试线,然后选择Target→ Connect:

输入图片说明

c.选择Target→ Manual Programming→Secure Chip,可完成芯片读保护设置;

输入图片说明

d.读保护设置完成后重新上电下电可以通过Jlink command回读判断;

输入图片说明

通过上位机J-Flash去除读保护:

将 目 标 板 通 过 Jlink 与 目 标 板 连 接 后 , 选 择 对 应 物 料 型 号 ,Target→ManualProgramming→Unsecure Chip

输入图片说明

注:(1)通过JFlash上位机仅能设置读保护,不能设置其他选项字节;

(2)GD32F405/407/450系列之外的型号通过设置读保护,断电,再解除读保护可以实现其他选项字节的擦除;

通过J-Flash上位机其他办法设置和去除读保护:(了解即可)

A、使用绿色版Jflash里面jflash的project工程,里面已经写好了Init setps,如果设置了读保护,将jlink与目标板connect时会发送Init steps序列解除读保护;

输入图片说明

B、使用bat脚本调用.jlink文件来实现读写保护的设置,可以找技术支持提供相应资源,原理不详述;

输入图片说明

3.2.使用 GDlink 设置和解除选项字节:

a.接好GDLINK与目标芯片的连线,然后打开Target→Connect

输入图片说明

b.Connect后会在信息窗口自动回读芯片信息和选项字节信息;

输入图片说明

c.选择Target里面的Configure OptionBytes点开即可编辑选项字节(仅三合一的GDLINK支持)

输入图片说明输入图片说明

板载的GDlink不支持Configure OptionBytes,仅可设置和解除读保护;

板载GDLINK connect时出现如下界面选择“确定”,然后设置”Securtiy”和”Insecurity”

输入图片说明输入图片说明

4.通过 ISP 命令选项字节设置和解除

通过ISP命令选项字节设置和解除:

a.将修改芯片BOOT电平,接好串口/USB,让芯片处于ISP状态

输入图片说明

b.如果芯片处于读保护状态,接下来会直接让你选择去除读保护,否则无法继续往后执行;

输入图片说明

c.读保护去除成功后会弹出Readout unprotected successfully!界面。

输入图片说明

d.选择下一步芯片会读取写保护状态,如果被锁上W会被置位;

输入图片说明

e.选择Edit Option Bytes可以对选项字节进行编辑下载和读取

输入图片说明输入图片说明

教程GD32 MCU方案商聚沃科技原创发布,了解更多GD32 MCU教程,关注聚沃科技官网

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6030

    文章

    44502

    浏览量

    632295
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16943

    浏览量

    350045
  • 嵌入式
    +关注

    关注

    5062

    文章

    18990

    浏览量

    302410
收藏 人收藏

    评论

    相关推荐

    GD32 MCU 入门教程GD32 MCU 常见外设介绍(12)FMC 模块介绍

    闪存控制器(FMC),提供了片上闪存需要的所有功能。FMC 也提供了页擦除,整片擦除,以及32 位整字或 16 位半字编程闪存等操作。 GD32 MCU 支持不同类型编程的具体说明如下表 GD32
    的头像 发表于 08-21 09:56 947次阅读
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常见外设介绍(12)FMC 模块介绍

    GD32MCU介绍

    吧,但是基本上有99%,有部分寄存器比特位存在区别。另外兆芯的手册写的实在是不够精确,很多时候出现一种情况就是,我命名特么的用的是GD32MCU,写个驱动还要参考ST的手册?!真是见了鬼了。比如USB的这个寄存器,兆芯的描述简直了。很多时候吧,真的想支持国产,奈何国产芯
    发表于 11-01 06:03

    GD32 MCU原理及固件库开发指南》+读后感

    。 第2章介绍GD32 MCU快速入门与开发平台搭建的方法,包括对软硬件开发平台、调试工具、GD32 M
    发表于 06-06 21:52

    推出采用GD32 RISC-V的MCU

    推出采用GD32 RISC-V的MCU ppt分享
    发表于 07-14 17:15 0次下载

    兆易创新GD32 MCU选型手册,适用于GD32全系列MCU

    兆易创新GD32MCU选型手册,适用于GD32全系列MCUGD32MCU选型手册,适用于GD32全系列MCU
    发表于 10-19 17:26 49次下载

    你了解GD32 MCU的命名规则吗

    下面为大家介绍GD32 MCU的通用命名规则,以GD32F303ZGT6为例,其中,GD32代表GD32
    的头像 发表于 01-13 09:38 3408次阅读
    你了解<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的命名规则吗

    GD32 MCU选项字节是什么?

    GD32 MCU选项字节是什么,有什么功能呢?选项字节被误篡改如何回复?
    的头像 发表于 01-17 09:42 1213次阅读
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>的<b class='flag-5'>选项</b><b class='flag-5'>字节</b>是什么?

    不同型号的GD32 MCU如何区分?

    大家是否碰到过以下应用场景:同一套软件代码希望跑在不同型号的GD32 MCU中,但有些地方需要根据MCU型号进行调整?或者上位机或其他MCUGD3
    的头像 发表于 01-27 09:32 928次阅读
    不同型号的<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>如何区分?

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(1)使用Keil开发GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 15:01 967次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(1)使用Keil开发<b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(2)使用 IAR 开发 GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 15:40 549次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(2)使用 IAR 开发 <b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】一、GD32 MCU 开发环境搭建(3)使用 Embedded Builder 开发 GD32

    GD32系列为通用型MCU,所以开发环境也可以使用通用型的IDE,目前使用较多的是KEIL、IAR、 GCC和Embedded Builder,客户可以根据个人喜好来选择相应的开发环境。
    的头像 发表于 08-08 16:03 788次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 开发环境搭建(3)使用 Embedded Builder 开发 <b class='flag-5'>GD32</b>

    GD32 MCU 入门教程】二、GD32 MCU 烧录说明(1)ISP 烧录

    ISP:In System Programing,在系统编程,通过MCU片内的引导程序进行Flash编程。 GD32片内有一个只读信息块,用于存放引导装载程序,引导程序在MCU出厂前就会提前烧录好
    的头像 发表于 08-08 16:20 712次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 烧录说明(1)ISP 烧录

    GD32 MCU 入门教程GD32 MCU 常见外设介绍(14)RTC 模块介绍

    GD32 MCU内部提供了一个RTC(实时时钟)模块,通过RTC可以实现日历时钟、闹钟等功能。RTC也可以用于深度睡眠或待机模式的低功耗唤醒。不同系列的GD32 MCU在RTC设计和功
    的头像 发表于 08-23 09:18 358次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常见外设介绍(14)RTC 模块介绍

    GD32 MCU 入门教程GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的头像 发表于 08-25 09:24 443次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> <b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> FPU 使用<b class='flag-5'>方法</b>

    GD32 MCU入门教程GD32 MCU GPIO 结构与使用注意事项

    本文是专门为基于GD32 MCU开发的工程设计人员提供,主要介绍了GPIO的功能配置、内部结构以及在不同场景使用时的注意事项,旨在帮助GD32 MCU开发者优化对通用型输入输出端口(G
    的头像 发表于 09-07 10:34 551次阅读
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b><b class='flag-5'>入门教程</b>】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 结构与使用注意事项