完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在尝试编写代码来测试 LPC54s018-EVK 上的串行闪存。我需要首先确认逐个扇区擦除闪存是可行且有效的,然后继续我测试的其他阶段。(我不想一次擦除整个芯片,因为我们的主要软件需要从闪存中擦除一组选定的扇区)。为此,我开始查看 SDK 版本 2.12.0 中的软件示例。具体来说,这个例子叫做“spifi_dma_transfer”。我意识到该示例擦除一个扇区,然后继续逐页写入。因此,我修改了该示例代码并在擦除部分周围添加了一个循环以一个接一个地擦除所有扇区并注释掉它写入闪存的部分。结果是我第一次尝试擦除闪存时,它成功了,我可以看到闪存中的所有数据都设置为 1s;但是,如果我尝试擦除已经擦除的闪存,在擦除大约 500 到 700 个扇区后,将调用信号处理程序,CPU 将开始挂起在 startup_lpc54s018.c 中名为“IntDefaultHandler(void)”的函数中。使用调试器的堆栈跟踪,我可以看到被调用的信号处理程序是 CtiMER0_IRQHandler()。
意识到这一点后,我也尝试将该处理程序定义为一个空函数;但是,它不断地被调用。 我想知道您是否可以让我知道为什么我会看到这种行为以及我将如何解决这个问题。 (我也尝试过在闪存被擦除的这种状态下使用示例代码逐页写入它,但由于调用了相同的处理程序,这也不起作用) 下面是示例代码(删除扇区的部分) 这是我的修改版本(试图逐个扇区删除所有闪存) |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1917个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36383 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4412 浏览 0 评论
6076 浏览 1 评论
6787 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4229 浏览 0 评论
632浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
628浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
626浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
704浏览 2评论
811浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-4 03:01 , Processed in 1.502096 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号