完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你可能觉得实用,也可能感觉比较肤浅,不过这都没关系,
因为这一篇会用以上一篇为基础,而我并不打算在这一篇,再 扯片内EEPROM的事。 要把片内RTC32包含的沟沟道道完全理顺并不简单,我也被官方库, 例程代码坑害过。 下面贴出官方玩具级代码,和我给出的产品级代码,需要提醒一下的是, 官方的这段样板程序是埋了地雷,有重大缺陷的,请君慎用。(单片机嵌入式技术群 162388414) 仔细对比一下应该能够看出两端代码的端倪…… 跑板请选A,项目植入建议选用B A、官方玩具级“样板程序”, --------------------------------------------------------------------------------------------------- // Workaround for known issue: Enable RTC32 sysclk sysclk_enable_module(SYSCLK_PORT_GEN, SYSCLK_RTC); while (RTC32.SYNCCTRL & RTC32_SYNCBUSY_bm) { // Wait for RTC32 sysclk to become stable } // If we have battery power and RTC is running, don't initialize RTC32 if (rtc_vbat_system_check(false) != VBAT_STATUS_OK) { rtc_init(); // Set current time to after production date rtc_timestamp = production_date_get_timestamp() + 1; rtc_set_time(rtc_timestamp); } --------------------------------------------------------------------------------------------------- B、产品级代码 --------------------------------------------------------------------------------------------------- uint8_t rtc32FirstBootFlag; uint32_t rtcCounter; sysclk_enable_module(SYSCLK_PORT_GEN, SYSCLK_RTC); while (RTC32.SYNCCTRL & RTC32_SYNCBUSY_bm) { } rtc32FirstBootFlag = nvm_eeprom_read_byte(0x0000); if(rtc32FirstBootFlag != 0x09) { nvm_eeprom_write_byte(0x0000,0x09); rtc_vbat_system_check(false); rtc_init(); rtc_set_time(0); } else { if(rtc_vbat_system_check(true) != VBAT_STATUS_OK) { rtc_init(); rtc_set_time(0); } } rtcCounter = rtc_get_time(); --------------------------------------------------------------------------------------------------- 简单测试一下,读到的RTC32计数器的值为0xC05,因为我断电了一段时间, 片内RTC已经跑了0xC05秒 [size=0.83em]1.png (60.14 KB, 下载次数: 0) 下载附件 [color=rgb(153, 153, 153) !important]2016-7-18 10:39 上传 总结一下 ,有了以上的代码,再加入一点万年历算法,我们可以完全脱离 时钟芯片做出自己想要的时钟来,而且时间跨度很大,可以跨0XFFFFFFFF秒, 更加随心所欲。 |
|
相关推荐
|
|
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
72 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
509 浏览 0 评论
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
546 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
545 浏览 0 评论
1008 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11763 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 12:17 , Processed in 0.509936 second(s), Total 64, Slave 46 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号