-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 14

Thema: Atmega32 TXD RXD eeprom auslesen

  1. #1

    Atmega32 TXD RXD eeprom auslesen

    Anzeige

    Abend Zusammen,
    ICh möchte eine Messreihe von Temperatur in einem atmega speichern.
    so alle minute oder mehr temperatur messen und abspeichern
    nur wie mache ich das in Bascom?
    und was ist besser?
    Flash oder eeprom?
    Habe die Suche und so schon benutzt allerdings ist mir das alles noch ein wenig unverständlich, va wie ich eine MESSREIHE anlege und diese dann am Pc auswerten kann
    würde mich über konkrete programmierbeispiele sehr freuen
    MFG
    MOsfetgrille

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    öhm ... wie lang soll die Messreihe sein, welche Auflösung, wieviele
    Bytes insgesamt ...
    Mit Flash meinst Du dann ins Programmflash oder externes Flash?
    Selbiges beim EEPROM ... intern oder extern?
    Nur die Messwerte oder auch n Zeitstempel?
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  3. #3
    Hi,
    Danke für die schnelle Antwort,
    alles intern fürs erste
    auflösung : string temperatur z.b. -4,2 °C
    mit zeitstempel wäre perfekt allerdings glaube ich das das dann wiederum massig speicher verschwendet oder?
    ja also 100 messerwerte solltens schon sein!!
    Was ich auch gelesen ahb ist das ma das auch auf sd karte speichern kann!
    das soll dann aber erst später sein ich will mich erst einmal einarbeiten bzw sehen wie sich das dann alles ergibt
    also ich will meserwerte vom TSic also digitaler temperatursensor einspeichern!
    MFG
    MOsfetgrille

  4. #4
    Erfahrener Benutzer Robotik Visionär
    Registriert seit
    26.11.2005
    Ort
    bei Uelzen (Niedersachsen)
    Beiträge
    7.942
    Die Werte sollte man binär Speicher, so wie man sie vom Sensor bekommt. Das wird dann vermutlich ein 16 Bit wert (Word oder Integer) sein. Für einen Zeitstempel wäre das dann wohl nochmal 16 Bits.

    Damit sollten die 1024 Byte EEPROM im Mega32 für 512 Werte reichen, abzüglich eventuell ein Paar Bytes die man für was anderes (z.B. Schrittweite, Sensor Nr,...) braucht.

    Die Umwandlung in eine Zeichenkette sollte man erst vor der Überragung zum PC machen. Das Spart einiges an Speicher.

    Es geht mit einer externen SD karte, aber nicht ganz einfach. Die nächst größeren Speicher wären erst mal ein externes EEPROM (1- ca. 64 Kbytes) oder Dataflasch (256 kBytes - ca. 2 MByte). Die sind einfacher anzusteuern als eine SD-karte. Bei der SD Karte könnte man die Daten dann aber auch über die Karte zum PC bringen.

  5. #5

    Morgen

    Morgen;
    Ja dann werde ich das erst mal mit eeprom versuchen,
    Nur wie mach ich das Bascomtechnisch am besten das er mir ned immer den alten string überschreibt?
    MFG
    MOsfetgrille

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Vitis
    Registriert seit
    06.01.2005
    Ort
    Südpfalz
    Alter
    43
    Beiträge
    2.240
    nee, strings schreibt man nicht ins eeprom ... das ist platzverschwendung.
    du gehst einfach hin und nimmst den messwert mal zehn und addierst ein Offset dazu, z.B.

    (-4,2 + 20) * 10

    Dann geht Dein Messbereich eben bis -20°, die Zehn brauchste für die
    Dezimalstelle, dann hast Du nen positiven Wert, den du bequem in 2 Bytes
    schreiben kannst. (durch zerlegen der Zwei Ergebnisbytes in highbyte und
    Lowbyte). Bei der Übertragung an den PC rechneste die ausgelesenen
    Werte einfach wieder rückwärts ( (x/10)-20 ) und schon passts wieder.

    Das geht dann am Einfachsten per Writeeeprom und fertig ist die Laube.
    Ach so, einen Pointer musste natürlich auch mitzählen lassen wo die neuen
    Daten hin sollen.

    Ins Programmflash Daten schreiben geht zwar prinzipiell über den Umweg
    Bootloader, aber ich glaub Du bist dafür noch nicht weit genug fortgeschritten.
    Vor den Erfolg haben die Götter den Schweiß gesetzt

  7. #7

    Danke für die schnelle Antwort!

    Ja genau so stell ich mir das vor ja eeprom reichts fürs erste völlig aus und das mit der umformung hört sich sehr gut an,
    nur bin ich mir der Umsetzung nicht richtig bewusst mit ein paar codeschnipsel wäre mir sehr geholfen!
    Nja werd jetz erstmal wieder die Suchmaschinen quälen XD
    MFG

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.545
    Den "Codeschnipsel" für die Umwandlung hat Vitis schon geschrieben

    Du hast den Wert vom Sensor => Variable x
    Wenn der Temp. Bereich vom Sensor z.B. bis -20°C geht und der Sensor 1 Nachkommastelle hat rechnest du

    (x+20)*10

    Dann hättest du bei z.B. -4,2°C

    (-4,2+20)*10=158 => diesen Wert speicherst du

    Wenn du den Wert wieder zurückrechnen willst musst du den gespeicherten Wert durch 10 dividieren und die 20 wieder wegrechnen.

    Vom obigen Beispiel 158

    (158/10)-20=-4,2 => diesen Wert zeigst du z.B. am Display an

  9. #9
    japp jetzt läufts!
    nur stellt sich mir jetzt die frage wie ich den "datenmüll" am pc auswerte!?
    wenn ich mir eXtreme Burner die daten aus dem eeprom auslese is das ja ein .hex file
    ich will aber die das messergebnis so wie ich es im atmega gespaichert habe also z.b. (x+20)*10 z.b. 280 für 8 °C
    am besten wäre irgend ein programm in dem man gleich einen graphen zeichnen kann!
    geht das so?
    oder muss ich das mitm nen ft232 über rxd und txd auslesen?
    MFG
    MOsfetgrille

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    29
    Beiträge
    4.545
    Ich würde am PC en Programm schreiben (Visual Basic, Visual C, LabView,...) indem du einen Befehl an den µC sendest und der µC dir die Daten zurücksendet. In den 3 Programmen ist die RS232 Schnittstelle schon integriert, du brauchst nur mehr die Befehle,... verwenden.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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