Hallo,
ich habe so eben in meinem Programm globale Variablen, die zuvor als
char deklariert waren zu int abgeändert. Grund dafür ist das sich
Wertebereiche vergrößert haben. Nun ja in der alten version (char
Datentypen) hab ich arrays im Initialisierungsteil keinen Wert
zugewiesen und sie waren von Anfang an Null, was auch gut so war. Später
wurden sie dann mit den gewünschten Werten beschrieben.
so sah beispielsweise eine Deklaration aus:
1 | unsigned char pwmDiff[ANGLES];
|
Nach der Abänderung hab ich es mit selbiger Deklaration versucht:
1 | unsigned int pwmDiff[ANGLES];
|
Jedoch stehen dann laut AVR-Simulator anfängliche Werte in meinen
Variablen von denen ich nicht weis woher sie kommen.
Damit das ganze dann funktioniert musste ich folgendes im Programmkopf
ergänzen:
1 | unsigned int pwmDiff[ANGLES]={0,0,0};
|
Nun ja es funktioniert jetzt so wie ich will, dennoch würde es mich
interessieren warum das so ist. Wäre euch dankbar wenn mir das einer
eklären könnte.
Gruß Sven