Habe da ein Problem meine Variable ist mit unsigned int z=0; deklariert
Das heißt es müsste eigentlich von 0 - 65535 zählen.
Aber.......
Hier ist mein Code
Hier ist die ausgabe von Hyper T.Code:#include <stdbool.h> #include <stdio.h> #include <asuro.h> int main(void) { Init(); char zC[2]; unsigned char umschaltpunkt = 0; int t = 0; unsigned int z=0; /*******************************************************************************************/ while( 1 ) { if(Gettime() > umschaltpunkt) // Umschaltzeitpunkt überschritten? { umschaltpunkt += 10000; // neuen Umschaltzeitpunkt festlegen z++; } if (umschaltpunkt > 10000) umschaltpunkt = 0; if (PollSwitch() == 1) z=0; if (PollSwitch() == 2) z = 90; if (PollSwitch() == 4) z = 32750; if (PollSwitch() == 32) z = 990; /**********************************************************************/ sprintf(zC, "%d", z); //Übertragen SerWrite(zC, 6); //Übertragen SerWrite (" zC\n\r", 5); //Übertragen for (t=0; t< 40; t++) //Übertragen { //Übertragen Sleep (72); //Übertragen } //Übertragen /***********************************************************************/ } return 0; }
Hat da jemand eienn Idee wieso er nicht bis 65... zähltCode:22760 zC 32761 zC 32762 zC 32763 zC 32764 zC 32765 zC 32766 zC 32767 zC -32768 zC -32767 zC -32766 zC -32765 zC -32764 zC -32763 zC
habe "z" auch schon mit int deklariert aber da ist es zählt er auch so
Lg







Zitieren
Lesezeichen