我试图读/写配置数据到我的程序的闪存。配置数据是512的uint16_t数组。我遵循“使用SDK6外围驱动程序”文档。我试图将闪存配置更改为模块上的P25Q11U设备。已知设备的spi_flash.h中的enum中缺少P25Q11U_DEV_INDEX。
我包含了spi_flash.c和spi_531.c驱动程序。
是否有一个特定的14531MOD示例或文档,我可以遵循或不同的驱动程序,我丢失了?
谢谢你!
拉里
我试图读/写配置数据到我的程序的闪存。配置数据是512的uint16_t数组。我遵循“使用SDK6外围驱动程序”文档。我试图将闪存配置更改为模块上的P25Q11U设备。已知设备的spi_flash.h中的enum中缺少P25Q11U_DEV_INDEX。
我包含了spi_flash.c和spi_531.c驱动程序。
是否有一个特定的14531MOD示例或文档,我可以遵循或不同的驱动程序,我丢失了?
谢谢你!
拉里
应该包括我正在使用SDK 6.0.14.1114和DA14531DIAKT。
我继续假设P25q11u和P25Q10U是一样的,当我尝试一个flash错误时,我得到SPI_FLASH_ERR_WEL_ERROR错误。
我也试过:
Static const spi_flash_cfg_t spi_flash_cfg = {
.dev_index = P25Q10U_DEV_INDEX,
.jedec_id = P25Q11U_JEDEC_ID,
.chip_size = P25Q11U_CHIP_SIZE,
};
我根据P25Q10U“DA14585/586接口外接内存”应用说明的建议添加了以下内容。
spi_set_bitmode (SPI_MODE_8BIT);
spi_transaction (0 x06);/ /写启用
spi_set_bitmode (SPI_MODE_16BIT);
//将00写入状态寄存器,这将禁用所有内存保护位
spi_transaction (0 x01 < < 8);
还是同样的错误。
谢谢,
拉里
嗨lecarter190,
谢谢你的问题。请查看SPI Flash SDK示例:6.0.14.1114\projects\target_apps\peripheral_examples\ SPI \spi_flash
这个示例旨在演示如何执行基本的读/写功能。只需构建DA14531的Keil项目配置和模块编程。此外,该示例使用UART (P06上的UTX),因此在J1上放置跳线。在串行终端上查看日志信息。P25Q10U_DEV_INDEX是在known_spi_devs_list[]结构上添加的,它可以与模块上的flash交互。
谢谢,PM_Dialog
谢谢,
这个例子确实有效,我将通过它,看看我的代码中缺少什么。我仍然没有看到11U芯片的索引,但它是按编码工作的。
再一次,
谢谢
明白了,我正在使用DA14531MOD,忘记了将内部引脚预留和GPIO_Configure到flash。眼不见,心不烦。
再一次,
谢谢
嗨lecarter190,
很高兴你成功了,谢谢你接受我的回答。
谢谢,PM_Dialog