Advertisement
Guest User

Untitled

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