你好,
我正在运行我们的固件和启动代码在外部SPI flash,由于省电功能,SPI flash将会断电,当没有活动。
在其他一些关于关闭SPI flash的复位控制的讨论之后,我添加了一些代码来在调用任何异常处理程序的reset之前释放SPI flash的关机
1) HardFault_HandlerC
2) NMI_HandlerC
但是我不知道'platform_reset'将在什么时候和什么地方被ROM代码调用,谁能给我一些指令,关于如何实现我自己的platform_reset来替换它。
我使用的是参考SDK DA14580_BEACON_3.40.6。
设备:
嗨,哈代
通常,函数platform_rest保存一个错误代码作为输入参数。现在可能的错误代码在arch.h中
ex. ///重置平台并留在ROM中
#定义xa5a5a5a5 RESET_TO_ROM 0
你可以直接调用这个函数。
然后PC将跳转到0x0。触发硬故障中断。
在我看来,最简单的方法是编写一个补丁来替换原来的platform_reset函数。
这超出了我创造补丁的范围,我把你的问题发送给团队。等待答案。
谢谢
嗨,hardy.chen
可以试试下面的方法吗?谢谢
1.转到jump_table.c
2.实现
空白custom_platform_reset_func (uint32_t错误)
{
/*TODO: Put the wake SPI flash function */
platform_reset_func(错误);/*其中error可以是RESET_NO_ERROR */
}
3.找出“platform_reset”
4.将"platform_reset"替换为"custom_platform_reset_func"
嗨,对话框的团队,
谢谢!这个工作!