OpenEdv-开源电子网

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

关于FATFS显示文件创建时间和修改时间

[复制链接]

94

主题

260

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2013-10-23
在线时间
48 小时
发表于 2014-10-17 10:25:52 | 显示全部楼层 |阅读模式
5金钱
我在diskio.c里面添加了get_fattime()函数,返回了一个32位的时间值,但是创建文件后在电脑上右键还是看不到文件的创建时间,执行f_stat()函数后FILINFO类型结构体里面fdate和ftime成员有数据,是不是还缺少什么步骤

最佳答案

查看完整内容[请看2#楼]

我的这样就可以了http://www.openedv.com/posts/list/38086.htm
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-10-17 10:25:53 | 显示全部楼层
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

94

主题

260

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2013-10-23
在线时间
48 小时
 楼主| 发表于 2014-10-17 13:34:27 | 显示全部楼层
回复【2楼】Badu_Space:
---------------------------------
get_fattime()我也写了,它只是返回一个32位的时间之而已,可是我的文件还是不显示创建时间,你看看我的代码
DWORD get_fattime (void)
{
    DWORD fattime=0;
fattime|=(DateTime.year-1980)<<25;
    fattime|=DateTime.mon<<21;
    fattime|=DateTime.day<<16;
    fattime|=DateTime.hour<<11;
    fattime|=DateTime.min<<5;
    fattime|=DateTime.sec/2;
    return fattime;
}
int main(void)
{
    FATFS fs;
    FIL fil;
    FRESULT res;
   SD_Initialize();
    res=f_mount (0,&fs);
    res=f_mkdir ("q");
    res=f_mkdir ("q/f");
    res=f_open (&fil,"q/f/m.xls",FA_WRITE|FA_READ|FA_OPEN_ALWAYS);
res=f_close (&fil);
}
DateTime是包含时间值的结构体。
这样创建的m.xls文件在电脑上右键查看属性,创建时间和修改时间这两栏还是空白。
回复

使用道具 举报

120

主题

7878

帖子

13

精华

资深版主

Rank: 8Rank: 8

积分
12012
金钱
12012
注册时间
2013-9-10
在线时间
427 小时
发表于 2014-10-17 19:42:43 | 显示全部楼层
你的刷新时间函数呢?
现在,程序把烂铜烂铁变得智能化了,人呢,一旦离开了这烂铜烂铁就不知道干啥了
回复

使用道具 举报

94

主题

260

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2013-10-23
在线时间
48 小时
 楼主| 发表于 2014-10-17 23:31:59 | 显示全部楼层
回复【4楼】Badu_Space:
---------------------------------
刷新时间函数就是RTC啊,我没贴出来,DateTime这个结构体就是存放的实时时间。
回复

使用道具 举报

94

主题

260

帖子

0

精华

高级会员

Rank: 4

积分
650
金钱
650
注册时间
2013-10-23
在线时间
48 小时
 楼主| 发表于 2014-10-18 00:02:46 | 显示全部楼层
回复【4楼】Badu_Space:
---------------------------------
要怎么样才能让创建的文件在电脑上显示修改时间呢
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-10-18 00:56:17 | 显示全部楼层
回复【6楼】骑着蜗牛追梦想:
---------------------------------
已经给过你方法了
你只需要实现get_fattime ,就可以了
如果时间有误差,就进入该函数的时候,刷新一次时间,然后在转换。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-30 06:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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