仿真状态下程序可以运行,不仿真时不能运行

2019-07-14 21:34发布

本帖最后由 昊430 于 2017-10-21 17:32 编辑
  1. #include  <io430g2553.h>
  2. #include <in430.h>
  3. //#include  "BoardConfig.h"

  4. void main(void)
  5. {
  6.    unsigned int i;
  7.   //BoardConfig(0xb8);
  8.   BCSCTL1 |= DIVA_2;                        // ACLK/4
  9.   WDTCTL = WDT_ADLY_1000;                   // WDT 1s/4 interval timer
  10.   IE1 |= WDTIE;                             // Enable WDT interrupt
  11.   P1DIR |= BIT6;
  12.   P1OUT |= BIT6;
  13.   for (i = 180; i>0; i--);
  14.   P1OUT &= ~BIT6;  
  15.   
  16.   while(1)
  17.   {
  18.     unsigned int i;
  19.     _BIS_SR(LPM3_bits + GIE);               // Enter LPM3
  20.     P1OUT |= BIT6;                          // Set P3.5 LED on
  21.     for (i = 180; i>0; i--);               // Delay
  22.     P1OUT &= ~BIT6;                         // Clear P3.5 LED off
  23.   }
  24. }

  25. #pragma vector=WDT_VECTOR
  26. __interrupt void watchdog_timer (void)
  27. {
  28.     _BIC_SR_IRQ(LPM3_bits);                 // Clear LPM3 bits from 0(SR)
  29. }
复制代码
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
youtome
1楼-- · 2019-07-16 18:55
检查Flash是否完整?
xiaoyaozt
2楼-- · 2019-07-16 23:14
在没有电源的情况下,可能供电不足。
cemaj
3楼-- · 2019-07-17 03:43
可能直接运行的时候晶振不能正常工作。
linqing171
4楼-- · 2019-07-17 07:04
供电是仿真器供的。
pkuzhx
5楼-- · 2019-07-17 07:07
我觉得dirtwillfly说得对,你把delay设置的长一些再试试看。
for (i = 180; i>0; i--);只有这么点delay,肯定不够8s的

一周热门 更多>