PIC Micro计算机 - 使用定时器3作为asyn计数器 - 上拉

时间:2013-01-04 12:52:23

标签: pic18

我使用的是PIC18(L)F1XK22。我正在尝试将计时器3用作同步计数器。

PIC正在使用内部振荡器运行。

CONFIG  FOSC    = IRC       ; Internal oscillator

这应该关闭使用引脚RA5作为外部振荡器。

T1CON中的T1OSCEN为0,T3CON中的TMR3CS为1.我已将RA5 TRIS位置1并清零RA5 WPU位。

我的问题是引脚RA5(T13CLKI)看起来像有一个有效的上拉或被某物驱动。

我在RA5前面有以下电阻网络。

5 --- ------ 10K ----- X 24K -----> RA5

点X由霍尔效应传感器驱动。当X为0伏时,RA5为2.2伏。将24K电阻减小到10K可将X降至1.1伏。在计数器工作之前,我必须将电阻减小到大约4K。

以下是我用来设置计时器的代码......

#define TM3CK_TRIS    TRISA,TRISA5,A  
#define TM3CK_WPU     WPUA,WPUA5,A

        BCF         PIE2,TMR3IE,A       ; Disable Timer3 interrupt

        BSF         TM3CK_TRIS          ; set RA5 (T13CKI) as input

        BCF         TM3CK_WPU           ; disable weak pull up on RA5
                                        ;  pull up and isolation resistor are external

        CLRF        TMR3H,A             ; clear Timer 3
        CLRF        TMR3L,A

        MOVLW       0x8F                ; 1xxx xxxx RD16    16 bit read/write
                                        ; x0xx xxxx         unused bit
                                        ; xx00 xxxx T3CKPS  1:1 prescale
                                        ; xxxx 1xxx T3CCP1  something to do with comparators 
                                        ; xxxx x1xx T3SYNC  Do not sychronize with external clock
                                        ; xxxx xx1x TMR3CS  external clock from RA5 (T13CKI)
                                        ; xxxx xxx1 TMR3ON  enable timer
        MOVWF       T3CON,A

        BCF         TM3CK_WPU       
        BSF         INTCON2,RABPU,A     ; disable all pull ups

在计时器启动后,最后两行添加了徒劳的尝试关闭所有上拉。

非常感谢任何帮助或想法。

1 个答案:

答案 0 :(得分:0)

原来我的PIC芯片损坏了,换了一个备用,问题就消失了。