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

Tiva C 器件自带bootloader使用问题

我是用的型号为TM4C123FH6PM。在第一次烧录程序中执行了如下代码,希望通过GPIO-G-PIN0进入bootloader来使用LM Flash Programmer和串口来升级固件。

代码如下:

uint32_t long bootcfg;
bootcfg = HWREG(0x400FE000 + 0x1D0);

if(!(bootcfg & 0x80000000))
return 1;
//cofig bootloader
HWREG(0x400FD000 + 0x000) = 0x75100000; //FMA = BOOTCFG "address"
//Bootloader condition:Port G,Pin 0,Low
HWREG(0x400FD000 + 0x004) = FLASH_BOOTCFG_PORT_G | FLASH_BOOTCFG_PIN_0 | FLASH_BOOTCFG_DBG1;
HWREG(0x400FD000 + 0x008) = 0xA4420008; //0x71D50008; //FMC = KEY +commit

ROM_SysCtlDelay(1000);

现在的问题是按住相应按键后重启,使用LM Flash Programmer进行“program”后能同步成功,但之后提示“ failed to send packet”而导致失败。

此外,使用调试工具通过JTAG调试时提示Flash内容校检失败,除非烧写和第一次一样的代码,否则每个地址都是内容校检失败。也就是Flash Download根本无法改写MCU里的内容了,但是能读。

有人能帮我分析下原因吗?因没有工具,无法测试将MCU解锁重置。

另外,使用ROM内的bootloader除了上述步骤还需要使用bl_startup_ewarm.S文件吗?我现在没有使用该文件。

xyz549040622:

楼主可以参考下官方的这个手册看看,按照里面的步骤来

razi cao:

回复 xyz549040622:

这个手册讲的是怎么自定义Boot Loader,而我只是想用出厂自带的,配合LM Flash Programmer来升级。就像MCU没有烧写时能通过LM Flash Programmer烧录软件。

xyz549040622:

回复 razi cao:

你的这个问题没有碰到过,就像其他芯片一样,是不是都需要先解锁呢

赞(0)
未经允许不得转载:TI中文支持网 » Tiva C 器件自带bootloader使用问题
分享到: 更多 (0)