MSP430F149 連續重制問題

[复制链接]
 楼主| 天天地天天 发表于 2016-11-7 14:16 | 显示全部楼层 |阅读模式
問題是這樣的 我再沒開啟看門狗的狀態下,MCU一直重制,請問各位大大這會是哪些問題呢?溢位嗎?P.S. 我把有問題的副程式在while loop 他會讓我的MCU重制,但我把它放到其他地方去執行它又不會讓我MCU重制,而且還準確執行我要執行的動作。
P.S. 副程式
void IIC_MultipleBytes_Read(unsigned char SlaveAddr, unsigned char StartReg, unsigned char Length, unsigned char *RD_Buffer)
{
         //unsigned char Status=0;
         
         __disable_interrupt();

         IIC_start();                                         //Start
         IIC_write1byte(SlaveAddr|0x00);           //Devicemode Write
         
         if(IIC_ReadACK())                                //ACK
        {               
                  SDA_H;
                  IIC_write1byte(StartReg);         //Write Command
         }                    
         else
                  goto _error;
         if(IIC_ReadACK())                              //ACK
                  IIC_start();                                //Restart
         else
           goto _error;         
         IIC_write1byte(SlaveAddr|0x01);     //Device mode is Read
         
         if(IIC_ReadACK())
         {  
                   while(Length)
                   {
                     *RD_Buffer++ = IIC_read1byte();      //DataByte1
                     Length--;

                     if(Length==0) IIC_NoACK();       
                      else IIC_mack();                     //ACK
                   }
         }                
_error:
         IIC_stop();                         //Stop
         
         __enable_interrupt();
         

}


dirtwillfly 发表于 2016-11-7 14:33 | 显示全部楼层
注意检查有没有意外的或者非法的地址访问,如果有这类地址的访问,会引起mcu重启
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

9

帖子

0

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

4

主题

9

帖子

0

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