Advertisement
Guest User

SOKOŁA_ZADANIE_

a guest
Dec 9th, 2019
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.83 KB | None | 0 0
  1. #include<avr\io.h>
  2. #include<avr\interrupt.h>
  3. #define F_CPU 1000000L
  4.  
  5. volatile char kolumna=0;
  6.  
  7. ISR(TIMER1_COMPA_vect) //PROCEDURA OBSŁUGI timer1
  8. {  
  9.    
  10.     DDRA=(1<<kolumna); //jedna linia na wejście
  11.     PORTA=~(1<<kolumna);
  12.     kolumna++;
  13.     if(kolumna==4){kolumna=0;}
  14.    
  15.     PORTD=PINA;//wyświetlenie stanu PINA na POTRD
  16. }
  17.  
  18. int main(void)
  19. {      
  20.     DDRA=0xff; //KLAWIATURA na (wiersze|kolumny)
  21.                 //wszystkie linie na wyjście
  22.     PORTA=0xff; //podciągnięcie kolumn
  23.  
  24.     DDRD=0xff; //DIODY
  25.    
  26.     TCCR1B|=(1<<CS10) | (1<<CS12);//preskaler na tryb CTC
  27.     TCCR1B|=(1<<WGM12); //ustawienie trybu CTC
  28.     OCR1A=1050; // wartosc dla licznika okolo 1s      
  29.     TIMSK|=(1<<OCIE1A); //bit znacznika zezwolenia (porównanie)
  30.  
  31.  
  32.     sei();//zezwolenie na globalne przerwania
  33.  
  34. while(1){}
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement