www.pudn.com > RTC.rar > settime.c
/* Settime.c version 1.3.22 */ /* written by kena,HHTECH */ #include#include #include #include #include #include #include int main(int argc,char** argv) { int fd,length; char inputchar; struct rtc_time spaceofmytime,spaceofrtctime; struct rtc_time *mytime=&spaceofmytime; struct rtc_time *rtctime=&spaceofrtctime; /* this file is used like this:settime Year Month Day Hour Day Min Sec */ /* etc settime 2008 5 2 18 34 56 --Set RTC-time to 2008,5,2,18:34:56 */ printf("Hi...Welcome to Test-RTC programing!\n"); printf("Version 1.3.22 written by kenan\n"); fd=open("/dev/misc/rtc",O_RDWR); length=sizeof(*rtctime); if (argc!=7) { printf("Parameter number wrong\n"); exit(1); } mytime->tm_sec = atoi(argv[6]) ; mytime->tm_min = atoi(argv[5]) ; mytime->tm_hour = atoi(argv[4]) ; mytime->tm_mday = atoi(argv[3]) ; mytime->tm_mon = atoi(argv[2]); mytime->tm_year = atoi(argv[1]); if (mytime->tm_year <= 0) { printf("Year input wrong\n"); exit(1); }; if ( (mytime->tm_mon<= 0) || (mytime->tm_mon >=13) ) { printf("Month input wrong\n"); exit(1); }; if ( (mytime->tm_mday<= 0) || (mytime->tm_mday >=32) ) { printf("Day input wrong\n"); exit(1); }; if ( (mytime->tm_hour< 0) || (mytime->tm_hour >=24) ) { printf("Hour input wrong\n"); exit(1); }; if ( (mytime->tm_min<0) || (mytime->tm_min >=60) ) { printf("Minute input wrong\n"); exit(1); }; if ( (mytime->tm_sec<0) || (mytime->tm_sec >=60) ) { printf("Second input wrong\n"); exit(1); }; printf("SET TIME=%04d,%02d,%02d,%02d:%02d:%02d\n",mytime->tm_year,mytime->tm_mon,mytime->tm_mday,mytime->tm_hour,mytime->tm_min,mytime->tm_sec); ioctl(fd,RTC_SET_TIME,mytime); close(fd); return 0; }