TI板 keil5编译MSPM0无法下载的情况(出现Error: Flash Download failed - “Cortex-M0“解决办法)

我是根据哔哩哔哩【TI MSPM0G3507零基础快速入门课程【4.按键】 TI电赛控制器 | 电赛训练 | TI控制器】https://www.bilibili.com/video/BV117421o7zz?vd_source=4777f68c11b490630a51b4158f1ea887  学的。

但是在按键这一步的时候下载程序无论如何也下载不进去,一直出现

Error: Flash Download failed - “Cortex-M0“

在经过查证之后发现是 在

模式下的时候下列代码中出现的问题

#include "ti_msp_dl_config.h"
#include "led.h"
#include "key.h"


int KEYNUM; 

int main(void)
{
	
    SYSCFG_DL_init();

    while (1) {
			
			KEYNUM = keygetnum();
			if(KEYNUM == 1)
			{
					LED_ON();
			}
			else
				LED_off();
			
			delay_ms(100);

			

    }
}

该代码中的KEYNUM变量不能作为全局变量

修改方法1. 

魔术棒->Debug->Settings->Pack 其中的enable取消勾选

之后 魔术棒->C/C++->one ELF Section per Function 勾选

魔术棒->Target->Use MicroLIB 勾选

修改方法2.

改成V6

### 解决STM32G030K6T6 Cortex-M0+ Flash下载错误的方法 当遇到`Error: Flash Download failed - "Cortex-M0+"` 错误时,可能的原因涉及硬件连接、配置设置以及开发环境中的多种因素。以下是详细的排查方法: #### 1. 检查硬件连接 确保目标与编程器之间的连接稳固可靠。检查SWD接口连线是否松动或接触不良。对于STM32系列微控制器而言,稳定的电源供应同样重要,任何电压波动都可能导致烧写过程不稳定[^1]。 #### 2. 验证芯片型号匹配度 确认使用的固件版本和支持库适用于所选的具体MCU型号——即STM32G030F6P6而非其他变种。不同封装形式虽然引脚布局相似,但在某些细节特性上可能存在差异,这会影响程序兼容性和正常工作状态[^2]。 #### 3. 更新工具链软件 保持Keil MDK及其他相关调试工具处于最新版有助于规避已知缺陷并获得更好的性能表现。官方发布的更新通常会修复之前存在的各类问题,包括但不限于闪存擦除/写入操作方面的优化改进措施。 #### 4. 修改启动模式参数 如果上述步骤未能解决问题,则尝试调整项目属性里的“Debug”选项卡下的“Startup mode”。选择合适的启动方式(例如Reset Vector Offset),有时能够有效绕过因内部寄存器初始化不当而导致的异常状况。 ```c // 示例:修改startup_stm32g0xx.s文件内的向量表偏移地址定义 __Vectors_DCOFFSET EQU 0x08000000 ; Reset Handler Address with offset ``` #### 5. 清理工程缓存数据 清除编译过程中产生的临时文件夹(如`.settings`, `Objects`等),重新构建整个工程项目后再试一次下载流程。此举可排除由于残留旧版对象码引起的数据冲突风险。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值