L0rand

Untitled

Jan 19th, 2025
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MPASM 0.68 KB | None | 0 0
  1. #include p16f887.inc
  2.  
  3.  
  4. RegA equ 0x25   ; bank0
  5. RegB equ 0x26   ;
  6. aux equ 0x27
  7. RegC equ 0xB0   ; 0x30 bank 1
  8. RegD equ 0xB1   ; 0x31 bank 1
  9. M equ 0x125 ;0x25 bank 2
  10.  
  11. main:
  12.     BCF STATUS,RP1
  13.     BCF STATUS,RP0
  14.     MOVLW D'100'
  15.     MOVWF RegA 
  16.     MOVLW D'50'
  17.     MOVWF RegB
  18.    
  19.     BSF STATUS,RP0  ;{01} bank1
  20.     MOVLW D'200'
  21.     MOVWF RegC
  22.     MOVLW D'20'
  23.     MOVWF RegD
  24.     ADDWF RegC,0    ;d=0 w=D
  25.  
  26.     BSF STATUS,RP1 
  27.     BCF STATUS,RP0  ;{10} bank2
  28.     MOVWF M ; M=RegC+RegD
  29.     RRF M,1 ; M=M/2
  30.  
  31.  
  32.     BCF STATUS,RP0
  33.     BCF STATUS,RP1  ;{00} bank0
  34.     MOVF RegA,0 ;d=0 w=A
  35.     ADDWF RegB,0    ;d=0 w=w+RegB
  36.     MOVWF aux
  37.     RRF aux,0; d=0 w=(A+B)/2
  38.    
  39.     BSF STATUS,RP1  ;{10} bank2
  40.     ADDWF M,1   ;d=1 M=w+M
  41.     RRF M,1 ;d=1 M=M/2
  42.    
  43.     NOP
  44. end
  45.  
Advertisement
Add Comment
Please, Sign In to add comment