完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
在MDK中利用google SVN下的源代码,编译BSP/STM3210中的工程,并且增加了TFT液晶屏驱动,目前想在TFT 液晶屏显示 RTC时钟。
使用RT-Thread中的RTC.c驱动。有些疑问如下: 1. RTC.C中使用了“ localtime(&now);”函数获取本地时间,这个本地时间在嵌入式系统中是从哪里获取的呢? 2. 代码中有“ti->tm_year = year - 1900; ”,目前我按照YYYY/M M/DD格式传递日期参数。传递过来2010年,相减以后成为“110”。是否正确?是否要改成“ti->tm_year = year - 2000; ”? void set_date(rt_uint32_t year, rt_uint32_t month, rt_uint32_t day) { time_t now; struct tm* ti; rt_device_t device; ti = RT_NULL; /* get current time */ time(&now); ti = localtime(&now); if (ti != RT_NULL) { ti->tm_year = year - 1900; ti->tm_mon = month - 1; /* ti->tm_mon = month; */ ti->tm_mday = day; } now = mktime(ti); device = rt_device_find("rtc"); if (device != RT_NULL) { rt_rtc_control(device, RT_DEVICE_CTRL_RTC_SET_TIME, &now); } } 3. 在程序任务中调用RTC.C中的函数time_t time(time_t* t),这个函数返回的值是一个unsigned int 类型,这类型是否包含了年月日,时分秒信息? 假如是,格式是怎么样的? 我在任务中调用Set_time() set_data()函数设定参数以后,再调用time()函数返回的值不是预期的值。 |
|
相关推荐
3个回答
|
|
|
|
|
|
|
|
|
RTC.C中使用了“ localtime(&now);”函数获取本地时间,这个本地时间在嵌入式系统中是从哪里获取的呢?
time_t now; /* get current time */ time(&now); 从硬件RTC中得到当前时间(UNIX时间戳). ti->tm_year = year - 1900; UNIX时间戳是从1900年开始计数的. 3. 在程序任务中调用RTC.C中的函数time_t time(time_t* t),这个函数返回的值是一个unsigned int 类型,这类型是否包含了年月日,时分秒信息? 假如是,格式是怎么样的? 请查阅 "UNIX时间戳" |
|
|
|
|
|
我在任务中调用Set_time() set_data()函数设定参数以后,再调用time()函数返回的值不是预期的值。
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1033 浏览 0 评论
2877 浏览 0 评论
图腾柱PFC无法上升至400V,且电感电流为正弦波形,但是幅值极小
9386 浏览 0 评论
飞凌嵌入式ElfBoard-Vim编辑器之静态链接和动态链接
2898 浏览 0 评论
使用 LinkBoy 将程序导出为 C 语言代码并烧录至 Arduino ESP32 开发板
2302 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 09:00 , Processed in 1.195748 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
606