打印

关于STR912的外部中断引脚

[复制链接]
3047|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
centimetre|  楼主 | 2007-6-25 10:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
手册上有一点不敢确定,请教一下大家
有很多外部io可以配置成中断功能,但同一时刻好像只能有四个外部中断,对应WIU的中断?
这样做有啥意义那
沙发
centimetre|  楼主 | 2007-6-26 07:45 | 只看该作者

没有人注意到这个问题吗,

如果是这样,那外部中断也太少了点

使用特权

评论回复
板凳
centimetre|  楼主 | 2007-6-26 08:19 | 只看该作者

SCU_WKUPSEL

使用特权

评论回复
地板
stf| | 2007-6-26 10:03 | 只看该作者

str912的外部中断

centimetre你好

str9的外部中断都可以同时用。

4个外部中断可以直接连到不同的IRQ (VIC1.10,VIC1.11,VIC1.12, VIC1.13)

你的应用需要更多的外部中断你要用VIC1.9,每一个外部中断连接到这个IRQ。然后在你的中断函数里面读WIU的寄存器你可以处理。

Regards,
Stephane

使用特权

评论回复
5
stf| | 2007-6-26 10:41 | 只看该作者

WIU的框图

使用特权

评论回复
6
浪淘沙| | 2007-6-26 12:33 | 只看该作者

楼主的理解正确但不完全:可以有4个STR912的引脚产生独立的


STR912共有30个I/O引脚可以产生外部中断,它们全部通过逻辑或汇到VIC1.9进入CPU核心,当有多个引脚上有中断事件时,可以通过Pending(挂起)寄存器WIU_PR判断具体中断源并分别处理。

楼主描述的SCU_WKUPSEL寄存器可以用于把一组(8个中断源/组)中的任一个映射到某个内部中断向量上(VIC1.10-13),这样同时最多有4个外部中断引脚可以对应到独立的中断向量上,便于软件的快速处理。

估计楼主指的是后面这种情况;但通过VIC1.9,所有外部中断引脚都可以产生中断。

另外请注意,STR91x有新的版本推出,编号为STR91xFA(旧的是STR91xF),请下在新的手册:http://www.st.com/stonline/products/literature/um/13165.pdf

我曾经发过一个帖子介绍了STR91xFA和STR91xF的区别,请查看《STR91xFA是STR91xF的增强版本,请看她们的区别》。

使用特权

评论回复
7
centimetre|  楼主 | 2007-6-28 10:26 | 只看该作者

还有个疑问

如果"通过VIC1.9,所有外部中断引脚都可以产生中断"以后,那么还可以"寄存器可以用于把一组(8个中断源/组)中的任一个映射到某个内部中断向量上(VIC1.10-13),这样同时最多有4个外部中断引脚可以对应到独立的中断向量"
这样做吗?
也就是我既把vic 1.9打开了,也把某个管脚映射到VIC1.10-13上了,那是不是同时产生中断?能否让某些管脚从vic1.9产生中断,某些管脚从vic1.10-13产生中断?

使用特权

评论回复
8
香水城| | 2007-6-28 10:57 | 只看该作者

两种情况都可以,但要处理好

你可以把某个管脚同时映射到VIC1.10-13上和VIC1.9上,但要小心处理,因为这个管脚上的外部事件会产生两个中断。

当然,你最好是把一个管脚映射到VIC1.10-13上后,就不要再把它同时映射到VIC1.9上了。

从5楼给出的框图中,你应该可以看到你有很大的自由度,可以任意组合,但软件上要做好识别和处理。

使用特权

评论回复
9
centimetre|  楼主 | 2008-4-29 01:21 | 只看该作者

不可能的

当然,你最好是把一个管脚映射到VIC1.10-13上后,就不要再把它同时映射到VIC1.9上了。

一旦有一个管脚映射到VIC1.9上,其他管脚也就映射上去了,没法屏蔽的。

使用特权

评论回复
10
xinjie1023| | 2010-5-23 11:03 | 只看该作者
好贴,标记。

使用特权

评论回复
11
pkat| | 2010-5-23 19:35 | 只看该作者
应该不只4个,只是各个中断的优先级不同

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

35

主题

271

帖子

0

粉丝