- LiFePO4 Speicher Test         
Ergebnis 1 bis 4 von 4

Thema: itoa,sprintf,ultoa, etc. - Routinen stoppen Programm!!!

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.07.2004
    Beiträge
    122

    itoa,sprintf,ultoa, etc. - Routinen stoppen Programm!!!

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo ihr Super-Programmierer! Ich hoffe ihr könnt mir helfen!
    Ich möchte am LCD einen gemessenen Wert ausgeben. Da ich nur Zeichen ans Display sende, muss ich ja die Integer oder Float oder wie auch immer zuerst in CHAR umwandeln. Ich habe verschiedene Routinen wie itoa, sprintf oder ultoa gefunden. Alle funktionieren im C++ Builder von Borland, ich habs dort auf dem Computermonitor kurz getestet und funktioniert. Nun bleibt bei meinem AT90S8515 aber das Programm irgendwie hängen, wenn ich diese Routine mehr als 1-mal verwende! Grrrr.... Ich möchte doch nur ein Testprogramm für das LCD schreiben, dass eine Integerzahl fortlaufen Inkrementiert in ca. 1s abständen, aber es läuft und läuft nicht!!!!
    Code:
    #include <io.h>
    #include <stdio.h>
    
    int a;
    char test[10];
    
    int main(void)
    {
    	a=1;								// Den Wert 1 in die Integerzahl "a" schreiben
    	disp_init();						// Display initialisieren
    	disp_clear();						// Display löschen
    	while(1)							// Endlosschleife
    	{	
    		sprintf(test,"Zahl: %i",a);		// Int "a" nach Char "test" umwandeln
    		disp_write_ln(test,0x00);		// Char "test" ans Display auf Spalte 0 schreiben
    		for(i=1; i<5000; i++); 		// Warteschleife (ca.1s)
    		a++;							// a inkrementieren
    	}	
    }
    Ich hoffe ihr könnt mir helfen!!! Würde mich freuen, wenn mal ein bisschen Bewegeung aufs Display kommt und nicht immer die gleiche Zahl dortstehen würde!!!

    Merci

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2004
    Ort
    Karlsruhe
    Beiträge
    223
    Also wenn du nur eine Zahl umwandeln willst schreibst du dir besser selber ne kleine Routine, das ganze stdio-Zeugs braucht extrem viel Speicherplatz. Ich gehe davon aus dass es dein sprintf ist was dir abschmiert.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    06.07.2004
    Beiträge
    122
    Danke. Hab ich mir fast schon gedacht...
    Ich hab vor langer Zeit mal so eine Routine selbst geschrieben, weiss aber wirklich nicht mehr, wie ich das gemacht habe.
    Hätte jemand ein paar Ideen oder eine Routine zum anschauen? Danke

  4. #4
    Gast

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Labornetzteil AliExpress