Sample Assembly Programming
; - Sample programs using assembly language in PIC -
; mcu = pic16f84A
; simulate using picsimulatoride
; Set up the pins of the microcontroller
BSF STATUS,5 ; BIT SET ON PIN 5 OF STATUS REGISTER
; FROM BANK0 TO BANK1 ON REGISTER FILE MAP
MOVLW 0X00 ; MOVE LITERAL VALUE 0000 0000
MOVWF TRISA ; SET ALL PORTA PINS AS OUTPUT
BCF STATUS,5 ; BIT CLEAR ON PIN 5 OF STATUS REGISTER
; FROM BANK1 TO BANK0 ON REGISTER FILE MAP
MOVLW 0X64 ; MOVE LITERAL VALUE DECIMAL 100 TO W REGISTER
MOVWF 0X21 ; STORE DECIMAL VALUE 100 TO 0X21
;main program , this is an ON/OFF light program
MAIN MOVLW 0XFF ; MOVE LITERAL VALUE 11111 TO W REGISTER
MOVWF PORTA ; SET HIGH OUTPUT ON PINS 0,1,2,3 AND 4
CALL DELAY ; SET SOME DELAY
MOVLW 0X00 ; MOVE LITERAL VALUE 00000 TO W REGISTER
MOVWF PORTA ; SET LOW OUTPUT ON PINS 0,1,2,3 AND 4
CALL DELAY ; SET DELAY
GOTO MAIN
DELAY DECFSZ 0X20,1 ; DECREMENT BY 1 THE VALUE IN 0X20
GOTO DELAY ; GO TO LABEL DELAY
DECFSZ 0X21,1 ; DECREMENT BY 1 THE VALUE IN 0X21
GOTO DELAY ; GO TO LABEL DELAY
MOVLW 0X64 ; MOVE LITERAL VALUE DECIMAL 100 TO W REGISTER
MOVWF 0X21 ; STORE DECIMAL VALUE 100 TO 0X21
RETURN ; RETURN
END ; END OF PROGRAM
Tags: sample assembly programming