Advertisement
Guest User

Untitled

a guest
May 15th, 2017
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
ARM 2.06 KB | None | 0 0
  1. .global main    /*instrukcje .arm lub .thumb*/
  2. .arm
  3.  
  4. .equ PIOB_PER, 0xFFFFF400
  5. .equ PIOB_OER, 0xFFFFF410
  6. .equ PIOB_SODR, 0xFFFFF430
  7. .equ PIOB_CODR, 0xFFFFF434
  8. .equ PIOC_PER, 0xFFFFF600
  9. .equ PIOC_OER, 0xFFFFF610
  10. .equ PIOC_SODR, 0xFFFFF630
  11. .equ PIOC_CODR, 0xFFFFF634
  12. .equ PIOC_PUER, 0xFFFFF664
  13. .equ PIOC_PDSR, 0xFFFFF63C
  14. .equ PIOC_IFER, 0xFFFFF620
  15. .equ PIOC_ODR, 0xFFFFF614
  16. .equ PMC_PCER, 0xFFFFFC10
  17.  
  18. .equ LED1, 0x100
  19. .equ LED2, 0x20000000
  20. .equ BUTTON1, 0x20
  21. .equ BUTTON2, 0x10
  22.  
  23. .section .text /*sekcja kodu programu*/
  24. main: /*etykieta funkcji*/
  25.  
  26.   LDR r1, =LED1     /*R1 to LED1*/
  27.   LDR r2, =LED2     /*R2 to LED2*/
  28.   LDR r3, =BUTTON1     /*R3 to BUT1*/
  29.   LDR r4, =BUTTON2     /*R4 to BUT2*/
  30.  
  31.   LDR r0, =PIOB_PER
  32.   STR r1, [r0]
  33.  
  34.   LDR r0, =PIOB_OER
  35.   STR r1, [r0]
  36.  
  37.   LDR r0, =PIOB_SODR
  38.   STR r1, [r0]
  39.  
  40.   ORR r0, r3, r4    /* BUTTON1 | BUTTON2*/
  41.   LDR r5, =PIOC_ODR
  42.   STR r0, [r5]
  43.  
  44.   LDR r5, =PIOC_OER
  45.   STR r2, [r5]
  46.  
  47.   LDR r5, =PMC_PCER
  48.   STR r0, [r5]
  49.  
  50.   LDR r5, =PIOC_PUER
  51.   STR r0, [r5]
  52.  
  53.   LDR r5, =PIOC_IFER
  54.   STR r0, [r5]
  55.  
  56.   ORR r0, r0, r2    /*LED2 | BUTTON1 | BUTTON2*/
  57.   LDR r5, =PIOC_PER
  58.   STR r0, [r5]
  59.  
  60.   ldr r7, =PIOB_SODR
  61.   ldr r8, =PIOB_CODR
  62.   ldr r11, =PIOC_SODR
  63.   ldr r12, =PIOC_CODR
  64.   ldr r5, =BUTTON1
  65.   ldr r4, =BUTTON2
  66.   ldr r2, =LED1
  67.   ldr r3, =LED2
  68.   ldr r1, =PIOC_PDSR
  69.  
  70.   mov r0, #0x0
  71. while:
  72.  
  73.   str r2, [r7] /* zapalenie 1 diody */
  74.  
  75.   ldr r9, =0x57E40
  76. loop1:
  77.   ldr r10, [r1]
  78.  
  79.   ands r6, r10, #BUTTON1
  80.   cmp r6, #0
  81.   streq r3, [r11]
  82.  
  83.   ands r6, r10, #BUTTON2
  84.   cmp r6, #0
  85.   streq r3, [r12]
  86.  
  87.  
  88.  
  89.  
  90.   subs r9, r9, #0x1
  91.   bne loop1
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.   /*##################*/
  100.   str r2, [r8] /* gaszenie 1 diody */
  101.   /*##################*/
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.   ldr r9, =0x57E40
  111. loop2:
  112.   ldr r10, [r1]
  113.  
  114.   ands r6, r10, #BUTTON1
  115.   cmp r6, #0
  116.   streq r3, [r11]
  117.  
  118.   ands r6, r10, #BUTTON2
  119.   cmp r6, #0
  120.   streq r3, [r12]
  121.  
  122.  
  123.  
  124.   subs r9, r9, #0x1
  125.   bne loop2
  126.  
  127.   /*##################*/
  128.   ldr r9, =0x57E40
  129.   /*##################*/
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.   movs r0, #0x0
  142.   beq while  
  143.  
  144. .end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement