Advertisement
Guest User

Kurła

a guest
Dec 13th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .INCLUDE "M32DEF.inc"
  2.  
  3.         ; stos
  4.         ldi R16, HIGH(RAMEND)
  5.         out SPH, R16
  6.         ldi R16, LOW(RAMEND)
  7.         out SPL, R16
  8.  
  9.         LDI R16, 255            ;   cały R16
  10.         OUT DDRA, R16           ;   ustawienie wszystkich linii portu A na wyjście
  11.         LDI R16, 0b00000001     ;   ustawienie wartości dla pierwszej diody w R16
  12.         LDI R17, 0b00000000     ;   ustawienie wartości zerowej do gaszenia diód w R17
  13.  
  14.  
  15.  
  16. loop:
  17.         OUT PORTA, R16          ;   zaświeć diodę
  18.  
  19.         RCALL delay             ;   opóznienie 500 ms
  20.  
  21.         OUT PORTA, R17          ;   wyłącz diodę
  22.  
  23.         ROL R16                 ;   ustaw kolejną diodę
  24.                                 ;   w R16 jest wartość następnej lini do zaświecenia diody
  25.  
  26.         RJMP loop               ;   powtórz etykietę loop    
  27.  
  28.  
  29. delay:
  30.  
  31.     LDI  R18, 41
  32.     LDI  R19, 150
  33.     LDI  R20, 128
  34.  
  35. delay_loop:
  36.  
  37.     DEC  R20
  38.     BRNE delay_loop             ; dopóki R20 nie jest wyzerowany, idź do początku delay_loop
  39.  
  40.     DEC  R19
  41.     BRNE delay_loop             ; dopóki R19 nie jest wyzerowany, idź do początku delay_loop
  42.    
  43.     DEC  R18
  44.     BRNE delay_loop             ; dopóki R18 nie jest wyzerowany, idź do początku delay_loop
  45.    
  46.     RET
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement