TI中文支持网
TI专业的中文技术问题搜集分享网站

MSPM0G3107: 工作在80Mhz下,单片机锁住不允许烧录

Part Number:MSPM0G3107Other Parts Discussed in Thread: SYSCONFIG

MSPM0G3107芯片,采用默认配置,即32Mhz主频下,芯片能正常工作,测试代码比较简单(在主循环中,延迟100ms,对PA8引脚进行电平翻转);

通过sysconfig配置为80Mhz,就会出现偶发性的芯片锁住,然后导致烧录器无法烧录;

烧录器尝试过DAP和Jlink,都存在同样的问题

在配置为80Mhz的时候,会出现以下提示信息

For best practices when the CPUCLK is running at 32MHz and above, clear the flash status bit using DL_FlashCTL_executeClearStatus() before executing any flash operation. Otherwise there may be false positives.

相关配置截图:

因一些特殊的应用场景,需要主频工作在80Mhz,请问该如何解决,是否需要额外的配置或者特殊的烧录器

Vivian Gao:

感谢您对TI产品的关注! 关于你的咨询,我们正在确认你的问题,稍后回复您。

,

Vivian Gao:

参考下方帖子,将MCLK和CPUCLK调整到32MHz以上

(+) MSPM0G3107: Question on MCLK source at BOOT – Arm-based microcontrollers forum – Arm-based microcontrollers – TI E2E support forums

,

wang ermao:

我提问里面的截图,已经按照该帖子的方式(SYSOSC 32MHz -> SYSPLL 80MHz -> CPU and MCLK)配置成了80M

可能截图不清楚,我的sysconfig最终配置的时钟为:

LFCLK:32.768kHz

ULPCLK:40MHz

MCLK:80MHz

CPUCLK:80MHz

,

Vivian Gao:

但是你的报错信息翻译过来是对于CPUCLK在32MHz及以上运行时的最佳实践,请在执行任何闪存操作之前使用DL_FlashCTL_executeClearStatus()清除闪存状态位。否则,可能会出现误报。

如果你的CPUCLK确实是32MHz以上了,你再检查一下DL_FlashCTL_executeClearStatus()

,

wang ermao:

代码里面所有设计到flash的操作,我可以添加DL_FlashCTL_executeClearStatus()

但是现在我用烧录器,多烧录几次,就会锁住;

是不是这个报错信息,也针对烧录器的擦写,关键我也不知道烧录器烧录的时候,如何添加DL_FlashCTL_executeClearStatus()

,

Vivian Gao:

你用XDS debugger试试会不会锁住。

赞(0)
未经允许不得转载:TI中文支持网 » MSPM0G3107: 工作在80Mhz下,单片机锁住不允许烧录
分享到: 更多 (0)

© 2025 TI中文支持网   网站地图 鲁ICP备2022002796号-1