Zdravím,
snažím se asi týden přes různé návody o program v CodeVision, který bude načítat např.vteřiny pomocí přetečení interního časovače. Zatím nic nepracuje rád by jsem poprosil někoho o radu nejlépe krátký jednoduchý program pro Atmega88 takt.8MHz.
Fórum › Mikrokontroléry
Časovač Atmega88
Muj priklad pro M8 na 8MHz, generovani preruseni kazdou 1 ms.
void TIMER2_init()
{
//nastaveni timeru 2 na preruseni co 1ms
OCR2=124;
TIFR|=0b10000000; //nastaveni priznaku preruseni
TIMSK|=0b10000000; //povoleni preruseni
TCCR2=0b00001011; //CTC mod, prescaler 32
}//timer 2 init
a obsluha preruseni
ISR (TIMER2_COMP_vect)
{
//preruseni kazdou 1ms
//zde se muzou nacitat milisekundy a po dosazeni 1000 vynulovat a pripocist 1s
//ostatni casy podobne
}
v hlavnim programu jeste povolit preruseni pomoci
sei();
neni to v codevision, pouzivam avrstudio nebo eclipse a avr-gcc
upravou konstant pujde udelat i treba 1s preruseni, nebo kazdych 0,5s
viz datasheet
snad to pomuze
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 7 hostů
Podobná vlákna
LM35 Atmega88 — založil ZdeněkAVR
Atmega88 regulace otáček střídavého motoru — založil ZdeněkAVR
Moderátoři diskuze