MagnusArias

SW | Przyciski

Apr 27th, 2016
407
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.06 KB | None | 0 0
  1. #include "AT91SAM9263.h"
  2.  
  3. void dbgu_print_ascii(){}
  4.  
  5. int main(void){
  6.    
  7.     //AT91C_BASE_PIOB
  8.    
  9.     volatile int i = 0;
  10.     volatile int j = 0;
  11.     AT91C_BASE_PMC->PMC_PCER = (1 << AT91C_ID_PIOCDE ); // clock
  12.  
  13.    
  14.     AT91C_BASE_PIOB->PIO_OER = AT91C_PIO_PB8;
  15.     AT91C_BASE_PIOB->PIO_PER = AT91C_PIO_PB8;
  16.    
  17.     AT91C_BASE_PIOC->PIO_OER = AT91C_PIO_PC29;
  18.  
  19.     AT91C_BASE_PIOC->PIO_ODR = (AT91C_PIO_PC4 | AT91C_PIO_PC5);
  20.     AT91C_BASE_PIOC->PIO_PER = (AT91C_PIO_PC4 | AT91C_PIO_PC5 | AT91C_PIO_PC29);
  21.     AT91C_BASE_PIOC->PIO_PPUER = (AT91C_PIO_PC4 | AT91C_PIO_PC5);
  22.    
  23.     AT91C_BASE_PIOC->PIO_IFER = (AT91C_PIO_PC4 | AT91C_PIO_PC5);
  24.        
  25.    
  26.    
  27.     while(1){
  28.        
  29.         if (! ( (AT91C_BASE_PIOC->PIO_PDSR) & (AT91C_PIO_PC5)) ){
  30.             AT91C_BASE_PIOC->PIO_CODR = AT91C_PIO_PC29; }
  31.        
  32.         if (! ( (AT91C_BASE_PIOC->PIO_PDSR) & (AT91C_PIO_PC4)) ){
  33.             AT91C_BASE_PIOC->PIO_SODR = AT91C_PIO_PC29; }
  34.        
  35.         while (j <= 655000) {j++;}
  36.         AT91C_BASE_PIOB->PIO_SODR = AT91C_PIO_PB8; // gasi
  37.         while (i <= 655000){ i++;}
  38.         AT91C_BASE_PIOB->PIO_CODR = AT91C_PIO_PB8; // zapala
  39.         j = 0;
  40.         i = 0;
  41.        
  42.        
  43.     }
  44. }
Add Comment
Please, Sign In to add comment