Quantcast
Channel: Forum Pasja Informatyki - Najnowsze pytania
Viewing all articles
Browse latest Browse all 65225

Timery Atmega8 nie działają poprawnie

$
0
0

Napisałem taki kod:

#define F_CPU 1000000UL

#include <cstdlib>
#include <avr/io.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#include "lcd.c"

int main(void)
{
	LCD_Ini();

	sei();

	TIMSK |= (1<<TOIE0);
	TCCR0 |= (1<<CS01);

	_delay_ms(5000);

	TCCR0 &= ~(1<<CS01);

	char Temp[8];
						sprintf(Temp,"%i", TCNT0);

	LCD_ZapiszText(Temp);
}

ISR(TIMER0_OVF_vect)
{
	TCNT0 = 0;
}

Według moich obliczeń (reszta z dzielenia 5.000.000 przez 256) wynika, że TCNT0 powinno być równe 64, a na wyświetlaczu pokazuje że jest równe 231. Zauważyłem, że timer nie działa poprawnie. Czemu tak jest?


Viewing all articles
Browse latest Browse all 65225

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>