msp430编程问题

下面这段咋错了,P1.0有个LED,P2设为中断模式,P2中断为上升沿,在P2.0口接上VCC,不就应该LED亮吗?测试时为啥就是不亮呢?#include<msp430x... 下面这段咋错了,P1.0有个LED,P2设为中断模式,P2中断为上升沿,在P2.0口接上VCC,不就应该LED亮吗?测试时为啥就是不亮呢?
#include <msp430x14x.h>
void main(void)
{
WDTCTL=WDTPW+WDTHOLD;
P1DIR|=BIT0;
P1OUT=0;
P2DIR=0;
P2IES=0;
P2IE=0;
P2IFG=0;

_EINT();
while(1);

}

#pragma vector=PORT1_VECTOR
__interrupt void SetV(void)
{
unsigned char key;
key=P2IFG;
if(key) P1OUT=1;
P2IFG=0;
return;
}
展开
 我来答
mc_wangbo
2011-05-26 · TA获得超过1368个赞
知道小有建树答主
回答量:825
采纳率:0%
帮助的人:256万
展开全部
中断向量错了
#pragma vector=PORT2_VECTOR
P2.0口仅接VCC,初始化时清了P2IFG,也没有上升沿信号啊,接个按键到地。
追问
上面程序我改过了,程序没问题了。我把P2.0口直接接VCC以获得上升沿,问题就出在这里。如果是导线另一端接上电源,再将另一端接触P2.0,就可以中断。如果导线接在P2.0,另一端什么都不接,他也会持续的中断。用手碰P2.0口,也会持续中断,也就是说只要有导体接触P2.0口就会持续产生了上升沿。很令人费解啊?
追答
I/O口设为输入状态,输入阻抗理论上是无穷大的,极易受到干扰,一个能量很小的瞬变干扰就能导至端口捕获到一个上升沿,导致中断标志位置位。所以要注意的是:内部不带或不设置为上、下拉的单片机输入端口像HC逻辑门输入端一样不要浮空。你所描述的试验(开关瞬间接通、静电、外部干扰传导或辐射)恰恰在P2.0上引起干扰导致进入中断。
意法半导体(中国)投资有限公司
2023-06-12 广告
stm32怎么样?这个问题不能一概而论,要根据您的具体情况进行分析。意法半导体单片机产品线拥有业界很宽广、极具创新力的32位产品系列 – STM32,覆盖超低功耗、超高性能方向,同时兼具很强的市场竞争力。STM32是ARM Cortex内核... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
匿名用户
2011-05-26
展开全部
void main(void)
{
WDTCTL=WDTPW+WDTHOLD;
P1DIR |= BIT0;
P1OUT &= ~BIT0;//P1输出低电平
P2DIR = 0;
P2SEL = 0;//p2初始化
P2IE=0;
P2IES=0;
P2IFG=0;
P2IE |=BIT0;
P2IE &=~BIT0;//对应的管脚由低到高跳变时使相应的标志置位
_EINT();
while(1);

}

#pragma vector=PORT2_VECTOR
__interrupt void SetV(void)
{
if((P2IN& BIT0)==1)
{
P2IFG |= BIT0;
P1OUT |= BIT0;
}
}
追问
上面程序我改过了,程序没问题了。我把P2.0口直接接VCC以获得上升沿,问题就出在这里。如果是导线另一端接上电源,再将另一端接触P2.0,就可以中断。如果导线接在P2.0,另一端什么都不接,他也会持续的中断。用手碰P2.0口,也会持续中断,也就是说只要有导体接触P2.0就会持续产生上升沿。很令人费解啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式