-         

Ergebnis 1 bis 4 von 4

Thema: Array zweidimensional für String

  1. #1
    Neuer Benutzer
    Registriert seit
    30.12.2008
    Alter
    49
    Beiträge
    2

    Array zweidimensional für String

    Anzeige

    Hallo,

    und einen freundlichen Gruß an alle User.
    Ich bin heute bei euch hier eingestiegen .

    Zur Zeit habe ich ein Projekt am laufen mit dem ich mehrere Temperatursensoren DS18B20 mit einem ATMega128 auslese.
    Die Daten werden aufbereitet,und dann an einen SIM-KNX µC Board weiterleitet. Dieses Board schickt mir die Temp. auf den EIB KNX Bus, so dass ich die Temperaturdaten mittels Gira Homeserver verarbeite und auf dem Touchpanel darstelle.

    Mein Laboraufbau läuft soweit, so dass ich nun in der Optimirungsfase bin.
    Momentan sind die Configdaten im Prog (Basic) fest eingebunden, was so für mich ein NoGo ist.
    Der Testaufbau ist mit ner C-Control Pro Mega128 realisiert.(Die IDE ist grausam)
    Neue HW ist unterwegs und da mache ich das Prog mit Bascom.
    C und ASM is für mich (noch) kein Thema, ich bin mit Turbopascal groß geworden naja und mit Basic das Fahradfahen gelernt.

    So nun zu meinem eigentlichen prob.
    Wie realisiert man mit Bascom ein Array of String zweidimensional ?
    Habe da im Help nicht so richtig was gefunden.

    Alternativ

    Wie bekomme ich eine SD-Karte an den Mega bzw Wie lese ich da eine Datei in der ich meine Config Daten vorhalte?
    -----------
    Gruß elko

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Zitat Zitat von elko68
    So nun zu meinem eigentlichen prob.
    Wie realisiert man mit Bascom ein Array of String zweidimensional ?
    Habe da im Help nicht so richtig was gefunden.
    Grundsätzlich gibt es in Bascom keine mehrdimensionalen Arrays. Wenn man die wirklich benötigt, muss man die entsprechend Teile selber im Speicher organisieren.
    Aber wenn ich dein Problem richtig verstanden habe, brauchst du auch nur ein Array von Strings. Ein String ist ja selber eine Art Array, nur gibt es spezielle Funktionen um auf Teile zuzugreifen (Left(), Right(), Mid()).
    Mit
    Dim MyStringArray(10) as String*20
    dimensionierst du dir 10 Strings, die jeweils die nutzbare Länge von 20 haben (dahinter ist noch Platz für ein 0-Byte reserviert, um das Ende anzuzeigen).
    Nun kannst du mit den normalen Funktionen darauf zugreifen
    Left(MyStringArray(2),8 )
    gibt dir vom 2-ten String (Bascom ist hier 1-basiert) die ersten 8 Zeichen zurück.

    Zitat Zitat von elko68
    Alternativ

    Wie bekomme ich eine SD-Karte an den Mega bzw Wie lese ich da eine Datei in der ich meine Config Daten vorhalte?
    Wenn du nur für die Konfiguration die SD benutzen willst, wäre das etwas übertriebener Aufwand. Die "paar" Werte kannst du einfacher im EEPROM speichern.

    Gruß

    Rolf

  3. #3
    Neuer Benutzer
    Registriert seit
    30.12.2008
    Alter
    49
    Beiträge
    2
    Hallo Rolf!

    Danke für deine Antwort.
    Das mit den Sring ist erst mal ein Ansatz.

    Der Gedanke mit der SD ist der, dass ich die SD herausnehme und am PC die Config editiere.
    Sonst muss ich über RS232 Dialog die Config Daten reinhacken.
    -----------
    Gruß elko

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Das Problem mit den SD-Karten ist, dass schon viele Leute alleine über den Anschluss an den µC gestolpert sind. Unterschiedliche Spannungen, Hard oder Soft SPI, viel Speicherplatz und und und...

    Ich habe die SD Karte nicht nur für die Konfiguration sondern auch fürs Loggen der Daten verwendet. Allerdings ohne AVR-DOS, weil mir das zu viel Speicher klaut.

    Versuche mal, eine Verbindung aufzubauen und dieses Programm von Jaecko ans Laufen zu bringen. Das benutze ich auch immer, wenn ich die Verbindung zur karte checken will. http://www.roboternetz.de/phpBB2/zei...ag.php?t=42019

    Gruß

    Rolf

Berechtigungen

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