硬汉嵌入式论坛

 找回密码
 立即注册
查看: 737|回复: 4
收起左侧

[ThreadX全家桶] norflash+fafts+levelx再连续多天测试后读写失败,原因是写入地址和读入地址不一致

[复制链接]

3

主题

9

回帖

18

积分

新手上路

积分
18
发表于 2024-11-20 11:25:07 | 显示全部楼层 |阅读模式
用的版本是6.4.1,多天测试基本就是对同一文件进行数据覆盖,有没有大佬遇到过类似的问题,跪求

fafts挂掉的原因是levelx写入的映射地址和读出来的地址不一致,之后不管怎么是复位还是重启都无效了,只能格式化norflash再初始化levelx才行


挂载的时候向扇区0写入配置映射地址583680,复位后f_mount读取扇区0地址实际地址再levelx里面是203776,从而导致fafts识别不到文件系统



回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116197
QQ
发表于 2024-11-20 16:34:23 | 显示全部楼层
推荐不要同一个文件测试,比如达到2MB后,新开文件,一直到写满,看看是否正常,这个是合理的用法。
回复

使用道具 举报

3

主题

9

回帖

18

积分

新手上路

积分
18
 楼主| 发表于 2024-11-29 16:22:37 | 显示全部楼层
结帖:初始化的时候lx_nor_flash_total_blocks = FLASH总大小/扇区大小(32M/4K我这里填成块的大小64k了),lx_nor_flash_words_per_block=4k/4
现在又遇到一偶现的问题,开机偶现_lx_nor_flash_open初始化失败导致格式化flash,怀疑是写flash过程中断电导致levelx的表出错了
回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116197
QQ
发表于 2024-11-30 07:11:48 | 显示全部楼层
金木研 发表于 2024-11-29 16:22
结帖:初始化的时候lx_nor_flash_total_blocks = FLASH总大小/扇区大小(32M/4K我这里填成块的大小64k了) ...

这个可以排查下,操作完毕了,反复断电测试。
回复

使用道具 举报

3

主题

9

回帖

18

积分

新手上路

积分
18
 楼主| 发表于 2024-12-19 14:56:38 | 显示全部楼层
来结一下,开机偶现levelx初始化失败是因为再写入大量数据后需要进行擦除时导致的,擦除函数擦除大小填错了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-6-9 21:34 , Processed in 0.283531 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表