OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5322|回复: 4

RTC实验中RTC_GetFlagStatus 与RTC_GetITStatus 区别

[复制链接]

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2016-11-24
在线时间
32 小时
发表于 2017-11-27 15:14:52 | 显示全部楼层 |阅读模式
5金钱
在RTC实验中,2个中断处理函数读取状态都是用RTC_GetFlagStatus 读取的,为什么不用RTC_GetITStatus读取?这两个函数的区别在哪里?各自的使用场合是什么?

最佳答案

查看完整内容[请看2#楼]

看源码,寄存器描述,然后翻手册,问题答案就有了。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165516
金钱
165516
注册时间
2010-12-1
在线时间
2116 小时
发表于 2017-11-27 15:14:53 | 显示全部楼层
看源码,寄存器描述,然后翻手册,问题答案就有了。
回复

使用道具 举报

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2016-11-24
在线时间
32 小时
 楼主| 发表于 2017-11-28 09:44:16 | 显示全部楼层
本帖最后由 Gene 于 2017-11-28 09:47 编辑

RTC_GetITStatus
回复

使用道具 举报

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2016-11-24
在线时间
32 小时
 楼主| 发表于 2017-11-28 09:46:34 | 显示全部楼层
正点原子 发表于 2017-11-27 15:14
看源码,寄存器描述,然后翻手册,问题答案就有了。


RTC_GetITStatus 是读取中断状态寄存器的,表明是否发生中断;
RTC_GetFlagStatus 是读取ISR寄存器中的唤醒定时器或是闹钟的标志位,看那些标志位的定义,SET就是表明发生了中断;两个函数功能上本质是一样的。
所以两个函数应该都可以使用!
回复

使用道具 举报

15

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
91
金钱
91
注册时间
2016-11-24
在线时间
32 小时
 楼主| 发表于 2017-11-28 10:50:11 | 显示全部楼层
正点原子 发表于 2017-11-27 15:14
看源码,寄存器描述,然后翻手册,问题答案就有了。

RTC_GetITStatus实在中断使能有效情况下,读取中断状态;
而RTC_GetFlagStatus则不管中断是否使能,都直接读取唤醒计数器或是闹钟满足条件时的标志位;
应该是RTC_GetFlagStatus使用范围比RTC_GetITStatus广泛;
但是在中断使能有效情况下,在读取能产生中断的那几个标志位的情形下,两个函数是可以通用的!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-20 11:09

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表