Gast
#2118176
Hallo,
Ich hätte eine Frage bzgl dem dauernden setzen von Ausgängen, ich frage
mit einem Atmega16 immer wieder mehrere PINs ab und setze in der
while(1)-Schleife immer wieder die Ausgänge und nur wenn eine bestimme
Kombination an den PINs anliegt springt er in bestimme Unterfunktionen.
Ist das schädlich für den µC wenn er andauernd Setzbefehle ausführt? Den
Großteil der Zeit verbringt der µC ja in dieser Schleife mit dem
Ausgänge setzen und nur selten muss er wirklich in eine der
Unterprogramme springen (um z.B. die Variable zu ändern).
Erhöht sich dadurch auch der Stromverbrauch des µC?
Der while(1)-Schleifen-Ablauf sieht extrem stark vereinfacht und auf
PINA beschränkt in etwas so aus:
while(1)
{
switch (PINA)
{case 255: break;
case 191: calc_A();break;
case 223: calc_A();break;
case 239: calc_B(1);break;
case 247: calc_B(2);break;
case 251: calc_B(3);break;
case 253: calc_B(4);break;
case 254: calc_B(5);break;
case 159: check_hold();break;
}
// ANDAUERNDES! Ausgänge setzen
switch (VariableX[VariableY])
{case 1: PORTB = VariableZ; break;
case 2: PORTB = VariableZ + 64; break; //B6 zusätzlich setzen
case 4: PORTB = VariableZ + 128; break; //B7 zusätzlich setzen
}
//Aktualisiere Display
display();
}
return 0;
}
Es geht mir hier wirklich nur darum ob es schädlich ist wenn der µC
dauernd den selben Setzbefehl an einen PORT sendet, das der Code selbst
nicht gerade elegant geschrieben ist weiß ich, aber er funktioniert so
wenigstens schonmal :)
Wäre super wenn mir da jemand helfen könnte,
Lg Dani