Guest User

Untitled

a guest
Oct 15th, 2017
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. rjmp seadistamine
  2.  
  3. tabel:
  4.     .db     0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0
  5.     .equ    portd = 0x0B
  6.     .equ    portb = 0x05
  7. seadistamine:
  8. ;Seadistame port C, saadame nulli
  9.     ldi     r16, 0x30
  10.     out     0x07, r16
  11.     ldi     r16, 0x00
  12.     out     0x08, r16
  13.  
  14. ;Seadistame port D, saadame nulli
  15.     ldi     r16, 0xFF
  16.     out     0X0A, r16
  17.     ldi     r16, 0xFF
  18.     out     portd, r16
  19.  
  20. ;Seadistame port B
  21.     ldi     r16, 0xC7
  22.     out     0x04, r16
  23.     ldi     r16, 0xFF
  24.     out     portb, r16
  25.  
  26. ;Sättime kolm registrit tabelit hoidma
  27. ;Kümneliste tabel, x (r28 + r29)
  28.     ldi     r28, low(tabel<<1)
  29.     ldi     r29, high(tabel<<1)
  30. ;Üheliste tabel, y(r30+31)
  31.     ldi     r30, low(tabel<<1)
  32.     ldi     r31, high(tabel<<1)
  33.  
  34. reset:
  35. ;Lahutame tabelitest 11 kohta, ehk siis 0xC0 oleks praegune number - ehk siis umbes nagu uuesti tabeli algusesse
  36.     sbiw    x, 0xB
  37.     sbiw    y, 0xB
  38. algus:
  39. ;Alustame LED1 näitamist, y register ühtedele
  40.     lpm     r16, y
  41.     adiw    y, 1
  42.  
  43. ;Kas võrdub nulliga, kui võrdub, hüppa LED2'le
  44.     cpi     r16, 0
  45.     call    LED2Suurendamine
  46.  
  47. ;Numbri saatmine, alguses saadame port b'le info, et vilgutada esimest led'i, ja siis saata port d'le, kus on segmendid
  48.     ldi     r25, 0x02
  49.     out     portb, r25
  50.     out     portd, r16
  51.  
  52. ;Saadame lubava koodi, segmendile
  53.     ldi     r16, 0x00
  54.     out     portb, r16
  55.  
  56. ;Kutsu 0.3 sekundit viidet
  57.     call    kolmsadams
  58.    
  59. rjmp algus
  60.    
  61. LED2Suurendamine:
  62. ;Led2 numbri lisamine
  63.     lpm r17, x
  64.     adiw x, 1
  65.  
  66. ;Kui x registri, järgmine number on 0, siis vii tagasi resetti
  67.     cpi r17, 0
  68.     breq reset
  69.  
  70. ;
Add Comment
Please, Sign In to add comment