这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 中断死循环问题

共2条 1/1 1 跳转至

中断死循环问题

院士
2006-09-17 18:14:16     打赏
中断死循环问题



关键词: 中断     循环     问题    

院士
2006-12-22 22:43:00     打赏
2楼
问 我用16F917芯片,一开机后程序经常在中断里死循环跳不出来,请高手们帮我分析,谢谢

                  ORG     0004H     
       
                  MOVWF   W_TEMP             
                  SWAPF   W_TEMP,1
                  SWAPF   STATUS,W         
                  MOVWF   STATUS_TEMP      

                  BCF      STATUS,RP0

                  BTFSC    PIR1,TMR2IF      
                  GOTO     TCCINT2
                   
                  BTFSC    INTCON,T0IF        
                  GOTO     TCCINT1         

                  BTFSC    PIR1,ADIF       
                  GOTO     ADINT            
     
INTEND:                                               
                  SWAPF    STATUS_TEMP,0    
                  MOVWF    STATUS
                  SWAPF    W_TEMP,W
                  RETFIE 1: 这一段错误明显……                  BTFSC    PIR1,TMR2IF      
                  GOTO     TCCINT2
                   
                  BTFSC    INTCON,T0IF        
                  GOTO     TCCINT1         

                  BTFSC    PIR1,ADIF       
                  GOTO     ADINT   

判断中断一定还要判断中断容许位,例如T0IE……    2: 楼上回帖里有徐州方言容许~~~~~~~~~~~~~~~~~~~~~` 3: 俺老家泰州也这么说…… 4: haha~~~~~~~~~~~~~~~~ 5: 没有看到你清中断标志。中断标志没清,就会在中断中死循环。 6: 应该就是没有请中断标志 7: 再次讨论楼上朋友们,我判断有中断来就去执行中短程序,在中断程序里有对相应标志位清零,还有至于中断允许位,我在程序初始化里就设置好了,就不知问题出在那里,还请斑竹帮忙看看,谢谢 8: 建议~首先建议同时查询使能位和标志位,进入中断后打断点,单步运行,看看程序死在哪里.然后在拿出来说,中断保护做的还不够,仅仅保护W和STATUS,是远远不够地...找本书看看. 9: 中断死循环问题中断保护出现了问题:

    MOVWF   W_TEMP             
    MOVF    STATUS,W     
    MOVWF   STATUS_TEMP
    ...



    MOVF    STATUS_TEMP,0
    MOVWF    STATUS
    SWAPF    W_TEMP,F
    SWAPF    W_TEMP,W
    RETFIE

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]