使用tffs文件问题
flash为at49bv160a,(1M*16),写了自己的MTD文件。
512k用作BOOTrom,512k*3用作tffs文件。
in config.h
#define INCLUDE_TFFS
#define INCLUDE_DOSFS
#define INCLUDE_SHOW_ROUTINES
复制mv177-sysTffs.c到BSP目录,并更名为为sysTffs.c,复制tffsConfig.c到BSP目录
sysTffs.c中添加自己的MTD宏定义,设置Flash存储器基址和大小,
in sysTffs.c
#define INCLUDE_MTD_AT49BV160
#define FLASH_BASE_ADRS 0x1000000
#define FLASH_SIZE 0x00180000
增加at49bv1604Mtd.c
FLStatus at49bvMTDIdentify( FLFlash* pVol );
LOCAL FLStatus at49bvSectorRangeErase(FLFlash* pVol, int, int);
LOCAL FLStatus at49bvProgram(FLFlash*, CardAddress, const void FAR1*,
int,
FLBoolean);
LOCAL void FAR0* at49bvMap(FLFlash*, CardAddress, int);
tffsConfig.c中向mtdTable[]表注册自己的MTD。
in tffsConfig.c
#ifdef INCLUDE_MTD_AT49BV160
at49bvMTDIdentify,
#endif /* INCLUDE_MTD_AT49BV160*/
下载下去了后,在shell中
->tffDev
value = 0 = 0x0
就是出现以下的情况了,有一个任务tTffsPTask 好像是等待什么信号量没有等到,
debug全部是汇编不好看。
不知道为什么?
-> i
NAME
ENTRY TID
PRI STATUS
PC SP
ERRNO DELAY
---------- ------------ -------- --- ---------- -------- -------- ------- -----
tExcTask excTask
20fac7c 0 PEND
20687e4 20fab84
0 0
tLogTask logTask
20f8300 0 PEND
20687e4 20f8218
0 0
tShell
shell
20f41e4 1 PEND
200ac6c 20f3e78
0 0
tWdbTask wdbTask
20f63f4 3 READY
200ac6c 20f6328
0 0
tTffsPTask flPollTask 20fe8dc 100
DELAY 205e708
20fe858 0 1
tTick
tTick 20e3d3c 255
DELAY 205e708
20e3cc0 0 4
value = 0 = 0x0
在at49bvMTDIdentify中加入了调试信息,没有执行到这儿。
共4条
1/1 1 跳转至页

3楼
今天,终于调试通了,是个小错误,在
sysTffs.c中没有
#ifndef dos
#include "tffs/tffsConfig.c"
#endif
改为
#ifndef dos
#include "tffsConfig.c"
#endif
呵呵,丢死人了
#ifndef dos
#include "tffs/tffsConfig.c"
#endif
改为
#ifndef dos
#include "tffsConfig.c"
#endif
呵呵,丢死人了

4楼
新的问题,执行了tffsDrv,
执行sysTffsFormat的时候,格式化是对了,但是
在格式化后,好像不停的以0x200的增量从FLASH_BASE_ADRS+3000开始
不停的擦写,强行停下来后,查看每个64k的区是对的
01080000: 0313 4943 4653 00ff 5446 314c 3030 0100 *..CISF..FTL100..*
01080010: 001c 0000 0012 1009 0000 0018 3a00 0016 *.............:..*
01080020: 0000 0001 0017 ff00 0000 0000 0000 0000 *................*
01080030: 0044 0000 ffff ffff ffff ffff ffff ffff *D...............*
01080040: ffff ffff 0030 0000 0030 0000 0000 0000 *....0...0.......*
01080050: 0000 0000 0000 0000 0000 0000 0000 0000 *................*
01080060: 0000 0000 0000 0000 0000 0000 0000 0000 *................*
01080070: 0000 0000 0000 0000 0000 0000 0000 0000 *................*
从1090000---1100000都是这样的
就是一开始写东西就是不停的以0x200的增量反复擦写,希望大虾们能帮忙一下。
顶一下。
执行sysTffsFormat的时候,格式化是对了,但是
在格式化后,好像不停的以0x200的增量从FLASH_BASE_ADRS+3000开始
不停的擦写,强行停下来后,查看每个64k的区是对的
01080000: 0313 4943 4653 00ff 5446 314c 3030 0100 *..CISF..FTL100..*
01080010: 001c 0000 0012 1009 0000 0018 3a00 0016 *.............:..*
01080020: 0000 0001 0017 ff00 0000 0000 0000 0000 *................*
01080030: 0044 0000 ffff ffff ffff ffff ffff ffff *D...............*
01080040: ffff ffff 0030 0000 0030 0000 0000 0000 *....0...0.......*
01080050: 0000 0000 0000 0000 0000 0000 0000 0000 *................*
01080060: 0000 0000 0000 0000 0000 0000 0000 0000 *................*
01080070: 0000 0000 0000 0000 0000 0000 0000 0000 *................*
从1090000---1100000都是这样的
就是一开始写东西就是不停的以0x200的增量反复擦写,希望大虾们能帮忙一下。
顶一下。
共4条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 | |
分享汽车电子中巡航控制系统知识被打赏10分 | |
分享安全气囊系统的检修注意事项被打赏10分 |