|
|
发表于 2005-9-13 09:25:42
|
显示全部楼层
需要操作RTC设备的吧。
- #include <stdio.h>
- #include <linux/rtc.h>
- #include <sys/ioctl.h>
- #include <sys/time.h>
- #include <sys/types.h>
- #include <fcntl.h>
- #include <unistd.h>
- #include <errno.h>
- int main(void)
- {
- int i, fd, retval, irqcount = 0;
- unsigned long tmp, data;
- struct rtc_time rtc_tm;
- fd = open ("/dev/rtc", O_RDONLY);
- if (fd == -1) {
- perror("/dev/rtc");
- exit(errno);
- }
- fprintf(stderr, "\n\t\t\tRTC Driver Test Example.\n\n");
- /* Read the RTC time/date */
- retval = ioctl(fd, RTC_RD_TIME, &rtc_tm);
- if (retval == -1) {
- perror("ioctl");
- exit(errno);
- }
- fprintf(stderr, "\n\nCurrent RTC date/time is %d-%d-%d, %02d:%02d:% 02d.\n", rtc_tm.tm_mday, rtc_tm.tm_mon + 1, rtc_tm.tm_year + 1900,
- rtc_tm.tm_hour, rtc_tm.tm_min, rtc_tm.tm_sec);
- close(fd);
- return 0;
- }
复制代码
内核的时间不一定总是与RTC时间同步,所以使用RTC还是有风险的,注意 |
|