您的位置: OpenADSP社区论坛 -> Blackfin专区 -> 新手上路 -> 新手上路,关于BF533的外部中断问题
本帖共有441个阅读者
发表帖子 发表投票 回复主题
新手上路,关于BF533的外部中断问题
ChrisKyrie(论坛新手)
ChrisKyrie
头衔:社区公民
帮派:无帮无派
帖数:17
金钱:306
积分:32
注册时间:2017/9/9
楼主信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
新手上路,关于BF533的外部中断问题
最近在学习BF533,关于例程中的外部中断函数
EX_INTERRUPT_HANDLER(FlagA_ISR)
{
if((*pFIO_FLAG_D&PF0) == PF0)
{
  printf("interrupt is PF0!\n");
}
else if((*pFIO_FLAG_D&PF1) == PF1)
{
  printf("interrupt is PF1!\n");
}
*pFIO_FLAG_C = PF0|PF1;//清除中断标志位
}

最后一句*pFIO_FLAG_C = PF0|PF1;//清除中断标志位       是什么意思啊?怎么将PF0管角设为0就是清除中断标志位了?

这家伙很懒,什么也没有留下!
等级:论坛新手 参考IP地址:*.*.*.*
2017/9/11 15:21:19
尊贵身份标志
OpenADSP(管理员)
OpenADSP
头衔:社区公民
帮派:无帮无派
帖数:5195
金钱:34806
积分:6378
注册时间:2011/6/7
1信息 | 留言 | Email | 主页 | 编辑 | 管理 | 离线
当pf口作为中断使用时,一旦该接口触发中断,不管这个接口触发的电平是1或0,都能通过pf数据寄存器读取到1,这个值代表接口触发,并非外部电平值,读取后要清除这个值,才能把这个1清除,否则下次还能读到1,并不是外部电平改变就能改变这个接口状态。


我是OP...
等级:管理员 参考IP地址:*.*.*.*
2017/9/11 15:46:54
Powered by OpenADSP Copyright © 2010 www.Openadsp.com. All rights reserved.159392 Call, 1 Queries, Processed in 0.030273 second(s),