完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
大家好!我现在使用的是m058LDN 没有使用操作系统,现在有个问题是将片内dataflash当做EEPROM来用,存储配置参数,但是发现在操作几次或者几十次后M058会死机,大家有没有遇到过此问题,各位大牛帮忙看看是哪里出了问题,谢谢。
代码如下: #define PAGE_SIZE 512 #define FMC_DATAFLASH_BASE 0x0001F000 #define DATAFLASH_SIZE 0x00001000 int32_t FMC_WriteData(uint32_t *u32Config, uint32_t u32Count,uint32_t page) { int32_t i; __set_PRIMASK(1);//关闭全局中断 SYS_UnlockReg(); FMC_Open();//Enable FMC ISP function FMC_EnableLDUpdate(); FMC_Erase(FMC_DATAFLASH_BASE + page * PAGE_SIZE); for(i = 0; i < u32Count; i++) { FMC_Write(FMC_DATAFLASH_BASE + page * PAGE_SIZE + i * 4, u32Config[i]); if(FMC_Read(FMC_DATAFLASH_BASE + page * PAGE_SIZE + i * 4) != u32Config[i]) return -1; } FMC_Close();//Disable ISP Functions SYS_LockReg(); __set_PRIMASK(0);//打开全局中断 return 0; } void FMC_ReadData(uint32_t *u32Config, uint32_t u32Count,uint32_t page) { int32_t i; __set_PRIMASK(1);//关闭全局中断 SYS_UnlockReg(); FMC_Open();//Enable FMC ISP function FMC_EnableLDUpdate(); for(i = 0; i < u32Count; i++) { u32Config[i] = FMC_Read(FMC_DATAFLASH_BASE + page * PAGE_SIZE + i * 4); } FMC_Close();//Disable ISP Functions SYS_LockReg(); __set_PRIMASK(0);//打开全局中断 } |
|
相关推荐
1个回答
|
|
可能是由于您的代码存在一些bug或者使用不当而导致MCU宕机。
首先,建议您检查一下FMC_WriteData函数中对dataflash进行操作的代码是否正确,特别是指针操作、逻辑判断、内存空间访问等方面。同时,建议您使用调试工具(如J-Link)对代码进行在线调试,可以帮助您找出代码中的错误。 其次,如果您使用了中断等异步操作,可能会导致MCU死锁或者系统资源耗尽。请检查一下您的代码是否正确设置了中断优先级,是否正确使用了信号量等同步机制。 最后,建议您根据宕机现象进行一些进一步的调查和分析,比如查看硬件故障日志、内存使用情况等,并尝试对系统进行优化或调整,降低宕机概率。 |
|
|
|
只有小组成员才能发言,加入小组>>
imx6ull 和 lan8742 工作起来不正常, ping 老是丢包
2845 浏览 0 评论
3353 浏览 9 评论
3030 浏览 16 评论
3526 浏览 1 评论
9135 浏览 16 评论
1261浏览 3评论
651浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
641浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2389浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1952浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-4 09:45 , Processed in 1.641208 second(s), Total 49, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号