MSP430 双边沿触发中断函数怎么编

[复制链接]
6323|22
 楼主| vlinux 发表于 2014-5-22 10:33 | 显示全部楼层 |阅读模式
是这样,需要对一个管脚电平检测,管脚"H"->"L"时下降沿触发,然后执行一个函数;管脚"L"->"H"时上升沿触发,然后执行另外一个函数;
我想问:这两个边沿触发的中断,是指向一个中断向量吗?可以分别指向两个中断函数去执行吗?

有例程序更好,谢谢
dirtwillfly 发表于 2014-5-22 11:14 | 显示全部楼层
指向同一个中断,你可以在中断服务程序里进行判断是上升沿还是下降沿
 楼主| vlinux 发表于 2014-5-22 12:23 | 显示全部楼层
dirtwillfly 发表于 2014-5-22 11:14
指向同一个中断,你可以在中断服务程序里进行判断是上升沿还是下降沿

430里面寄存器P1IES只能设置上升沿或者下将沿触发吧,不能设置双边沿触发是吗?
能告诉我怎么设置双边沿触发吗?就是不管是上升沿还是下降沿都能触发中断。
dirtwillfly 发表于 2014-5-22 12:44 | 显示全部楼层
本帖最后由 dirtwillfly 于 2014-5-28 21:34 编辑
vlinux 发表于 2014-5-22 12:23
430里面寄存器P1IES只能设置上升沿或者下将沿触发吧,不能设置双边沿触发是吗?
能告诉我怎么设置双边沿 ...

下降沿触发后,在中断服务程序里更改为上升沿;反之,处理方式类同。
dfqcfvevwevw 发表于 2014-5-23 13:29 | 显示全部楼层
dirtwillfly 发表于 2014-5-22 12:44
下降沿触发后,在中断服务程序里更改为下降沿;反之,处理方式类同。

如此,有可能反应不过来吧.
shenmu2012 发表于 2014-5-23 22:22 | 显示全部楼层
在中断函数中设置其响应中断的边沿的
dirtwillfly 发表于 2014-5-26 21:17 | 显示全部楼层
楼主问题解决了吗?
angerbird 发表于 2014-5-26 23:37 | 显示全部楼层
看下学习的了啊,检测高低电平信号的就看设置的
李冬发 发表于 2014-5-28 00:38 | 显示全部楼层
用2个IO脚,比较简单。
还有1种就是进入中断后修改“沿”寄存器。
gxdu2002 发表于 2014-5-28 13:41 | 显示全部楼层
建议仔细看看MSP430的定时器A模块,,其由16位的定时器和多路比较/捕获通道组成!TACCTLx捕获/比较寄存器的第15、14两位CAPTMOD1、CAPTMOD0用于设置捕获模式,如上升沿、下降沿、上升沿和下降沿均捕获,第13、12两位CCIS1、CCIS0用于在捕获模式下设置捕获时间的输入信号源,第11位SCS用于确定捕获信号与定时器时钟是否同步,第8位CAP设置捕获模式还是比较模式……
按楼主的想法,可以将定时器模块设置为捕获模式、上升沿和下降沿均捕获,然后开中断,在中断程序中执行所需函数!
 楼主| vlinux 发表于 2014-6-8 14:05 | 显示全部楼层
dirtwillfly 发表于 2014-5-26 21:17
楼主问题解决了吗?

版主的做法我觉得是可行的,但是回帖里面也有提出可能会出现响应不过来的问题;
我认为假如中断函数稍微长点,无法及时响应的问题是非常严峻的,有可能会漏捕捉边沿触发的中断;
这也是目前我遇到的问题,因为引脚的电压是类似锯齿波,不断地"H"->"L"->"H"的触发,一旦有一个边沿触发漏检,后面即使电压降为0V或升为3V,也无法通过边沿触发读取有效电平;

目前项目遇到的问题也是卡在这里,因为Soft是日本方面的同事编的,代码不公开,因此探究起来问题很麻烦。
dirtwillfly 发表于 2014-6-8 22:25 | 显示全部楼层
这个问题没代码不容易解决
 楼主| vlinux 发表于 2014-12-5 10:56 | 显示全部楼层
我来结贴吧:
2个终端指向一个中断向量,但我们的程序员把监视用的看门狗弄晕了,程序跑飞了。
这还日本工程师呢,呵呵
ss么么 发表于 2016-11-5 13:59 | 显示全部楼层
vlinux 发表于 2014-12-5 10:56
我来结贴吧:
2个终端指向一个中断向量,但我们的程序员把监视用的看门狗弄晕了,程序跑飞了。
这还日本工 ...

?   有点可怕呢   我只知道  可以用捕获功能   
51xlf 发表于 2016-11-5 16:43 | 显示全部楼层
检测IO高低?
51xlf 发表于 2016-11-5 16:46 | 显示全部楼层
怎么使用上升沿触发然后切换下降沿触发。
youtome 发表于 2016-11-6 22:51 | 显示全部楼层
一般都是先设置上升沿触发,然后设置下降触发。
youtome 发表于 2016-11-6 22:54 | 显示全部楼层
边沿触发只能通过IO的状态进行判断了。
uptown 发表于 2016-11-7 22:10 | 显示全部楼层
是上下沿触发吗?
uptown 发表于 2016-11-7 22:12 | 显示全部楼层
边沿检测最好能够上下沿单边检测。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

99

帖子

2

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