msp430f149在执行程序某段函数时竟然自动复位?没有看门狗程序

2019-08-01 13:37发布

本帖最后由 _cir_ 于 2014-11-21 21:06 编辑

    我想请问各位工程狮,149在执行程序产生复位有哪些原因啊?我的程序是在执行某段继电器连接程序的if判断产生复位的(复位可能性很高)。 P6OUT  BIT3和BIT4控制继电器的。
另外,执行程序产生复位的原因有哪些啊?很可能是四楼大神所说的电压被瞬时拉低的情况,因为还出现了程序死机的情况!那请问大家有什么办法让电压稳定一点?


    if(PreTarget2 < ADCData2){
      while( (PreTarget2+PreTol2)< ADCData2){  //ADCData2是采样量,其他的都是全局变量
          Print(0x90,"变量数值减小中......");
            Adjdec++;
            Setdec_TimeInterval();
            P6OUT &= ~BIT3;
            P6OUT |= BIT5;
            delay_adjust(TimeInterval);
              P6OUT &= ~BIT3;
              P6OUT &= ~BIT5;
            
              write_LCD_command(0x9f);
                  delay_ms(5);
              write_LCD_data(dis1[Adjdec/10]);
                  delay_ms(5);
              write_LCD_data(dis1[Adjdec%10]);
              delay_ms(3000);
              
            Sample();//采样
            Show_result();
            
      }
    }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
DENG_LI_JUN
2019-08-02 06:42
继电器属于感性元件,在断开时由于电磁振荡,会产生快速瞬变脉冲群干扰,这种干扰的频谱很宽,而大电容是低频有效。建议加合适的TVS管,或者压敏电阻,必要时可以套上铁氧体磁环。这种情况一般处理要硬件为主,软件为辅。你试试看有没效果。

一周热门 更多>