Advertisement
gabrielaozegovic

GRDINIC

Dec 12th, 2017
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.16 KB | None | 0 0
  1.  
  2.  
  3. .def tmp = r16
  4. .def mask = r17
  5. .def tmp1 = r18
  6.  
  7. .cseg
  8. rjmp reset
  9.  
  10. .org $002
  11. rjmp i1
  12.  
  13.  
  14. .org $004
  15. rjmp i2
  16.  
  17. .org $00C
  18. rjmp akt
  19.  
  20. .org $010
  21. rjmp akt
  22.  
  23. reset:
  24.  
  25. ldi tmp, high(RAMEND)
  26. out SPH, tmp
  27. ldi tmp, low(RAMEND)
  28. out SPL, tmp
  29.  
  30. ldi tmp, 0xff
  31. out DDRA, tmp
  32. out PORTA, tmp
  33.  
  34. ldi tmp, (1<<WGM10)
  35. out TCCR1A, tmp
  36.  
  37. ldi tmp, (1<<WGM12) | (1<<CS10)
  38. out TCCR1B, tmp
  39.  
  40. ldi tmp1, 100
  41.  
  42.  
  43. out OCR1AL, tmp1
  44.  
  45. ldi tmp, (1<<OCIE1A) | (1<<TOIE1)
  46. out TIMSK, tmp
  47.  
  48. ldi tmp, (1<<ISC11) | (1<<ISC01)
  49. out MCUCR, tmp
  50.  
  51. ldi tmp, (1<<INT0) | (1<<INT1)
  52. out GICR, tmp
  53.  
  54. sei
  55. ldi tmp, 0xff
  56. ldi mask, 0x01
  57.  
  58.  
  59.  
  60.  
  61. main:
  62.  
  63. rjmp main
  64.  
  65.  
  66.  
  67.  
  68.  
  69. akt:
  70. sei
  71. eor tmp, mask
  72. out PORTA, tmp
  73. reti
  74.  
  75.  
  76.  
  77.  
  78.  
  79. i1:
  80.  
  81. cpi tmp1, 250
  82. breq skip
  83. inc tmp1
  84. out OCR1AL, tmp1
  85. skip:
  86. rcall debounce
  87. reti
  88.  
  89.  
  90.  
  91.  
  92.  
  93. i2:
  94. cpi tmp1, 1
  95. breq skip2
  96. dec tmp1
  97. out OCR1AL, tmp1
  98. skip2:
  99. rcall debounce
  100. reti
  101.  
  102.  
  103.  
  104.  
  105.  
  106. debounce:
  107. sei
  108. clr r19
  109. clr r20
  110. ldi r21, 4
  111.  
  112. delay_loop:
  113. dec r19
  114. brne delay_loop
  115. dec r20
  116. brne delay_loop
  117. dec r21
  118. brne delay_loop
  119. push tmp
  120.  
  121. ldi tmp, (1<<INTF0) | (1<<INTF1)
  122. out GIFR, tmp
  123.  
  124. pop tmp
  125. ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement