低功耗蓝牙中UTCTimeStruct转换为UTCtime时间对月份和年循环条件的问题?
时间:10-02
整理:3721RD
点击:
/* Next, complete months in current year */
{
int8 month = tm->month;
while ( --month >= 0 )//这里有没错呢?你先把一个月减了
//是不是少计数了一个月
{
days += monthLength( IsLeapYear( tm->year ), month );
}
}
/* Next, complete years before current year */
{
uint16 year = tm->year;
while ( --year >= BEGYEAR )
{
days += YearLength( year );
}
}
问题是在这里将时间数据由 UTCTimeStruct转换为UTCtime时间对月份和年循环条件。比如--year>=BEGYEAR是不是上算了一年。
TI的固件里,月份是从0开始计算的。需要小小修改一下。函数的注释有。
我知道,从一月到十二月存储是从0~11。但是你一进去循环条件就把月份先减了一不是少算了一个月?
