- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 4 von 4

Thema: Strings in Array packen?

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.05.2007
    Beiträge
    329

    Strings in Array packen?

    Anzeige

    E-Bike
    Hallo Forum,

    in 6ms Abständen sollen unterschiedliche Strings versendet werden:

    Code:
    sprintf( Text, "2:1=%i\r\n", (int)tilt_angle );
    		  uart_puts (Text);
    		  _delay_ms(6);
    	      sprintf( Text, "2:2=%i\r\n", (int)roll_angle);
    		  uart_puts (Text);
    	      _delay_ms(6);
    	      sprintf( Text, "2:3=%i\r\n", (int)Rocker_position);
    		  uart_puts (Text);
    	      _delay_ms(6);
    	      sprintf( Text, "2:4=%i\r\n", (int)Rocker_sensivity);
    		  uart_puts (Text);
    	      _delay_ms(6);
    	      sprintf( Text, "2:5=%i\r\n", (int)Speed_error);
    wie würdet ihr das hübsch "verpacken"? struct?


    Günter

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Felix G
    Registriert seit
    29.06.2004
    Ort
    49°32'N 8°40'E
    Alter
    41
    Beiträge
    1.780
    Wenn das alles int-Variablen sind, wie wärs dann damit:

    Code:
    enum
    {
        tilt_angle,
        roll_angle,
        Rocker_position,
        Rocker_sensivity,
        Speed_error,
        Value_max
    };
    
    int Values[Value_max];
    
    int8_t n;
    
    for(n=0; n<Value_max; n++)
    {
        sprintf(Text, "2:%i=%i", n+1, Values[n]);
        _delay_ms(6);
    }
    So kannst du anderswo im Code z.B. auch per Values[Speed_error] auf ein bestimmtes Element (in diesem Fall Speed_error) mit seinem Namen zugreifen.
    So viele Treppen und so wenig Zeit!

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    18.05.2007
    Beiträge
    329
    Hallo Felix,

    leider sind die Typen der Werte unterschiedlich, deshalb auch das (int) vor den Variablen.

    Günter

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.04.2010
    Beiträge
    1.249
    Ich würde wohl ein struct nehmen, obwohl es dadurch auch nicht kürzer wird.

    Außer du machst ne Funktion draus und übergibst einfach das komplette struct.

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress