初级会员

- 积分
- 153
- 金钱
- 153
- 注册时间
- 2016-5-22
- 在线时间
- 42 小时
|
5金钱
在STM32 USB中我想把一些参数写入到FLASH中,再从FLASH中读出来,所以直接移植战舰板的第三十九章 FLASH模拟EEPROM实验, 现在的问题是可以写入,但是读出的时候调用u16 STMFLASH_ReadHalfWord(u32 faddr){
return *(vu16*)faddr;
}
的时候,它就会直接进入下面的函数,死在里面了
/** * @brief This function handles Hard Fault exception.
* @param None
* @retval None
*/
void HardFault_Handler(void)
{
/* Go to infinite loop when Hard Fault exception occurs */
while (1)
{
}
}
我怀疑因为在USB初始化在配置的时候有这几个函数被调用了
/* Enable Prefetch Buffer */
FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
/* Flash 2 wait state */
FLASH_SetLatency(FLASH_Latency_2);
这会不会锁定了FLASH的读操作,求大神指教
|
最佳答案
查看完整内容[请看2#楼]
有可能是我读的地址不存在导致的,我用的是stm32f105rb,flash只有128K,而我用了例程的地址,可能远远超过了范围
|