你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm8l151RTC

[复制链接]
fengzhiqiang 提问时间:2016-11-26 15:12 /
哪位大侠知道rtc时间更新中断怎么用库函数配置???急救....
收藏 1 评论10 发布时间:2016-11-26 15:12

举报

10个回答
中山无雪 回答时间:2016-12-5 09:53:45
在STMCubeMX里面有直接配置呀

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

chaplin1999-262 回答时间:2016-12-5 08:41:21
帮顶了,只用过003 没RTC功能
wudianjun2001 回答时间:2016-12-5 08:43:08
我用过库,我用的寄存器
void RTC_Init (void)
{
        CLK_CRTCR = 0x10;                                                                        //选择外部32K,不分频。打开RTC时钟的话,自动会选择LSE

        RTC_WPR = 0xCA;                                                                         //写保护
        RTC_WPR = 0x53;
        RTC_ISR1_INIT = 1;                                                                        //进入初始化模式
        while (RTC_ISR1_INITF == 0);                                                //等待为1
        RTC_CR1 = 0x20;                                                     //24小时格式,系统时钟=RTC时钟
        RTC_CR2 = 0x00;

        Display_Time.Second = 30;
        RTC_TR1 = HEX2BCD (Display_Time.Second) & 0x7F;                //秒
        RTC_TR2 = HEX2BCD (Display_Time.Minute) & 0x7F;                //分
        RTC_TR3 = HEX2BCD (Display_Time.Hour) & 0x3F;                //时
        RTC_DR1 = HEX2BCD (Display_Time.Day) & 0x3F;                //天
        RTC_DR2 = HEX2BCD (Display_Time.Month) | (Display_Time.Week << 5);//周和月
        RTC_DR3 = HEX2BCD (Display_Time.Year % 100);                //年

        RTC_ISR1_INIT = 0;                                                                        //退出初始化模式
}

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

wudianjun2001 回答时间:2016-12-5 08:43:48
哦,我也没用中断
liu553824989 回答时间:2016-12-5 08:46:26
  1. CLK_LSICmd(ENABLE);
  2. while (CLK_GetFlagStatus(CLK_FLAG_LSIRDY) == RESET);

  3. CLK_PeripheralClockConfig(CLK_Peripheral_RTC, ENABLE);//允许RTC时钟
  4. CLK_RTCClockConfig(CLK_RTCCLKSource_LSI, CLK_RTCCLKDiv_2);//选择RTC时钟源LSI、2=19K
  5. RTC_WakeUpCmd(DISABLE);//the wake up Unit must be disabled (if enabled) using RTC_WakeUpCmd(Disable).
  6. RTC_WakeUpClockConfig(RTC_WakeUpClock_RTCCLK_Div16);//19k/16=1.1875KHz t=0.85ms
  7. //RTC_ITConfig(RTC_IT_WUT, ENABLE);//开启中断
  8. RTC_SetWakeUpCounter(3529);//设置RTC Weakup计算器初值3529*0.85=3000MS
  9. ITC_SetSoftwarePriority(RTC_IRQn, ITC_PriorityLevel_3);//优先级
  10.   RTC_ITConfig(RTC_IT_WUT, ENABLE);
  11.   RTC_WakeUpCmd(ENABLE);
复制代码


自己好好看看,然后再看看手册
斜阳__ 回答时间:2016-12-5 10:12:46
围观一下
无薪税绵 回答时间:2016-12-5 12:25:39
6楼的建议不错。
z258121131 回答时间:2016-12-5 13:36:06
ding              
peter001 回答时间:2016-12-5 21:45:20
围观一下
12下一页

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版