Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <avr/io.h>
- #include <avr/interrupt.h>
- #include <util/delay.h>
- volatile unsigned int namerane;
- // akcia Input Capture
- ISR (TIMER1_CAPT_vect){
- namerane = TCNT1;
- TCNT1 = 0;
- }
- int main(){
- unsigned char blik;
- DDRD |= (1 << PD7); // PD7 ako výstupný
- DDRB &= ~(1 << PB0); // PB0 (ICP1) ako vstupny
- PORTB |= (1 << PB0); //PB0 (ICP1) do log.1
- TCCR1B |= (1 << CS12) | (1 << CS10); //preddelička 1024 (128us)
- TIMSK |= (1 << TICIE1); // prerušenie na udalost Input Capture
- OSCCAL = 0xA5; // nastavenie kalibracneho bajtu interneho RC oscilatora
- sei(); // povol globalne prerušenia
- while(1){ // nekonečná slučka
- if(namerane) {
- for(blik=0;blik < (namerane/7812);blik++){
- PORTD |= (1 << PD7);
- _delay_ms(200);
- PORTD &= ~(1 << PD7);
- _delay_ms(200);
- }
- namerane = 0;
- }
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment