buffer in Array sprichern

Gast #2555261
Lesenswert?

Guten Tag,
ich habe ein Problem mit einem wert der im Array Gespeichert werden 
soll,
ich Empfange über UART die TempWerte(Sensornumer Temperatur) und das 
Ausgeben auf dem Terminal klappt.
Nun wollte ich die werte in ein Array Speichern vielleicht kann mir 
jemand von ihnen weiterhelfen.

1
 
2
 char RX0Buffer[30];
3
 
4
 int BufferLen = 30;
5

6
 int TempWert[10];
7

8
void lcdtemp(void)
9
{ 
10
  char c;
11
  int i = 0;
12
  unsigned int by;
13

14
    c = uart_getchar();
15
    while( ( c = uart_getchar() ) != '\r'   && i < BufferLen  - 1 )
16
    RX0Buffer[ i++ ] = c;
17
    RX0Buffer[i] = '\0';
18

19

20
  for(i=0; i<7; i++)
21
     {
22
      by=RX0Buffer[i];
23
      if ( by == '1' )
24
       {
25
        TempWert[1]=by;  
26
        uart_puts(RX0Buffer );
27
       }  
28

29
      if ( by == '2' )
30
       {
31
        TempWert[2]=by  
32
        uart_puts(RX0Buffer );
33
       }  
34
 
35
      if ( by == '3' )
36
       {
37
        uart_puts(RX0Buffer );
38
       }  
39

40
      if ( by == '4' )
41
       {
42
        uart_puts(RX0Buffer );
43
       }  
44

45
      if ( by == '5' )
46
       {
47
        uart_puts(RX0Buffer );
48
       }  
49

50
      if ( by == '6' )
51
       {
52
        uart_puts(RX0Buffer );
53
       }  
54

55
      if ( by == '7' )
56
       {
57
        uart_puts(RX0Buffer );
58
       }  
59

60
      if ( by == '8' )
61
       {
62
        uart_puts(RX0Buffer );
63
       }  
64

65
      if ( by == '9' )
66
       {
67
        uart_puts(RX0Buffer );
68
       }  
69

70
      if ( by == 'A' )
71
       {
72
        uart_puts(RX0Buffer );
73
       }
74
     
75

76
     }
77

78

79
   }
Gast #2555665
Lesenswert?

Mir geht es ähnlich.

Angenommen du sendest an den µC über UART den String "23 42 -1 ...\r"
Willst du anschliessend haben
1
TempWert[0] = 23
2
TempWert[1] = 42
3
TempWert[2] = -1
...

Und: Kannst du risikolos voraussetzen, dass der empfangene String immer 
exakt 10 Ganzzahlen enthält?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren