void FlowMovie_IconDrawDateTime(void) { RTC_DATE Date; RTC_TIME Time; // display Date/Time string in movie mode Date = rtc_getDate(); Time = rtc_getTime(); //vincent@20150804-1 begin #if (_MODEL_DSC_ == _MODEL_CARDV_K12_) switch (SysGetFlag(FL_DATE_FORMAT)) { case DATE_FORMAT_DMY: sprintf(date_str, "%02d/%02d/%04d", Date.s.day, Date.s.month, Date.s.year); break; case DATE_FORMAT_MDY: sprintf(date_str, "%02d/%02d/%04d", Date.s.month, Date.s.day, Date.s.year); break; case DATE_FORMAT_YMD: default: sprintf(date_str, "%04d/%02d/%02d", Date.s.year, Date.s.month, Date.s.day); break; } #else sprintf(date_str,"%04d/%02d/%02d",Date.s.year,Date.s.month,Date.s.day);//vincent@20150818-2 #endif //vincent@20150804-1 end sprintf(time_str,"%02d:%02d:%02d",Time.s.hour,Time.s.minute,Time.s.second); UxStatic_SetData(&UIFlowWndMovie_YMD_StaticCtrl,STATIC_VALUE,Txt_Pointer(date_str)); UxStatic_SetData(&UIFlowWndMovie_HMS_StaticCtrl,STATIC_VALUE,Txt_Pointer(time_str)); UxCtrl_SetShow(&UIFlowWndMovie_YMD_StaticCtrl,TRUE); UxCtrl_SetShow(&UIFlowWndMovie_HMS_StaticCtrl,TRUE); }
INT32 UIMenuWndSetupDateTime_OnOpen(VControl *pCtrl, UINT32 paramNum, UINT32 *paramArray) { //#NT#2010/06/01#Chris Chung -begin RTC_DATE Date; RTC_TIME Time; Date = rtc_getDate(); Time = rtc_getTime(); g_year = Date.s.year; g_month = Date.s.month; g_day = Date.s.day; g_hour = Time.s.hour; g_min = Time.s.minute; g_second = Time.s.second; UxTab_SetData(&UIMenuWndSetupDateTime_TabCtrl, TAB_FOCUS, 0); #if (DATETIME_AMPM_ENABLE == ENABLE) UxCtrl_SetShow(&UIMenuWndSetupDateTime_YMD_AMPMCtrl, TRUE); #else UxCtrl_SetShow(&UIMenuWndSetupDateTime_YMD_AMPMCtrl, FALSE); #endif UIMenuWndSetupDateTime_UpdateInfo(); //#NT#2010/06/01#Chris Chung -end Ux_DefaultEvent(pCtrl,NVTEVT_OPEN_WINDOW,paramNum,paramArray); return NVTEVT_CONSUME; }
void FlowDCF_UpdateName(void) { CHAR FolderName[6]="MEDIA"; CHAR FileName[5]="PTDC"; char DCFpathname[0x20]; RTC_DATE curDate; RTC_TIME curTime; UINT32 uiAddr,uiNextDCFID; CHAR filePath[DCF_FULL_FILE_PATH_LEN]; curDate = rtc_getDate(); curTime = rtc_getTime(); sprintf(FolderName,"%1d%02d%02d",curDate.s.year%0x0A,curDate.s.month,curDate.s.day); sprintf(FileName,"%02d%02d",curTime.s.hour,curTime.s.minute); uiAddr = DCF_GetDBInfo(DCF_INFO_DIR_FREE_CHARS); memcpy((UB*)DCFpathname,(UB*)uiAddr,DCF_DIR_NAME_LEN); if (strncmp(DCFpathname, FolderName, 5)) { if (FlowDCF_GetNextDCFFolderID(&uiNextDCFID)==TRUE) { DCF_SetDirFreeChars(FolderName); DCF_MakeDirPath(uiNextDCFID,filePath); FileSys_MakeDir(filePath); DCF_SetNextID(uiNextDCFID,MIN_DCF_FILE_NUM); } else { debug_msg("DCF Folder full\r\n"); } } // update DCF file name in current RTC time DCF_SetFileFreeChars(DCF_FILE_TYPE_ANYFORMAT, FileName); }
void UI_SetFileDBFileID(void) { #if USE_FILEDB RTC_DATE Date; Date = rtc_getDate(); if ((Date.s.year==currentInfo.cbYear)&&(Date.s.month==currentInfo.cbMonth)&&(Date.s.day==currentInfo.cbDay)) { NH_FileDB_SetFileID(currentInfo.cbFileID); } #endif }
void FlowMovie_IconDrawDateTime(void) { RTC_DATE Date; RTC_TIME Time; // display Date/Time string in movie mode Date = rtc_getDate(); Time = rtc_getTime(); sprintf(date_str,"%04d/%02d/%02d",Date.s.year,Date.s.month,Date.s.day); sprintf(time_str,"%02d:%02d:%02d",Time.s.hour,Time.s.minute,Time.s.second); UxStatic_SetData(&UIFlowWndMovie_YMD_StaticCtrl,STATIC_VALUE,Txt_Pointer(date_str)); UxStatic_SetData(&UIFlowWndMovie_HMS_StaticCtrl,STATIC_VALUE,Txt_Pointer(time_str)); UxCtrl_SetShow(&UIFlowWndMovie_YMD_StaticCtrl,TRUE); UxCtrl_SetShow(&UIFlowWndMovie_HMS_StaticCtrl,TRUE); }
void USBMakerInit_GenRandomSerialStrDesc3(void) { RTC_DATE date; RTC_TIME time; char rtc_string[30]; int index; date = rtc_getDate(); time = rtc_getTime(); sprintf(rtc_string,"%04d%02d%02d%02d%02d%02d",date.s.year,date.s.month,date.s.day,time.s.hour,time.s.minute,time.s.second); for (index=0;index<15;index++) { myUSBSerialStrDesc3[index+1] = (UINT16)rtc_string[index]; } }
int main(void) { app_init(); rtc_setTime(0x23,0x59,0x55); rtc_setDate(0x01,0x30,0x04,0x14); rtc_getTime(&seconds, &minutes, &hours); rtc_getDate(&day, &date, &month, &year); seconds = BCD_to_int(seconds); minutes = BCD_to_int(minutes); hours = BCD_to_int(hours); day = BCD_to_int(day); date = BCD_to_int(date); month = BCD_to_int(month); year = BCD_to_int(year); sei(); while(1); }
//Step 5: Start to implement your custom function static void GetTime(void) { RTC_TIME rtcTime; RTC_DATE rtcDate; MSDCNVT_TIME *pData = (MSDCNVT_TIME*)MsdcNvt_GetDataBufferAddress(); UINT32 uiLength = MsdcNvt_GetTransSize(); if(uiLength!=sizeof(MSDCNVT_TIME)) //invalid data return; rtcTime = rtc_getTime(); rtcDate = rtc_getDate(); pData->uiFourCC = FOURCC_TIME; pData->uiYear = rtcDate.s.year; pData->uiMonth = rtcDate.s.month; pData->uiDay = rtcDate.s.day; pData->uiHour = rtcTime.s.hour; pData->uiMin = rtcTime.s.minute; pData->uiSec = rtcTime.s.second; }
static BOOL USERFolder_GetFreeFolderID(UINT16 *uhFolderID,UINT16 huFileID) { UINT16 lastFolderID,uhCurFolderID; char pcurPathName[6],pDateName[6]; RTC_DATE curDate; curDate = rtc_getDate(); sprintf(pDateName,"%1d%02d%02d",curDate.s.year%0x0A,curDate.s.month,curDate.s.day); uhCurFolderID = lastFolderID = *uhFolderID; // check free DCF folder ID, from 100/101/....to 999 maybe do { if (FilesysGetDCFFolderName(pcurPathName,uhCurFolderID) == FST_STA_OK) { UserFolder_Dgb(("%s, used uhFolderID=%d,%s\r\n",__func__,uhCurFolderID,pcurPathName)); if (!strncmp(pDateName,pcurPathName,5)) { // use current Folder ID as next write DCF folder ID if (huFileID < MAX_DCF_FILE_NUM) { *uhFolderID = uhCurFolderID; return TRUE; } } uhCurFolderID++; if (lastFolderID==uhCurFolderID) { debug_msg("No Free DCF ID\r\n"); return FALSE; } // searching avaiable DCF ID from MIN_DCF_DIR_NUM if (uhCurFolderID >= MAX_DCF_DIR_NUM) uhCurFolderID = MIN_DCF_DIR_NUM; } else { // Get free DCF Folder ID and return uhFolderID *uhFolderID = uhCurFolderID; return TRUE; } } while (1); }
static void UserFolder_SetFreeFolderName(UINT16 uhFreeFolderId,UINT16 uhFileId) { UINT16 uhCurFolderId,uhCurFileId; RTC_DATE curDate; char pPathName[6]; FilesysGetDCFNextID(&uhCurFolderId,&uhCurFileId); if (uhFreeFolderId != uhCurFolderId) { curDate = rtc_getDate(); sprintf(pPathName,"%1d%02d%02d",curDate.s.year%0x0A,curDate.s.month,curDate.s.day); FilesysWaitInitFinish(FST_TIME_INFINITE); FilesysWaitCmdFinish(FST_TIME_INFINITE); FilesysSetDCFPath((UB *)pPathName, TRUE); FilesysWaitCmdFinish(FST_TIME_INFINITE); FilesysSetWriteNextFileId(uhFreeFolderId,uhFileId,FALSE); } }
void rtc_getDateTime(DATE_TIME* datetime){ rtc_getDate(&(datetime->date)); rtc_getTime(&(datetime->time)); }