最近又重新拾起了ESP32,一年前疫情期间闲着没事自己画的板卡,ESP型号用的双核EPS32DOWD,主频最高240MH在,外扩了8MB的QSPI FLASH和预留了一个PSRAM,前两天买了几片ESP-PSRAM64H(支持3.3V供电,最高时钟133MHz),就想起了我的ESP32板子,于是焊接上了,但是再menuconfig里面配置了SPI RAM,却不被识别,请教下朋友们有没有知道原因的?
1.原理图(R6为NC,没有焊接):
2:menuconfig
(1):qspi flash 配置(QIO)
(2):spi ram 配置
3:系统启动的log信息(红框信息提示SPI RAM初始化失败)
技术狂,追求技术更高层,哈哈哈
离线
试试DIO看看。
离线
这是之前做过成功驱动spiram的,芯片和你的不一样,不知道有没有参考价值。
离线
解决了,说出来也很尴尬,由于板卡时间过于久远没碰了,都忘记了,当时没有焊接PSRAM的时候顺带着PSRAM的clk引脚串联的电阻R5也一起没焊接,后来用示波器测信号时发现的,补上了R5电阻就可以正常识别和通过MMU使用PSRAM了...
最近编辑记录 shuimogezi (2021-06-24 09:41:57)
技术狂,追求技术更高层,哈哈哈
离线
大佬,冒昧打扰,请教下,你图中R6为NC,那psram的clk是从IO17来的?可否接上R6、R5从SD_clk给psram给clock吗?以及psram与spiflash除了使能pin用的不一样(flash是SD_CMD、psram你图中是IO16)外,其他spi都是同一个这样可用?目前flash、TF卡用完了spi,不清楚psram可以和flash共用spi?
离线
@muzhi
自问自答下,如果有和我一样的萌新,记得看硬件设计手册~
离线
这是之前做过成功驱动spiram的,芯片和你的不一样,不知道有没有参考价值。
https://whycan.com/files/members/1315/Screenshot123020.png
请问你是怎么实现“片选和clk分别接io10和io6成功驱动”的?因为官方要求接的是io16/17,而我正好需要uart2的持续通信而不能让出io16/17,你这个如果真的成功的话,确实能解决我的麻烦
离线
@491990741
我也不太了解,电路参考了tinypico的https://www.tinypico.com/tinypico-nano。具体代码实现,我知道的是在micropython里有针对tinypico的设置,你可以看一下。
离线
@491990741
我也不太了解,电路参考了tinypico的https://www.tinypico.com/tinypico-nano。具体代码实现,我知道的是在micropython里有针对tinypico的设置,你可以看一下。
谢谢。但我找不到相关例程。你能帮我看下你那个成功驱动的几个点吗(因为我主要用安信可的外设所以也不需要完整例程)?
1.IO6的配置是默认gpio还是复用的spi clk?
2.如果1里是spi clk,配置的频率是多少(我可以尝试创建一个同频率时钟)?
3.(可能性极低),如果1里是io6的逻辑控制高低电平,那它和ram其它引脚在一次数据传输中的时序先后关系是怎样的(比如传1个字节,各引脚的先后置高置低的顺序)?
离线
@491990741
不好意思,驱动不太懂。我只是按照https://github.com/micropython/micropython/tree/master/ports/esp32编译后生成的固件就直接支持psram了。
make BOARD=UM_TINYPICO
离线