看到很多人对于FatFs这个文件系统添加时间的函数格式不懂,其实按照它提供的格式增加即可
下面是我的实现方法,只做参考,其他实现方法就大家琢磨了
[mw_shl_code=c,true] PCF8563_ReadWrite_Time(1); //获取时间信息
//将时间十六进制转换成BCD码
TimeValue.year = HX_to_DX(TimeValue.year); //年
TimeValue.month = HEX_to_BCD(TimeValue.month); //月
TimeValue.date = HEX_to_BCD(TimeValue.date); //日
TimeValue.hour = HEX_to_BCD(TimeValue.hour); //时
TimeValue.minute = HEX_to_BCD(TimeValue.minute);//分
TimeValue.second = HEX_to_BCD(TimeValue.second);//秒
//按照FatFs的时间格式组合
time_buff |= ((TimeValue.year - 1980)<<25); //年
time_buff |= (TimeValue.month<<21); //月
time_buff |= (TimeValue.date<<16); //日
time_buff |= (TimeValue.hour<<11); //时
time_buff |= (TimeValue.minute<<5); //分
time_buff |= (TimeValue.second/2); //秒[/mw_shl_code]
移植的时候,他给了这个函数的定义,你需要这个功能就把他实现了,不需要就随便返回一个数,或者直接在配置宏定义那把这个功能关了
一周热门 更多>