查看: 2261|回复: 3

[其他] 关于SCI模块中的接收寄存器满标志RDRF

[复制链接]

该用户从未签到

18

主题

52

帖子

0

注册会员

Rank: 2

积分
127
最后登录
2021-3-12
发表于 2013-10-26 16:08:42 | 显示全部楼层 |阅读模式
 我在手册上看到的是如果RDRF标志置位,那么需要通过读SCISR1寄存器,再读SCIDRL才能清除。
Receive Data Register Full Flag— RDRF is set when the data in the receive shift register transfers to the SCI
data register. Clear RDRF by reading SCI status register 1 (SCISR1) with RDRF set and then reading SCI data
register low (SCIDRL).
0 Data not available in SCI data register
1 Received data available in SCI data register
 
为什么我在中断程序中只有一句if(SCISR1_RDRF),然后再读SCISR1的RDRF位,发现已经清除了。是编译器自动优化?还是我对手册里理解有误?
 
我知道答案 目前已有2人回答
回复

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-10-28 11:24:00 | 显示全部楼层

RE:关于SCI模块中的接收寄存器满标志RDRF

请问你使用的是哪款芯片,还有你可以尝试不在Debug的模式下,打印RDRF位标志符号给上位机,方便查看!
回复 支持 反对

使用道具 举报

该用户从未签到

18

主题

52

帖子

0

注册会员

Rank: 2

积分
127
最后登录
2021-3-12
 楼主| 发表于 2013-10-28 13:47:22 | 显示全部楼层

回复:关于SCI模块中的接收寄存器满标志RDRF

回复第 2 楼 于2013-10-28 11:24:00发表:
请问你使用的是哪款芯片,还有你可以尝试不在Debug的模式下,打印RDRF位标志符号给上位机,方便查看!
 
 
我用的是mc9s12p128,我试试看你说的方法。
 
回复 支持 反对

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-10-29 10:16:22 | 显示全部楼层

RE:关于SCI模块中的接收寄存器满标志RDRF

期待你测试的结果!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-8-2 14:50 , Processed in 0.192107 second(s), 24 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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