Analoge Balkenanzeige mit PIC


Ich wollte eigentlich nur mal eine LCD Textanzeige an einem 8 poligen PIC anschließen. Dabei ist dann diese nette kleine Schaltung herausgekommen. Sie kann ein oder zwei analoge Spannungen auf einem Standard LCD-Textdisplay als Balken anzeigen. Dabei wird nicht nur ein Buchstabe des Displays als ein Balkensegment benutzt, sondern jeder Buchstabe ist nochmal in fünf Teilstriche unterteilt !!!

Anwendungen:

  • Batterie Ladeanzeige
  • Füllstandsanzeige
  • Temperaturanzeige
  • Öldruckanzeige
  • Feldstärkemesser


Eine Balkenanzeige ist optisch viel ansprechender als einfach nur eine Zahl anzuzeigen. Ob ein Grenzwert wie voll oder leer erreicht wird, wird viel schneller erfasst. Auch Tendenzen fallend/steigend sind besser zu sehen. Die Spannungsmessung erfolgt alle 32ms, d.h. ca. 30 Messungen pro Sekunde. Abgleicharbeiten sind damit viel einfacher durchzuführen als mit einem normalen Multimeter mit drei vier Messungen pro Sekunde. Abgleicharbeiten auf Minimal- oder Maximalwerte sind wesentlich schneller und genauer durchführbar. Zusätzlich zu der Balkenanzeige ist für jeden Eingang eine  LED vorhanden um den Überlauf der Anzeige zu signalisieren. An den Ausgängen könnten auch Alarmgeber oder Relais angeschlossen werden.

Bausteine für Balkenanzeigen mit LED's (z.B. LM3914) fressen viel Strom und können meistens nur wenige LED's ansteuern, d.h. geringe Auflösung. Die Auflösung dieser Anzeige entspricht  80 LED's bei einer LCD-Anzeige mit 16 Zeichen pro Zeile. Die Schaltung benötigt nur 2mA wenn die Überlauf LED's nicht leuchten. Wenn sie leuchten kommen jeweils 10mA dazu. Damit ist auch längerer Batteriebetrieb möglich.


Schaltplan Bargraph



Über IO-Pin GP3 kann die Anzeige auf einen Balken bei 1x16 Zeichen oder auf zwei Balken bei 2x16 Zeichen eingestellt werden.
GP3 an Masse ein Balken, GP3 an 5V zwei Balken. Mit einem PIC16C73 könnten auch vier oder mehr Balken angezeigt werden. Dann kann die LCD-Anzeige auch direkt am PIC angeschlossen werden. Der hat genug IO-Pins. Wenn nur ein Balken angezeigt werden soll könnten die beiden LED's auch als Tendenzanzeige steigend/fallend benutzt werden.

Für den Anschluß der LCD-Anzeige werden 3 Pins des PIC benötigt. Es gibt Lösungen mit nur 2 Pins und dem I2C Baustein PCF8574. Der hat aber den Nachteil das die Ausgänge nur gegen Masse größere Ströme ziehen können. Bei positiven Ausgangssignalen mit mehr Strombedarf müssen Puffer nachgeschaltet werden. Das I2C Protokoll braucht auch mehr Programmspeicher als eine Lösung mit einfachen Schieberegistern. Außerdem ist ein PCF8574 nicht gerade billig. Weitere 4094 können einfach kaskadiert werden. Wieviele ist beliebig ! So könnte auch eine Balkenanzeige mit 24 LED's und mehr realisiert werden, oder ein Array aus LCD-Displays !

Der Innenwiderstand der zu messenden Quelle sollte kleiner 10k Ohm sein. Sonst mit einem OP puffern.

Die Auflösung des AD-Wandlers beträgt 19,6mV bei 5V Betriebsspannung. Ich habe drei Brenndateien mit verschiedenen Werten für Vollauschlag der Anzeige übersetzt.
 

  • bar240.hex Vollausschlag bei 4,70V (bis AD-Wandler Wert 240)
  • bar160.hex Vollausschlag bei 3,14V (bis AD-Wandler Wert 160)
  • bar80.hex   Vollausschlag bei 1,57V (bis AD-Wandler Wert 80)


Das hängt mit der Anzahl der Teilstriche der LCD-Anzeige zusammen. Ich setze eine Anzeige mit 16 Zeichen pro Zeile voraus. Bei 16 Zeichen und 5 Punkten horizontal pro Zeichen kommen 80 Teilstriche zusammen. Mit den obigen Werten kommen bei der Berechnung des Skalenfaktors ganze Zahlen heraus. Die Anzeige wird dadurch genauer. Bei bar80.hex entspricht ein Teilstrich genau 19,6mV.

Wer kleinere Werte für Vollausschlag braucht kann einen Verstärker benutzen. Bei höheren Spannungen z.B. für 12V Bleiakkus Spannungsteiler vorschalten.

Nachbau und Benutzung auf eigene Gefahr.

Schaltplan (Eagle 3.5)
Brenndateien für PIC12C671/672 und 12F675
Quellcode für CC5X zum rumexperimentieren


Ich entwerfe keine Schaltungen oder Programme für andere. Dazu fehlt mir einfach die Zeit. Bei mir sind keine Bausätze, Platinen oder programmierte Chips zu den Schaltungen erhältlich. 

E-Mail

Zur Startseite