智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 2599|回复: 2
打印 上一主题 下一主题

请问一下关于S12中CCR寄存器的问题?

[复制链接]

12

主题

82

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1652
威望
434
贡献
1092
兑换币
103
注册时间
2012-9-20
在线时间
63 小时
跳转到指定楼层
1#
发表于 2012-10-25 22:18:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Xiha_Y 于 2012-10-25 22:24 编辑

下面是一段PIT中为了避免产生假中断给出的解决方案,里面用到了CCR寄存器,想请教一下CCR寄存器所在的模块和它的作用??????
PITCFLMT寄存器中的PITE位置1之前,需要先设置配置寄存器,即需要在PITE位置1之前,写操作配置寄存器。
  当PITCE寄存器中、PITINTE寄存器中和PITCFLMT寄存器中的位或PITE位任意一位清零时,相应的PIT中断标志位清零。如果PIT中断请求被挂起,那么可能会产生伪中断。下面推荐两种方法避免伪中断发生:
  ① 只在中断服务子程序(ISR)中清除PIT中断标志位。当进入中断服务子程序时,CCR寄存器中的I可屏蔽位自动置1。PIT位清零之前,I可屏蔽位不能被清零。

② 使用SEI指令置位I可屏蔽位之后,PIT中断标志位才可清零,然后使用CLI指令清零I可屏蔽位重新使能中断。

如果可以的话请一块解释一下第二种解决方案吧 谢谢!!!




12

主题

82

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1652
威望
434
贡献
1092
兑换币
103
注册时间
2012-9-20
在线时间
63 小时
2#
 楼主| 发表于 2012-12-14 08:49:22 | 只看该作者
回复 支持 反对

使用道具 举报

8

主题

324

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1209

活跃会员奖章优秀会员奖章

威望
528
贡献
373
兑换币
291
注册时间
2013-7-24
在线时间
154 小时
3#
发表于 2013-7-25 11:12:53 | 只看该作者
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-22 21:24 , Processed in 0.071525 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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