|
小弟最近在玩smp430,看datasheet知道它的IO口中断只能是上升沿中断或者下降沿中断(不像51单片机还有电平中断)~~~
问题描述:小弟想使用一个IO口中断,触发源是一个比较器LM393,V+>V-,LM393输出高电平
如下是我的程序
void System_Interrupt_Init(void)
{
P1DIR &= ~BIT0; //input mode
P1IES |= BIT0; //interrupt edge select =0是上升沿中断 =1是下降沿中断
P1IE |= BIT0; //enable P1.0 interrupt
P1IFG &= ~BIT0; //clear interrupt flag
_EINT();
}
#pragma vector=PORT1_VECTOR
__interrupt void Port_1(void)
{
counter_val++;
if(counter_val>=255)
{
counter_val=0;
}
}
问题1:可是似乎不是很灵敏,小弟不知道是什么原因,恳请大神指教
问题描述:如上这张图:因为IO口使用的是IN Mode,所以IO口默认是高阻抗状态,当然也就不确定电平的状态
问题2:在IN Mode下,如果我能将该引脚的默认电平上拉到高电平,那么一旦比较器输出低电平,IO接口就会有下降沿,请大神指点~~~
|
|