OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7019|回复: 5

fatfs 长的中文件名的读取

[复制链接]

27

主题

147

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
275
金钱
275
注册时间
2012-8-11
在线时间
0 小时
发表于 2012-10-18 17:18:22 | 显示全部楼层 |阅读模式

已经实现了英文的长中文件名,但是中文的那个转换数组太大,uni2oem[]太大,用的MIN板容量不够,然后想放在SD卡里,但是没有成功
转换函数改为:
WCHAR ff_convert ( /* Converted code, 0 means conversion error */
 WCHAR src, /* Character code to be converted */
 UINT dir
)
{
 WCHAR t[2];
 WCHAR c;
 unsigned long i, li, hi;
 int n;
 unsigned int cout;

 

 if(f_open (&f_u2gb,"U2GB.TBL", FA_READ)!=FR_OK)  //u2gb.TBL是二进制的转换数组
   printf("you wen ti");

 


 if (src < 0x80){c = src;}/* ASCII */
 else
  if(u2gb_on==0)c='?';
  else
  {
   /* Unicode to OEMCP */
   hi=f_u2gb.fsize;
   hi =hi / 4 - 1;
   li = 0;
   
   for (n = 16; n; n--)
    {
    i = li + (hi - li) / 2;
    f_lseek(&f_u2gb,i*4);
    f_read(&f_u2gb,&t,4,&cout);
    if (src == t[0]) break;
    if (src > t[0])
     li = i;
    else
     hi = i;
    }
   if(n!=0)
    c=t[1];
   else c='?';
    }
 f_close(&f_u2gb);
 return c;
}
求大神指点~~~

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-10-18 20:05:30 | 显示全部楼层
回复【楼主位】Alexinx:
---------------------------------
参考战舰STM32的例程。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

27

主题

147

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
275
金钱
275
注册时间
2012-8-11
在线时间
0 小时
 楼主| 发表于 2012-10-18 23:11:56 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
看过了,例程中是用MALLOC函数来解决的,我移植到mini版上也会报错,没有记住是什么问题。。。
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-10-19 00:27:54 | 显示全部楼层
回复【3楼】Alexinx:
---------------------------------
转换数组是存在外部flash里面的,和malloc无关.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

27

主题

147

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
275
金钱
275
注册时间
2012-8-11
在线时间
0 小时
 楼主| 发表于 2012-10-19 15:52:05 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
我再仔细看一下,谢了
回复 支持 反对

使用道具 举报

47

主题

255

帖子

1

精华

高级会员

Rank: 4

积分
641
金钱
641
注册时间
2012-11-3
在线时间
6 小时
发表于 2013-6-5 23:04:44 | 显示全部楼层
回复【楼主位】Alexinx:
---------------------------------
lz你这个想法实现了吗?我也做了一下,没实现。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-19 01:52

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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