你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
stm8l151RTC
[复制链接]
fengzhiqiang
提问时间:2016-11-26 15:12 /
问答
是否解决:
哪位大侠知道rtc时间更新中断怎么用库函数配置???急救....
赞
0
收藏
1
评论
10
分享
发布时间:2016-11-26 15:12
举报
请先
登录
后回复
10个回答
中山无雪
回答时间:2016-12-5 09:53:45
a0a.1 0b0c
在STMCubeMX里面有直接配置呀
评分
参与人数
1
ST金币
+2
收起
理由
zero99
+ 2
查看全部评分
赞
1
评论
回复
支持
1
反对
0
chaplin1999-262
回答时间:2016-12-5 08:41:21
a0a.1 0b0c
帮顶了,只用过003 没RTC功能
赞
0
评论
回复
支持
反对
wudianjun2001
回答时间:2016-12-5 08:43:08
a0a.1 0b0c
我用过库,我用的寄存器
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; //退出初始化模式
}
评分
参与人数
1
ST金币
+2
收起
理由
zero99
+ 2
查看全部评分
赞
0
评论
回复
支持
反对
wudianjun2001
回答时间:2016-12-5 08:43:48
a0a.1 0b0c
哦,我也没用中断
赞
0
评论
回复
支持
反对
仙景
回答时间:2016-12-5 08:46:26
a0a.1 0b0c
CLK_LSICmd(ENABLE);
while (CLK_GetFlagStatus(CLK_FLAG_LSIRDY) == RESET);
CLK_PeripheralClockConfig(CLK_Peripheral_RTC, ENABLE);//允许RTC时钟
CLK_RTCClockConfig(CLK_RTCCLKSource_LSI, CLK_RTCCLKDiv_2);//选择RTC时钟源LSI、2=19K
RTC_WakeUpCmd(DISABLE);//the wake up Unit must be disabled (if enabled) using RTC_WakeUpCmd(Disable).
RTC_WakeUpClockConfig(RTC_WakeUpClock_RTCCLK_Div16);//19k/16=1.1875KHz t=0.85ms
//RTC_ITConfig(RTC_IT_WUT, ENABLE);//开启中断
RTC_SetWakeUpCounter(3529);//设置RTC Weakup计算器初值3529*0.85=3000MS
ITC_SetSoftwarePriority(RTC_IRQn, ITC_PriorityLevel_3);//优先级
RTC_ITConfig(RTC_IT_WUT, ENABLE);
RTC_WakeUpCmd(ENABLE);
复制代码
自己好好看看,然后再看看手册
赞
0
评论
回复
支持
反对
斜阳
回答时间:2016-12-5 10:12:46
a1024a.1 0b0c
围观一下
赞
0
评论
回复
支持
反对
无薪税绵
回答时间:2016-12-5 12:25:39
a0a.1 0b0c
6楼的建议不错。
赞
0
评论
回复
支持
反对
z258121131
回答时间:2016-12-5 13:36:06
a0a.1 0b0c
ding
赞
0
评论
回复
支持
反对
peter001
回答时间:2016-12-5 21:45:20
a1024a.1 0b0c
围观一下
赞
0
评论
回复
支持
反对
原田夜舞love
回答时间:2016-12-5 23:43:45
a1024a.1 0b0c
帮顶了
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
评分
查看全部评分
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; //退出初始化模式
}
评分
查看全部评分
自己好好看看,然后再看看手册