最近买到STC公司的IRC15W415AS单片机。调试时发现外部中断不好用请高手指点。用面包板搭的电路链接线用了电源、P1.0、P3.2调试程序是STC提供的如下:
#include "reg51.h"
#include "intrins.h"
//-----------------------------------------------
sbit P10 = P1^0;
//-----------------------------------------
//中断服务程序
void exint0() interrupt 0 //INT0中断入口
{
P10 =1; //将测试口取反
}
void main()
{
P10=1;
IT0 = 1; //设置INT0的中断类型 (1:仅下降沿 0:上升沿和下降沿)
EX0 = 1; //使能INT0中断
EA = 1;
while (1)
P10=0;
}
问题来了上电后我用按键接P3.2好地结果不进中断P1.0接的LED灯,当我用手接触P3.2或连线的外皮时中断好使了但和程序相反,即不按灯亮按了灯灭。测P1.0电压高时1.7V(LED有限流电阻1K)电源3.3V。我试过用电解电容接P3.2和GND不好使就用手碰P3.2好使,求高手指点! |