共2条
1/1 1 跳转至页
TNND 晕了。TNND大家看下不会是端口烧了吧
问
程序如下:
#include "MSP430x14x.h"
unsigned int timeover=0,speed=0,tt[20],tt1=0;
/***********************初始化****************************/
void init_timer_a(void)
{
int i;
WDTCTL = WDTPW + WDTHOLD; //off watchdog
/*设置主时钟为TX2-------------*/
do
{
IFG1 &=~OFIFG; //清OFIFG中断
for (i = 0xff; i>0; i--);
}
while ((IFG1 & OFIFG) != 0);
BCSCTL1 |= 0x37;
BCSCTL2 |= (SELM1 + SELS); // 0x80|0x08|0x02 mclk=8 MHz
//-----------p1 setup
P1SEL &= ~BIT5;
P1DIR &= ~BIT5;
P1IE |= BIT5;
P1IFG &= ~BIT5;
TACTL = TASSEL0+TACLR+ID1+ID0;
CCTL0 =CCIE;
CCR0 = 60000;
TACTL |= MC1;
_EINT();
}
void delay(unsigned int t) //1ms time delay
{
unsigned int j=0,i=0;
for(i=0;i<t;i++)
{
for(j=0;j<500;j++){}
}
}
//--------------------------------------------------------------
void main(void)
{
init_timer_a();
while (1)
{
}
}
//---------------timer-a-------inter
interrupt[TIMERA0_VECTOR] void TIMER_A (void)
{
CCR0 += 60000; // Add Offset to CCR0
timeover++;
}
//----------------P1.4-inter--------
interrupt[PORT1_VECTOR] void PORT1_4 (void)
{
P1IFG &= ~BIT5;
speed=TAR;
tt[tt1]=TAR;
tt1++;
TAR = 1;
}
--------------------------------------------------------------------------------------
现象:把P1端口的触发位选1.0,1.3,1.4,1.5,1.6,都可以正常触发,1.1,JTAG用了1.7没试。 -----------惟独1.2口没有反应。而且我试了让1.2输出方波也没反应。大家看看会不会是真的完蛋了啊。。。。。。。。。因为我的PCB设计的是用的1.2口。已经委托出去了。。。。。希望是1.2口坏了。这样PCB回来也不用改跳线了。。。。哎。。。。。。。。。。。。。。。 答 1: 你的程序好象没有设置P1.2?
#include "MSP430x14x.h"
unsigned int timeover=0,speed=0,tt[20],tt1=0;
/***********************初始化****************************/
void init_timer_a(void)
{
int i;
WDTCTL = WDTPW + WDTHOLD; //off watchdog
/*设置主时钟为TX2-------------*/
do
{
IFG1 &=~OFIFG; //清OFIFG中断
for (i = 0xff; i>0; i--);
}
while ((IFG1 & OFIFG) != 0);
BCSCTL1 |= 0x37;
BCSCTL2 |= (SELM1 + SELS); // 0x80|0x08|0x02 mclk=8 MHz
//-----------p1 setup
P1SEL &= ~BIT5;
P1DIR &= ~BIT5;
P1IE |= BIT5;
P1IFG &= ~BIT5;
TACTL = TASSEL0+TACLR+ID1+ID0;
CCTL0 =CCIE;
CCR0 = 60000;
TACTL |= MC1;
_EINT();
}
void delay(unsigned int t) //1ms time delay
{
unsigned int j=0,i=0;
for(i=0;i<t;i++)
{
for(j=0;j<500;j++){}
}
}
//--------------------------------------------------------------
void main(void)
{
init_timer_a();
while (1)
{
}
}
//---------------timer-a-------inter
interrupt[TIMERA0_VECTOR] void TIMER_A (void)
{
CCR0 += 60000; // Add Offset to CCR0
timeover++;
}
//----------------P1.4-inter--------
interrupt[PORT1_VECTOR] void PORT1_4 (void)
{
P1IFG &= ~BIT5;
speed=TAR;
tt[tt1]=TAR;
tt1++;
TAR = 1;
}
--------------------------------------------------------------------------------------
现象:把P1端口的触发位选1.0,1.3,1.4,1.5,1.6,都可以正常触发,1.1,JTAG用了1.7没试。 -----------惟独1.2口没有反应。而且我试了让1.2输出方波也没反应。大家看看会不会是真的完蛋了啊。。。。。。。。。因为我的PCB设计的是用的1.2口。已经委托出去了。。。。。希望是1.2口坏了。这样PCB回来也不用改跳线了。。。。哎。。。。。。。。。。。。。。。 答 1: 你的程序好象没有设置P1.2?
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |