;-------------------------------; ; Měření krystalu ; ; slovak@post.cz )S(12.2007 ; ;-------------------------------; ;Na výstupu RB0 je frekvence krystalu/1000 ;RB0 = XTAL/1000 Hz (4x125x2=1000) ;RB1 = RB0/2 Hz ;RB2 = RB0/4 Hz ;RB3 = RB0/8 Hz ;RB4 = RB0/16 Hz ;RB5 = RB0/32 Hz ;RB6 = RB0/64 Hz ;RB7 = RB0/128 Hz LIST P=16F628A, R=DEC ;direktivy prekladace include ;definice nazvu registru __CONFIG _CP_OFF & _DATA_CP_OFF & _LVP_OFF & _BOREN_ON & _MCLRE_ON & _PWRTE_ON & _WDT_OFF & _HS_OSC ;================================ ; kod programu ;-------------------------------- ORG 0 GOTO Start ;skok na zacatek programu CALL 41 CALL 83 CALL 40 RETFIE ;-------------------------------- Start MOVLW 0x07 ;OFF MOVWF CMCON ; Comparators ;základní nastavení BSF STATUS,RP0 ;Banka1 MOVLW B'11111111' ; MOVWF TRISA ;PORTA vstupy CLRF TRISB ;PORTB výstupy MOVLW B'11001111' ; MOVWF OPTION_REG ; BCF STATUS,RP0 ;Banka0 CLRF INTCON ;zakázat přerušení ;*******************************; Main INCF PORTB,F ;RB0+1, (každých 125 cyklů) NOP NOP MOVLW 226 ADDLW 1 ;W+1 BTFSS STATUS,Z ;W=0? GOTO $-2 ;NE GOTO Main ;-------------------------------- END ; konec programu