LAZ 12 Messwerte vom AVR zum PC übertragen und anzeigen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

Hinweis kann nach Kenntnisnahme deaktiviert werden!

  • Projekt zur Übertragung von Messwerten (analog und digital) von einem AVR zu einem PC
    Das vorliegende Projekt zeigt, wie ein ATMega 328 Daten über Analogeingänge oder Digitaleingänge aufnimmt und diese per Befehl vom PC an den PC sendet.

    Der AVR hat dazu eine einfache RS232 Schnittstelle, welche auf Befehle vom PC reagiert und je nach Art des Befehls die entsprechend geforderten Daten über die serielle Schnittstelle versendet.
    Die Daten (Zahlenwerte) sind als String im Telegramm zum PC abgelegt. Endekennung ist CR-LF.
    Würde man die Zahlen als ASCII Entsprechnungen senden, könnten auch Steuerzeichen gesendet werden (CR -> ASCII 13), welche die Empfangsroutine stören würde.

    Auf der PC Seite muss für dieses Projekt über den Lazarus OnlinePackageManager (OPM) das Paket "BGRA Controls" installiert werden.

    Image2.png

    Setup Com
    Hier können die Einstellungen für die serielle Datenübertragung festgelegt werden. Ein geänderter COM Port wird dabei gespeichert und ist beim nächsten Start der Software voreingestellt.

    COM OFF / ON
    Nimmt die serielle Schnittstelle in Betrieb oder deaktiviert diese.

    Analogwert-1, Analogwert-2, Digitalwert, Aus
    Beim Betätigen dieser Buttons werden Daten zum AVR gesendet, welche die Funktion des AVR festlegen.
    Im beiliegenden Projekt gilt:
    #0+#13 ( ASCII Zeichen für 0 und 13) der AVR sendet keine Daten mehr
    #1+#13 ( ASCII Zeichen für 1 und 13) der AVR sendet den digitalisierten Wert von Analogeingang #1 (GETADC(0) )
    #2+#13 ( ASCII Zeichen für 2 und 13) der AVR sendet den digitalisierten Wert von Analogeingang #2 (GETADC(1) )
    #3+#13 ( ASCII Zeichen für 3 und 13) der AVR sendet den Zustand eines Eingangs ( PINB.0)

    Pause
    Die weiterhin vom AVR gesendeten Daten werden nicht dargestellt, bis die Pause Taste wieder betätigt wird. Die Darstellung wird also eingefroren.

    Die Daten aus dem Empfangsstring vom AVR werden aufbereitet und über eine Analoganzeige in Millivolt und einen Graphen dargestellt.


    Fortsetzung folgt...
    Dateien

    10.532 mal gelesen