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...
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...
10.696 mal gelesen