Salve,
qualcuno sa magari interpretare il codice assembly che riporto di seguito?
Grazie in anticipo
;************************************************************
;SMART ALPHA SETTINGS PORT DEFENITIONS
;************************************************************
#DEFINE RFSCK PORTC,4 ;SCK on alpha module
#DEFINE RFSDO PORTC,1 ;SDI on alpha module
#DEFINE RFSEL PORTC,0 ;nSEL on alpha module
#DEFINE IRQIN PORTC,3 ;nIRQ on alpha module
#DEFINE RFFSK PORTC,5 ;FSK on alpha module
;************************************************************
SENDCMD
BCF RFSEL
MOVFW CMD1
CALL DOSENDCMD
SENDCMD8BIT
MOVFW CMD2
CALL DOSENDCMD
BSF RFSEL
RETURN
DOSENDCMD
MOVWF SBYTETEMP
MOVLW .8
MOVWF TEMP
SENDLOOPCMD
RLF SBYTETEMP
BTFSS STATUS,C
GOTO WRITE0
GOTO WRITE1
WRITE0
BCF RFSDO
BCF RFSCK
BSF RFSCK
GOTO SENDDONECMD
WRITE1
BSF RFSDO
BCF RFSCK
BSF RFSCK
GOTO SENDDONECMD
;******************************************************************************
SENDDONECMD
DECFSZ TEMP
GOTO SENDLOOPCMD
BCF RFSCK
RETURN
;******************************************************************************
SENDFSK
MOVWF SBYTETEMP
MOVLW .8
MOVWF TEMP
SENDLOOPFSK
CALL WAITIRQHIGH
CALL WAITIRQLOW
CLRC
RLF SBYTETEMP,F
BTFSS STATUS,C
GOTO WRITE0FSK
GOTO WRITE1FSK
WRITE0FSK
BCF RFFSK
GOTO SENDDONEFSK
WRITE1FSK
BSF RFFSK
GOTO SENDDONEFSK
RETURN
;******************************************************************************
SENDDONEFSK
DECFSZ TEMP
GOTO SENDLOOPFSK
RETURN
;******************************************************************************
WAITIRQLOW
BTFSC IRQIN
GOTO WAITIRQLOW
RETURN
;******************************************************************************
WAITIRQHIGH
BTFSS IRQIN
GOTO WAITIRQHIGH
RETURN