PCI9054 只有电平触发,怎么办?

[复制链接]
3547|8
 楼主| 情场探花 发表于 2012-3-14 12:04 | 显示全部楼层 |阅读模式
往计算机里插了一个PCI9054的卡,卡上有个按钮。每次按下,都会产生外部中断给计算机。
但是PCI9054只有电平触发。结果,如果我按住按钮不放,就会有好多中断。
请问如何改成边沿触发呢?

谢谢!
lyjian 发表于 2012-3-14 12:43 | 显示全部楼层
加个电阻和电容就可改成边沿触发
 楼主| 情场探花 发表于 2012-3-14 14:10 | 显示全部楼层
硬件上已经做死了,没法改。再说,我的目的是让9054自己按边沿方式触发中断,应该是通过寄存器来改。
xwj 发表于 2012-3-14 14:14 | 显示全部楼层
软件上判断按键释放后才 允许检测按下即可,之前没有释放即没有按下输出
 楼主| 情场探花 发表于 2012-3-16 19:28 | 显示全部楼层
按照洗碗机的说法,就得有一个忙检测,反复检测按键是否释放。这违反了中断的初衷啊。
GavinZ 发表于 2012-3-17 23:57 | 显示全部楼层
把你那个自锁的按钮换成非自锁的就行了,这太有技术含量了:dizzy:
 楼主| 情场探花 发表于 2012-3-19 09:23 | 显示全部楼层
把你那个自锁的按钮换成非自锁的就行了,这太有技术含量了:dizzy:
GavinZ 发表于 2012-3-17 23:57

你的想法不对。假设按钮是非自锁的,接通时间只有0.1s。但由于是电平触发,已经足以引发多次中断了!
GavinZ 发表于 2012-3-19 21:18 | 显示全部楼层
你的想法不对。假设按钮是非自锁的,接通时间只有0.1s。但由于是电平触发,已经足以引发多次中断了!
情场探花 发表于 2012-3-19 09:23

这是没办法的劣质办法,楼主说不动硬件。你有更好的办法么?
 楼主| 情场探花 发表于 2012-3-26 15:21 | 显示全部楼层
办法倒是有一个:进入中断服务程序后,把电平改掉,然后再开中。
硬件上的条件也是具备的:按钮是通过一个FPGA连到PCI9054的,FPGA和PCI9054之间的连线叫LINT。LINT为低电平时就有中断。所以计算机可以通过PCI9054和FPGA,改变LINT的电平。就是说FPGA中实现这样 的逻辑:若按钮产生一个下降沿,则LINT为低;若收到PCI9054的指令,则LINT为高。
但是这需要解决一个问题:计算机如何通过PCI9054往FPGA发指令。不知哪位有这方面的经验?谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

472

主题

1259

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部