3424|5

4

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

MSP430G2553 Launchpad 调试的问题 谢谢啦 请大神指教啊…… [复制链接]

#include "msp430g2553.h"
#include "intrinsics.h"
#define uint unsigned int
uint temp1,temp2,D=0;
int main( void )
{
  WDTCTL = WDT_ADLY_1000;
  IE1 |=WDTIE;
  P2DIR = 0xff;   //设置方向为输出。控制LED
  P2OUT = 0x00;  //初始化
  P1SEL &= 0x20;  //使能A/D通道A5,其他的为I/O口
  ADC10CTL0 = ADC10SHT_1+ADC10ON+SREF_1+REF2_5V+REFON+MSC;
  //打开ADC10内核,确定采样周期为8*ADC100SC/2,选择内部参考电压为2.5 v和0 v
  ADC10CTL1 = INCH_5+ADC10DIV_1+CONSEQ_2;
  //input A5 模拟信号输入选择通道A5即P1.5,设置为单通道多次转换模式,分频因子:2
  ADC10AE0  |=BIT5;   //使P1.5允许AD模拟输入信号
  ADC10CTL0 |=ENC+ADC10SC;   //使能转换 + 开始转换
  _EINT();
  while(1)
  {
      LPM3; //进入低功耗模式3
      uint i=50;
      while(i--)
      {
        temp1=ADC10MEM;
        temp2=temp2+temp1;
        __delay_cycles(40);
      }
        D=temp2/50;  temp1=0;  temp2=0;
             if(D > 10   &D < 400)
                {  P2OUT = 0x01;   }     //打开第1号灯
             if(D >= 400 &D < 500)
                {  P2OUT = 0x03;   }     //打开第1.2号灯
             if(D >= 500 &D < 600)
                {  P2OUT = 0x07;   }     //打开第1.2.3号灯
             if(D >= 600 &D < 700)
                {  P2OUT = 0x0f;   }     //打开第1.2.3.4号灯
             if(D >= 700 &D < 800)
                {  P2OUT = 0x1f;   }     //打开第1.2.3.4.5号灯
             if(D >= 800 &D < 1025)
                {  P2OUT = 0x3f;   }     //打开第1.2.3.4.5.6号灯
              __delay_cycles(5000);
              P2OUT = 0x00;              //LED  复位
}
}
#pragma vector=WDT_VECTOR
__interrupt void watchdog_timer (void)
{
    LPM3_EXIT;  //跳出低功耗模式3
}
就是我用IAR调试这个程序,当我用计算机调试的时候,出现了我想要的结果。但是当我点击那个红色的叉叉“stop debugging” 的时候,(还是用usb供电),就不出现我要的结果了,灯就不亮了(其实是很久很久才亮一次)。而且对于这个程序,我设置的明明是1000MS的定时,为什么实际上它有4、5秒的延时啊? 请大神指教啊……谢谢了……

最新回复

看一下你的时钟配置,要配置时钟,才能精确延时的  详情 回复 发表于 2013-7-26 10:20

点评

貌似没看到你的定时1S的函数在哪!但是我看到__delay_cycles(5000)了!:)  详情 回复 发表于 2013-4-25 22:08
 
点赞 关注

回复
举报

13

帖子

0

TA的资源

一粒金砂(中级)

推荐
 
看一下你的时钟配置,要配置时钟,才能精确延时的
 
 

回复

2781

帖子

417

TA的资源

五彩晶圆(中级)

沙发
 
IAR没接触过
 
个人签名
 
 

回复

1149

帖子

3

TA的资源

五彩晶圆(初级)

板凳
 

回复 楼主 我去啊 的帖子

貌似没看到你的定时1S的函数在哪!但是我看到__delay_cycles(5000)了!

点评

WDTCTL = WDT_ADLY_1000;  详情 回复 发表于 2013-4-25 23:33
 
 
 

回复

4

帖子

0

TA的资源

一粒金砂(初级)

4
 

回复 板凳 zqjqq88 的帖子

WDTCTL = WDT_ADLY_1000;
 
 
 

回复

5015

帖子

13

TA的资源

裸片初长成(初级)

5
 
点完终止debug之后掉下电,代码已经烧进入了
 
个人签名《MCU工程师炼成记》作者之一
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表