完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我已经用 BSP_QSPI_Init() 函数初始化了 Micron MT25TL01G QSPI 芯片。我能够使用 BSP 下的底层 MT25TL01G 函数读取、写入和擦除数据到 QSPI。每当我删除 BSP 初始化时,我都不会收到 MT25TL01G_ReadDTR() 的输出。
这听起来可能很傻,但 CubeMx 不是使用 HAL_QSPI_Init 初始化 QSPI 芯片吗? 这可能是 QSPI_MspInit() 与 HAL_QSPI_MspInit() 配置问题吗? 参数: /* QUADSPI参数配置*/ hqspi.Instance = QUADSPI; hqspi.Init.ClockPrescaler = 2; hqspi.Init.FifoThreshold = 4; hqspi.Init.SampleShifting = QSPI_SAMPLE_SHIFTING_HALFCYCLE; hqspi.Init.FlashSize = 25; hqspi.Init.ChipSelectHighTime = QSPI_CS_HIGH_TIME_2_CYCLE; hqspi.Init.ClockMode = QSPI_CLOCK_MODE_0; hqspi.Init.FlashID = QSPI_FLASH_ID_1; hqspi.Init.DualFlash = QSPI_DUALFLASH_DISABLE; 如果 (HAL_QSPI_Init(&hqspi) != HAL_OK) { 错误处理程序(); } /* 用户代码开始 QUADSPI_Init 2 */ BSP_QSPI_Init_t 初始化; init.InterfaceMode = MT25TL01G_QPI_MODE; init.TransferRate = MT25TL01G_DTR_TRANSFER; init.DualFlashMode = MT25TL01G_DUALFLASH_DISABLE; 如果 (BSP_QSPI_Init(0, &init) != BSP_ERROR_NONE) { 错误处理程序(); } /* 用户代码结束 QUADSPI_Init 2 */ |
|
相关推荐
1个回答
|
|
通过检查 HAL_QSPI_Init 的源代码,您会看到该函数仅初始化 QSPI 接口(在 STM32 中),而不是闪存芯片。大多数 SPI 闪存芯片以 SPI 模式(单线)、3 字节地址、STR 加电。由于您显然打算使用 QPI、4 地址、DTR,因此必须相应地配置闪存芯片。虚拟周期数是另一点。如何做到这一点在很大程度上取决于闪光灯型号,所以......
一些闪存设备允许非易失性配置,但这也必须完成一次。因此无法省略配置步骤。 |
|
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2634 浏览 1 评论
3208 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1783 浏览 1 评论
3609 浏览 6 评论
5987 浏览 21 评论
939浏览 4评论
1315浏览 4评论
在Linux上安装Atollic TRUEStudio的步骤有哪些呢?
582浏览 3评论
使用DMA激活某些外设会以导致外设无法工作的方式生成代码是怎么回事
1302浏览 3评论
1357浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 10:04 , Processed in 1.113996 second(s), Total 76, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号