无法读取DA14583内部闪存

7个帖子/ 0个新
最后发表
jackiechau
离线
最后看到:3年7个月前
加入:2016-01-15 01:32
无法读取DA14583内部闪存

首先,我使用SmartSnippets将8字节的数据刻录到0x8001中,并通过单击read来验证flash内容。无论我使用DA14580_beacon_3.40.6还是外围测试项目的spi_flash,都无法通过调用spi_flash_read_data()正确读取flash内容。看来这两个项目是基于14580来实施的,对吗?请建议。

设备:
MT_dialog
离线
最后看到:4个月2周之前
工作人员
加入:2015-06-08 34
嗨jackiechau,

嗨jackiechau,

您试图通过信标参考设计读取插入到闪光灯中的数据?对于从flash中读取数据的信标器,它使用两个报头,一个产品报头和一个配置报头,产品报头指示程序配置报头的位置。对于外围设备的例子,它在读写过程发生之前擦除整个芯片。这两个项目都是为了580。你是否按照583内部闪光引脚的顺序配置了合适的GPIO引脚?

由于MT_dialog

jackiechau
离线
最后看到:3年7个月前
加入:2016-01-15 01:32
嗨MT_dialog,

嗨MT_dialog,

在外围的例子中,我已经注释掉了整个芯片。但是可能是我配置了错误的GPIO,请您列出是哪个I/O以及它的功能来控制583的内部flash引脚,谢谢。

MT_dialog
离线
最后看到:4个月2周之前
工作人员
加入:2015-06-08 34
嗨jackiechau,

嗨jackiechau,

控制内部flash的583引脚是P2_0/CLK - P2_3/CS - P2_4/MISO - P2_9MOSI,你可以在数据表和SDK项目中的user_外围_setup.h中找到它们,除了外围示例项目。

由于MT_dialog

jackiechau
离线
最后看到:3年7个月前
加入:2016-01-15 01:32
嗨MT_dialog,

嗨MT_dialog,

感谢您的信息,我已经修改了外围设备示例,可以在调试模式下成功读取0x8000的16字节flash数据(使用JLink调试器)。然而,我烧程序图像到闪存和复位板,它似乎程序停止和运行非常慢,然后16字节0x00被读取。那些读的数据是不正确的,我已经通过使用SmartSnippets验证了flash数据。然后我在程序中添加了一些printf调试消息,并以独立模式运行程序,当开始执行spi_flash_auto_detect()时,程序似乎停止了。在flash中执行程序和同时读取flash数据有问题吗?如果有,如何解决,谢谢。

MT_dialog
离线
最后看到:4个月2周之前
工作人员
加入:2015-06-08 34
嗨Jackiechau,

嗨Jackiechau,

在flash中燃烧一个图像并在flash的另一个较低的部分有一些数据是没有问题的,为了验证是否有问题发生,我已经在这个简单的例子中做了一些修改,以便与flash交互并打印读数,我用专有头程序员从智能代码片段烧毁了一些数据,并将数据放在闪存的0x18000地址中。我可以从闪存读取数据,并在终端上显示,没有任何延迟。听起来你的flash根本不可访问,你调用release_from_power_down()函数来唤醒你的flash吗?从SPI引导583的引导加载程序后,它把闪光灯下电。

由于MT_dialog

jackiechau
离线
最后看到:3年7个月前
加入:2016-01-15 01:32
嗨MT_dialog,

嗨MT_dialog,

问题解决了,谢谢。

主题锁定