我用如图配置生成了一个工程,在主循环内增加执行内容: HAL_Delay(10); HAL_NAND_Read_ID(&hnand1,&NAND_ID); printf("\r\nT000"); 结果执行HAL_NAND_Read_ID函数后就跑飞了,不会从串口打印字符串; 而注销掉HAL_NAND_Read_ID函数,就会从串口打印字符串的。 把HAL_NAND_Read_ID函数改成一个总线操作指令: *(__IO uint32_t *)(0x60000048)=0; 结果也是如此。 是CUBEMX里哪里还需要配置吗? 还是CUBEMX自动生成的对FSMC的初始化有问题? |
是否初始化 |
自动生成的工程里有初始化呀 |
应该是这里出错了。你是要读,而*(__IO uint32_t *)(0x60000048)=0; 是在写。 |