打印

请教TMR1做定时睡眠唤醒的问题

[复制链接]
3784|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
QIANHUAJUN|  楼主 | 2009-11-30 13:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大侠,我用TMR1做1S定时唤醒的程序,没有仿真器。程序唤醒不了,进入休眠状态后好像也不省电,还有8.6MA的电流,外接32.768晶体和2个100P电容。用单片机12F675. 还有配置位设置应选内部RC/3脚作I/O呢还是内部RC/3脚作时钟输出
。请教大侠,先谢为盼!
NONLOCK1:
                   CLRWDT
                   BCF       5,0     ;挡住了                                    
                   SLEEP  
                   NOP
                   CLRWDT                                                                     
                   GOTO      LOOP


INT_TMR1:
                    CLRWDT
                    BCF       0CH,TMR1IF     
                    BSF       STATUS,RP0                                 
                    BCF       8BH,GIE
                    BCF       STATUS,RP0
                    BCF     T1CON,TMR1ON
                    BSF      STATUS,RP0
                   CLRF      ANSEL
                   BCF      STATUS,RP0
                   MOVLW     B'00000111'
                   MOVWF     CMCON
                    CLRF     TMR1L
                    MOVLW    80H
                    MOVWF    TMR1H
                    BSF       STATUS,RP0                                 
                    BSF       8BH,GIE
                    BCF       STATUS,RP0
                    BSF      T1CON,TMR1ON      
                    MOVLW      B'00000100'
                    MOVWF      ANSEL         
                    GOTO      IntRet
沙发
QIANHUAJUN|  楼主 | 2009-11-30 13:17 | 只看该作者
LOOP:
                   CLRWDT
                   BCF       STATUS,RP0                                           
LOOP1:            
                  ; CLRWDT                    
                   BCF       STATUS,RP0
                   MOVLW     B'00000111'
                   MOVWF     CMCON
                   BSF       STATUS,RP0                    
                   MOVLW     B'00111100'
                   MOVWF     85H;RA                 
                   MOVLW     B'10000000'
                   MOVWF     OPTION_REG                  
                   BSF       8BH,GIE
          BSF      INTCON,PEIE
                   BSF      PIE1,TMR1IE                  
                   CLRF    IOC                  
                   CLRF    WPU
                   BCF       3,RP0                  
                   BSF       0BH,T0IE
                   MOVLW     B'00001110'
                   MOVWF     T1CON
           BSF       T1CON,TMR1ON
                   NOP
                   NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                    NOP
                   CLRWDT                        
                   BSF        STATUS,RP0
                   MOVLW      B'00000100'
                   MOVWF      ANSEL
                   BCF        STATUS,RP0

使用特权

评论回复
板凳
QIANHUAJUN|  楼主 | 2009-11-30 13:21 | 只看该作者
用示波器观察,2、3脚都没波形,没振荡

使用特权

评论回复
地板
QIANHUAJUN|  楼主 | 2009-11-30 13:36 | 只看该作者
配置位:内部RC/3脚作时钟输出+看门狗打开能正常工作,但关断时电流仍为8.5MA,这样很耗电池的

使用特权

评论回复
5
QIANHUAJUN|  楼主 | 2009-12-1 11:45 | 只看该作者
没有人顶我啊。原因找到。因为电路单片机接的是8550基极,越休眠,它越工作,耗电电流越大。但接8050,灯会微亮,全部关不断,真矛盾。

使用特权

评论回复
6
QIANHUAJUN|  楼主 | 2009-12-7 09:05 | 只看该作者
问题已解决,不做定时中断唤醒,而用看门狗定时唤醒,电流在几个μA---20多μA波动,还可以了。

使用特权

评论回复
7
headwolf_83| | 2009-12-11 10:49 | 只看该作者
计数器模式可以唤醒,定时器不行.WDT可以唤醒,之前做了一个低功耗的项目,也是用WDT唤醒。够了。时间要求又不是很精确。

使用特权

评论回复
8
NE5532| | 2009-12-11 14:00 | 只看该作者
恭喜恭喜!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

53

帖子

1

粉丝