Portál AbcLinuxu, 31. října 2025 12:33
for tak složitě? Jakou má výhodu 1==1 oproti true, resp. prostě 1?
Co takhle:
for (uint8_t i = 0; true; i++)
{
  if (i == 4) i = 0;
  //...
}
while (1) {}
             20.6.2012 15:47
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        20.6.2012 15:47
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        jj. aj tak sa da. vie mi niekto dat nejaky tutoral na prerusenia?
napr zeby som mohol spustit podprogram pri stisknuti napr tlacitka pripojeneho na pin 1 portu A
a tiez nejaky example na prerusenie aby sa automaticky vzdycky v nejaky cas vykonal podprogram nezavisle teda aby nebolo treba nic stlacat.. napada ma vyuzitie citaca ale tak daleko som sa nedostal este
ISR(PCINT3_vect){
}
Staci mit tabulky preruseni a zbytek je v datashitu procesoru. Tady mas pro ukazku preruseni a sinusovku s casovacem...
// PROGRAM 001 C++ fast PWM pro D/A prevodnik
// ************************************************
// * date: 11/8/2011							  *
// * verze: 1.0 								  *
// * for AVR: 2313 								  *
// * clock frequency: 1MHz 						  *
// ************************************************
// Program Function: 
// _____________________________________________________________________
//
// Program mel puvodne demonstrovat D/A prevodnik z jednoho vystupniho
// pinu pomoci fast PWM, ta cte hodoty preklapecich urovni z z tabulky,
// pomale... vylepsit!
// _____________________________________________________________________
// ==================================================================
// 							DEKLARACE
#include avr\io.h>
#include avr\interrupt.h>
#include avr\pgmspace.h>
const uint8_t sinewave16[] PROGMEM= 		//i hodnot (bez i 256)
{
64,88,109,123,127,123,109,88,
64,39,19,5,0,5,19,39,
};
uint8_t i=0;
uint8_t j=0;
ISR(TIMER1_COMPA_vect){
	OCR1A=pgm_read_byte(&sinewave16[i]);
   	i++;
	if (i >= 0x10){
		i=0;
	}
}
// ==================================================================
// 							HLAVNI PROGRAM
int main(void) {
	
	DDRD=0x80;		// piny PortuD jako vstupni
	PORTD=0xFF;		// povolení internich pull-up rezistoru
	DDRB=0xFF;		// nastaveni portuB jako vystup
	OCR1A=10;		// nastaveni hodnoty OCR1A
	TCCR1A=0x91;	// porovnání vystupu OC1RA s 8bit neinvertovanou PWM?
	TCCR1B=0x01;	// casovac bez preddelicky?
	TIMSK=0x50;		// zapnuti porovnavani vystupu preruseni pro OCR1A?
sei();				// enable global interrups
    while (1) {		// loop for ever. Interrupts will do the job.
    }
}
            for (;;) {
  // ...
}
             21.6.2012 13:05
Pavel Stárek             | skóre: 43
             | blog: Tady bloguju já :-)
             | Kolín
        21.6.2012 13:05
Pavel Stárek             | skóre: 43
             | blog: Tady bloguju já :-)
             | Kolín
         20.6.2012 18:45
Bedňa             | skóre: 34
             | blog: Žumpa
             | Horňany
        20.6.2012 18:45
Bedňa             | skóre: 34
             | blog: Žumpa
             | Horňany
         20.6.2012 18:53
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        20.6.2012 18:53
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        už
<h3>, ten kód určitě nejsou nadpisy.
             20.6.2012 18:55
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        20.6.2012 18:55
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        este by to chcelo aby som nemusel stale pouzivat sudo ak chcem zapisat program.
 20.6.2012 22:28
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        20.6.2012 22:28
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        uf dufam ze ti niekto tuna z ludi na fore odpovie .. moj mkII nema podporu pre debuging tusim
 20.6.2012 22:30
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        20.6.2012 22:30
lukve             | skóre: 29
             | blog: Lukove
             | Prešov
        ak sa ta smiem opytat aku verziu AVR studia pouzivas? ja som si vo winxp nainstaloval este tu staru klasicku 4ku lebo ta nova uz je moc zlozita postavena na Visual Studiu
        Tiskni
            
                Sdílej:
                 
                 
                 
                 
                 
                 
            
    
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.