您当前的位置:五五电子网电子知识单片机-工控设备PIC单片机PIC16F84单片机做的频率计 正文
PIC16F84单片机做的频率计

PIC16F84单片机做的频率计

点击数:7161 次   录入时间:03-04 11:43:15   整理:http://www.55dianzi.com   PIC单片机

get_iprate
        addwf    pcl, f
        retlw    1            ; 1:1.
        retlw    4            ; 1:4.
        retlw    8            ; 1:8.
        retlw    16            ; 1:16.

; ----- Get Internal prescaler rate for TMR0. ----------------------------

get_iprtm0
        addwf    pcl, f
        retlw    TMR0_1            ; 1:1.
        retlw    TMR0_4            ; 1:4.
        retlw    TMR0_8            ; 1:8.
        retlw    TMR0_16            ; 1:16.

; ----- Get message address of internal prescaler mode. ------------------

get_ipmptr
        addwf    pcl, f
        retlw    s_LFmode        ; "LF".
        retlw    s_MFmode        ; "MF".
        retlw    s_MHmode        ; "MH".
        retlw    s_HFmode        ; "HF".

; ----- Get decimal point location. --------------------------------------

get_dploc
        addwf    pcl, f
        retlw    3            ;   X.XXX kHz.
        retlw    5            ; X.XXXXX MHz.
        retlw    4            ;  X.XXXX MHz.
        retlw    3            ;   X.XXX MHz.

;-------------------------------------------------------------------------
; Interrupt procedure.
;-------------------------------------------------------------------------

;        No interrupt procedure.

;-------------------------------------------------------------------------
; Main procedure.
;-------------------------------------------------------------------------

main

;    *** Initialize registers ***

        clrf    pclath            ; Select program memory bank #0.

         MOV lw    00000000b        ; Disabled all interrupt
         MOV wf    intcon            ; sources.

        clrf    porta            ; Initialize I/O ports.
        clrf    portb            ;

        bsf    status, rp0        ; Select bank 1.

         MOV lw    00101000b        ; Pull-up PORTB, T0CS = EXT &
         MOV wf    option            ; set TMR0 rate. (1:1)

         MOV lw    00010000b        ; Set data directions.
         MOV wf    trisa            ;   1: as input.
         MOV lw    00111111b        ;
         MOV wf    trisb            ;

        bcf    status, rp0        ; Select bank 0. (Default)

         MOV lw    11110000b        ; Set all output ports to ’0’.
        andwf    porta, f        ;
         MOV lw    00111111b        ;
        andwf    portb, f        ;

;    *** Initialize variable ***

        clrf    CNT+0            ; Clear counter for
        clrf    CNT+1            ; dummy display.
        clrf    CNT+2            ;

;    *** Initialize LCD ***

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25]  下一页


本文关键字:单片机  PIC单片机单片机-工控设备 - PIC单片机