不能确定问题所在了,迷糊了

xinling1027   2005-7-8 11:59 楼主
以下是测aclk的程序:
#include <msp430x16x.h>

void main(void)
{
int i;
WDTCTL = WDTPW +WDTHOLD; // Stop Watchdog Timer
DCOCTL = DCO0 + DCO1 + DCO2; // Max DCO=3.2M
BCSCTL1=0x00;
//BCSCTL1 = RSEL0 + RSEL1 + RSEL2; // XT2on, max RSEL

do
{IFG1 &= ~OFIFG; //清OSCFault标志
for(i=0XFF;i>0;i--); //延时等待
}
while((IFG1 & OFIFG) != 0); //查OSCFault,为0时转换完成

//BCSCTL2 |= SELS; // SMCLK = XT2,8M




P5DIR |= 0x70; // P5.6,5,4 outputs
P5SEL |= 0x70; // P5.6,5,5 options,define as peripheral

while(1)
{
}
}

我查看ofifg,也为0了,但是打p56就是没有输出
不过这个程序有时在do那里可以过有时又过不了,系统用dco的时候没有问题的,是哪里问题呢?

片子?32k晶振?还是???

回复评论 (3)

自己先up一下提下人气
都整了几天了
点赞  2005-7-8 12:01
完了
现在do那个地方又过不去了,可是我什么都没碰啊
哪位帮忙分析下可能的原因啊??
点赞  2005-7-8 12:23
将P5DIR |= 0x70; // P5.6,5,4 outputs
P5SEL |= 0x70; // P5.6,5,5 options,define as peripheral
放置在设置WDT的后面试试。
点赞  2005-7-8 13:19
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复