// avrdude -pt13 -cusbtiny -Pusb -e -U lfuse:w:0x7a:m -U hfuse:w:0xfb:m -U flash:w:C:\attiny13_timer.cpp.hex.txt:i // +-\/-+ // A0 (D5) PB5 1| |8 VCC // A3 (D3) PB3 2| AT |7 PB2 (D2) INT0 A1 // A2 (D4) PB4 3| 13 |6 PB1 (D1) pwm1 // GND 4| |5 PB0 (D0) pwm0 // +----+ #define F_CPU 9600000 // clock 9.6 MHz #include #include long interval, delka_pulsu, delka_pauzy; unsigned long previousMillis; byte pulse, wait; void setup() { OSCCAL = 88; // kalibracni konstanta oscilatoru - jen buh zna tu spravnou pinMode(1, INPUT); pinMode(0, OUTPUT); digitalWrite(0,LOW); volatile const int8_t adc2 = (1<= interval) { digitalWrite(0, !digitalRead(0)); // zmena signalu na pinu 0 previousMillis = currentMillis; if ( interval == delka_pulsu) { // zmena intervalu puls/pauza interval = delka_pauzy; // 0-255 minut } else { interval = delka_pulsu; // 0-255 sekund } } _delay_ms(200); // cely cyklus bezi v intervalu 200ms }