- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 45

Thema: Asuro soll die Werte von Variab über Hyper terminal ausgeben

  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.11.2010
    Ort
    Österreich
    Alter
    30
    Beiträge
    173

    Asuro soll die Werte von Variab über Hyper terminal ausgeben

    Anzeige

    Powerstation Test
    Frage

    Es ist ja möglich den aktuellen Wert der Liniensensoren über Hyper Terminal auszugeben


    ist es auch möglich den aktuellen Wert von LANG auszugeben

    Hier ein Programm





    #include <asuro.h>
    int main(void)
    {
    Init();

    int LANG = 0,x = 0;

    while( 1 )
    {
    x=x+1;

    if (x > 1000)
    LANG=LANG+1;
    if (x > 1000)
    x=0;


    //Hier steht dann das Programm

    if ( LANG > 200)
    LANG=0;
    }


    return 0;
    }



    Was ich möchte, ist das ich wärend das Programm abläuft über Hyper T nachsehen kann welchen Wert LANG gerade besitzt
    müsste eigentlich gehen oder

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    20.04.2008
    Ort
    Bremen
    Alter
    33
    Beiträge
    85
    Wie schon im anderen Thread gesagt. SerWrite benötigt einen String bzw Char. Denn muss man erst mit dem "itoa" Befehl umwandeln

    beste Grüße
    the.speciali
    Wer den Himmel auf Erden sucht hat im Erdkundeunterricht geschlafen!

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.11.2010
    Ort
    Österreich
    Alter
    30
    Beiträge
    173
    ok danke dann versuch ich mal den code umzuschreiben


    mfg

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.11.2010
    Ort
    Österreich
    Alter
    30
    Beiträge
    173
    #include "asuro.h"
    #include "stdlib.h"

    int main(void)
    {
    unsigned int LANG[1];
    char LANG[4];
    int t,LANG,x;


    Init();
    StatusLED (GREEN);
    FrontLED (ON);


    while (1)
    {


    itoa (LANG, 4);


    SerWrite (LANG, 4);
    SerWrite (" LANG\n\r", 7);



    for (t=0; t< 100; t++)
    {
    Sleep (72);
    }

    x=x+1;

    if (x > 1000)
    LANG=LANG+1;
    if (x > 1000)
    x=0;




    if ( LANG > 200)
    LANG=0;

    }
    }

    So ungefähr oder?

    Ich habe mal statt data 1/2 LANG genommen eber es kommen fehlermeldungen error........ .

    mfg

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    20.04.2008
    Ort
    Bremen
    Alter
    33
    Beiträge
    85
    Die Referenz von C sei dir nahe gelegt: klick hier. Sollte alles drin stehen.

    Und eine bitte: Schreibe das nächste mal den Quellcode in [ c o d e ] [ / c o d e ] Tags (ohne leerzeichen), der Thread bleibt dann um einiges übersichtlicher.

    beste Grüße
    the.speciali
    Wer den Himmel auf Erden sucht hat im Erdkundeunterricht geschlafen!

  6. #6
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.11.2010
    Ort
    Österreich
    Alter
    30
    Beiträge
    173
    Ok mach ich


    mfg

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.11.2010
    Ort
    Österreich
    Alter
    30
    Beiträge
    173
    Code:
    #include "asuro.h"
    #include "stdlib.h"
    
    int main(void)
    {
       unsigned int data[2];
       char data0[5], data1[5];
       int t,LANG,x;
    
    
    Init();
    
    
       while (1)
       {
          x++;
    	  if (x > 1000)
    	  LANG=LANG+1;
         
          itoa (LANG, LANG, 5);
          //itoa (data[1], data1, 5);
         
          SerWrite (LANG, 4);
          SerWrite (" links\n\r", 8);
         
          //SerWrite (data1, 4);
          //SerWrite (" rechts\n\r", 9);
         
          for (t=0; t< 100; t++)
          {
             Sleep (72);
          }
    	  
    	  
    	  if(LANG > 500)
    		LANG=0;
       }
    }
    Die Fehlermeldungen habe ich jetzt weg aber er sendet immer nur links links...........

    Kannst mirs bitte sagen ich habs nicht so mit englisch

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    01.03.2008
    Ort
    Niederlanden
    Beiträge
    1.170
    Den daten führ Links werden nicht gesendet weil dieze zeilen 'ausgeschaltet' sind. Den "//" Zeichen sagen den Kompiler das was dannach kommt auf die selbe Zeile ignorriert werden soll. Data1 wird nicht umgewandelt zu char oder Zeichenketten, und diese deshalb auch nicht gesendet.

  9. #9
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.11.2010
    Ort
    Österreich
    Alter
    30
    Beiträge
    173
    Ja weiß ich ein Komeentar
    Ich hatte zuvor ein Programm das die Werte von den Liniensensoren überträgt aufs Hyper T

    Ich habe das was ich nicht brauche in // getan damit ich sehe wie es zuvor ausgesehen hat

    Aber jetzt möchte ich das der wert der Variable LANG übertragen wird weil wenn ein Programm nicht funkt weiß ich wo es stehen bleibt

    mein Problem ist das immer

    LANG
    LANG
    LANG
    LANG
    LANG
    LANG

    übertragen wird ich möchte aber das der Wert auch dabei steht

    Ich habe es jetzt so
    Code:
    #include "asuro.h"
    #include "stdlib.h"
    
    int main(void)
    {
       unsigned int data[2];
       char data0[5], data1[5];
       int t,LANG,x;
    
    
    Init();
    
    
       while (1)
       {
          x++;
    	  if (x > 1000)
    	  LANG=LANG+1;
         
          itoa (LANG, LANG, 5);
          //itoa (data[1], data1, 5);
         
          SerWrite (LANG, 4);
          SerWrite (" LANG\n\r", 7);
         
          //SerWrite (data1, 4);
          //SerWrite (" rechts\n\r", 9);
         
          for (t=0; t< 80; t++)
          {
             Sleep (72);
          }
    	  
    	  
    	  if(LANG > 500)
    		LANG=0;
       }
    }
    Ich weiß auch nicht genau wie das vorher funktioniert
    hat mit data[1] und data kann mir das jemand erklären

    LG

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    01.03.2008
    Ort
    Niederlanden
    Beiträge
    1.170
    ...
    itoa (LANG, LANG, 5);
    //itoa (data[1], data1, 5);

    SerWrite (LANG, 4);
    SerWrite (" LANG\n\r", 7);
    ...
    Den Umwandlung von den Variable in einem Zeichenketten mit itoa geht Falsch. Du wandelst ein int variable um in einer int, statt ein char array (wie data0 und data1). Ich wundere mich wieso das keine Fehlermeldung beim Kompilieren gegeben hat. Ich kann nicht glauben du hast keiner bekommen. Und ein int variable senden mit SerWrite soll auch nicht funktionieren.

Seite 1 von 5 123 ... LetzteLetzte

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad