程序运行不下去

[复制链接]
2581|11
 楼主| spark周 发表于 2011-8-4 11:18 | 显示全部楼层 |阅读模式
se, While, os, CD, DM
#include <msp430x24x.h>
void main()
{
  unsigned int oscdly;
  BCSCTL1 &= ~XT2OFF;
  do
   {
    P5DIR |= 0x10;                            // P5.4= output direction
    P5SEL |= 0x10;  
    IFG1 &=~OFIFG;
    oscdly=255;
    while(oscdly--);
   }
  while(IFG1 & OFIFG);
  BCSCTL2=SELM_2+SELS; //SMCLK and MCLK uses XT2
}

运行到while(IFG1 & OFIFG);的时候就下不去了
 楼主| spark周 发表于 2011-8-4 11:24 | 显示全部楼层
看了下值IFG1=0x06,OFIFG=2
jiaxw 发表于 2011-8-4 13:47 | 显示全部楼层
用的哪个?
 楼主| spark周 发表于 2011-8-4 14:03 | 显示全部楼层
MSP430F249
永远的不知 发表于 2011-8-4 15:01 | 显示全部楼层
2# spark周

值IFG1=0x06,OFIFG=2,IFG1 & OFIFG为真值,所以while(IFG1 & OFIFG);会继续循环。
shimx 发表于 2011-8-4 15:22 | 显示全部楼层
从LZ说的OFIFG=2来看是XT2没有起动成功
dengdc 发表于 2011-8-4 15:31 | 显示全部楼层
程序里没有看门狗的设置,关看门狗看下!
 楼主| spark周 发表于 2011-8-4 15:50 | 显示全部楼层
已经把看门狗关闭了,但是还是不行,不知道那里出错了
永远的不知 发表于 2011-8-4 15:57 | 显示全部楼层
8# spark周

检查一下外部晶振有没有问题,下面是我原来使用正常的外部晶振切换程序,您可以参考一下。
  1. bic.w #OSCOFF,SR;
  2. bis.b #XTS,BCSCTL1; //HF
  3. L1:
  4. bic.b #OFIFG,IFG1; //清晶振失效标志
  5. mov.w #06fffh,R15;
  6. L2:
  7. dec R15;
  8. jnz L2;
  9. bit.b #OFIFG,IFG1;
  10. jnz L1;
 楼主| spark周 发表于 2011-8-4 16:15 | 显示全部楼层
OK,搞定了
msp430ing 发表于 2011-8-4 22:06 | 显示全部楼层
10# spark周
到底是什么问题?
HORSE7812 发表于 2011-8-5 10:56 | 显示全部楼层
狗屁社会
您需要登录后才可以回帖 登录 | 注册

本版积分规则

821

主题

10121

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部