你好,我用IAR下载例程,调试RZT2M芯片,使用的是J-LINK V11,发现程序在启动文件初始化堆栈就出错,然后就执行这条语句 BSP_CFG_HANDLE_UNRECOVERABLE_ERROR(0);请问怎么解决这个问题呢?
请问你用的是我们RSK 吗?还是你们自己的板子?我们的RSK 按照你的配置可以正常调试。
我用的是CN032板子,用CN032下载调试也是有问题的。我们公司是世强先进。
官网上的开发例程(Example Program)在调试的时间,默认都是(RAM execution without flash memory)的模式,但是当片外flash中烧入过程序后,如果客户想要调试其它例程时,选择(RAM execution without flash memory)模式时,无法进行正常的调试。原因是如果flash里面有程序,并且使用了中断处理函数。板子上电后,CPU被 Flash的代码初始化并开启了中断。面在RAM模式调试时,由于下载程序后不能执行Reset操作(如果ResetRAM里的数据会丢失),此时RAM里的程序运行后,Flash初始化开启的中断产生了,而此时RAM程序里并没有相应的处理函数,代码会跳到不存在的中断向量执行,因此CPU出现异常。
问题可以参考以下几点:
一段等待时间, 具体办法可以参考FSP getting started manual的P74页的说明
哈喽,这个启动模式有什么说明文档吗?
这个结合r01an6434ej0103-rzt2-rzn2-fsp-getting-started.pdf应该好理解:MPU启动的过程,需要从外部flash加载代码。那么不同的Flash类型就对应上面的选项。RAM模式主要是调试用的。Custome 是强调客户自己的板子。RSK是我们的开发板。
MPU启动不能直接通过对内部flash擦除写入启动吗?必须要从外部flash加载代码吗?
MPU 架构决定内部没有开放应用的FLASH,全部的应用代码/数据都是放在外部FLASH 上的; 这一点与MCU 不同;
那这种XSPI x8或者x1,是什么意思呢,我该怎么选择呢?
就是BOOT ROM 做1st Stage BOOTLOADER 加载时用 单线 SPI 还是 8线 OSPI。 其实目前我们软件脚骨,这一步需要加载的软件 SIZE 很小,单线和8 线差别不大,用X1 模式启动就可以;启动进入2nd Stage 之后,可以自行配置XSPI 驱动,决定使用 单线/2线/4线或者 8 线模式;
还有16位和32位bus flash的boot 模式又是什么意思啊
这个指的时用NOR FLASH, 走并行总线接口启动。
我用的是AC CN032 开发板。我这就只能提供XSPI0 boot模式啊,现在是外部flash有例程导致无法调试,然后我用spi0 x1下载调试,报ID CODE 验证,怎么办。
你用的J_link是什么版本的?《Getting Start with Flex Software Package》这个文档好好看看。目前j_link + IAR的组合 debug T2M是有些问题的。 推荐IAR + i-jet。
嗯嗯。看了的,我用的是V11版本,那我怎样才能删除外部flash内存,然后使用RAM execution without flash memory模式下载调试呢。
谢谢,问题已经解决了
最好用我们的RSK调试,我们提供的例程不能直接在CN032上调试。你如果要调试CN032的电机套件,请务必小心电机。电机调试的时候是不能打断点的,不然会烧功率器件。