完善资料让更多小伙伴认识你,还能领取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秒, 更加随心所欲。 |
|
相关推荐
|
|
《DNESP32S3使用指南-IDF版_V1.6》第三十五章 摄像头实验
816 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第三十章 DHT11数字温湿度传感器
789 浏览 0 评论
880 浏览 0 评论
【敏矽微ME32G070开发板免费体验】之原厂2812测试例程解析
1615 浏览 0 评论
1272 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12063 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-30 02:55 , Processed in 0.513408 second(s), Total 63, Slave 46 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号