millis, ktorý kod bude lepší
Napsal: ned 22. říj 2023 21:23:17
Ahojte,
riešim presne časovanie cez timer1 na 1ms chcem sa poradiť ktorý kód bude lepší.
Ďakujem za všetky postrehy
alebo
riešim presne časovanie cez timer1 na 1ms chcem sa poradiť ktorý kód bude lepší.
Ďakujem za všetky postrehy
- Kód: Vybrat vše
cli();//stop interrupts
//set timer1 interrupt at 1kHz
TCCR1A = 0;// set entire TCCR1A register to 0
TCCR1B = 0;// same for TCCR1B
TCNT1 = 0;//initialize counter value to 0
// set timer count for 1khz increments
OCR1A = 1999;// = (16*10^6) / (1000*8) - 1
//had to use 16 bit timer1 for this bc 1999>255, but could switch to timers 0 or 2 with larger prescaler
// turn on CTC mode
TCCR1B |= (1 << WGM12);
// Set CS11 bit for 8 prescaler
TCCR1B |= (1 << CS11);
// enable timer compare interrupt
TIMSK1 |= (1 << OCIE1A);
sei();//allow interrupts
alebo
- Kód: Vybrat vše
cli();
// Nastavenie časovača 1 na generovanie prerušenia každú 1 ms
TCCR1A = 0;
TCCR1B = (1 << WGM52) | (1 << CS51) | (1 << CS50); // Režim CTC a preddeľovač 64
OCR1A = 249; // Nastavenie hodnoty porovnania pre generovanie prerušenia každých 1 ms
TIMSK1 = (1 << OCIE1A); // Povolenie prerušenia pri dosiahnutí hodnoty porovnania
sei();