22.01.2005
Layout Version 1.0
Inhalt
- Änderungen am Display
- Die Schaltung
- Layout
- Gehäuse
- Zur Software
- Alternativen zum Selbsbau
- Entwickler
- Kommerzielle Nutzung
Änderungen am Display
Am Prinzip hat sich gegenüber dem Display Modell 1 nichts geändert. Es sind Neuerungen hinzugekommen und die Software hat 'ein paar Generationen' zugelegt.
Änderungen sind u.a. :
- 4 Taster zur Signalisierung an den PC
- 3 LED's
- Helligkeitssensor zu Automatischen Beleuchtung
- freier AD-Eingang, wird über 1-Wire-Bus für den Digitalen Temperatursensor DS1820 genutzt, wobei die Temperatur auf das Display bzw. zum UART gesendet werden kann
- Platine im HALBEN Euroformat
- Optimierung des Layouts
Die Schaltung
Download als PDF (81k) | |
Download als GIF (22k) | |
Download als Eagle-Schaltplan (63k) (ab 4.10 Light) |
Die Schaltung ist wie im Modell1 gehalten. Geändert habe ich lediglich das jetzt 4Taster und ein freier AD-Eingang zur Verfügung stehen die auf einer gemeinsamen Anschlußleiste zusammengefaßt sind. Weiterhin habe ich andere Bauformen von verwendeten Bauteilen gewählt und tlw. weitere zugefügt.
Der freie AD-Eingang kann per Jumper für den 1-Wire Bus genutzt ( 4k7 pull-up ) werden.
Optionale Bauteile
Ebenfalls sind zur Schaltung einige optionale Bauteile hinzugekommen, welche ich zu Optimierungszwecken eingebracht habe (z.B. ERC-Eigenschaften u. Noise verbessern ) bzw. die durch andere Netzteilnutzung entfallen können.
Diese optionalen Bauteile sind:
- D5 : Schutzdiode : kann entfallen
- C11 : Entkoppelkondensator : kann entfallen
- L1 : Spannungsversorgung entkoppeln : kann durch Brücke ersetzt werden
- J1 u. R7 : Pull-Up 1-Wire-Bus : wird DS1820 Temperatursensor nicht genutzt, können diese entfallen
Wer das Gerät direkt in den PC und die 5V über einen der Netzteilstecker bezieht, kann ebenfalls auf Bauteile verzichten. Die 5V Eingangsspannung können direkt an die PowerConn-Leiste angeschlossen werden.
Dies sind :
- C1, C2, C3 - Kondensatoren
- IC1 - Spannungsregler 5V/1A
Pin | Bedeutung | Atmel Pin |
---|---|---|
1/2 | freier AD bzw. Temperatursensor | 28 |
3/4 | Taster 4 | 27 |
5/6 | Taster 1 | 12 |
7/8 | Taster 2 | 13 |
9/10 | Taster 3 | 25 |
- Anm.:
- die ungeraden Pins sind jeweils GND
- die Datei xx-iodefs.inc (s. Software) entählt die genaue Belegung des Atmel
Mit den Tastern hat man die Möglichkeit dem Computer ein Ereigniss mitzuteilen, z.B. 'Shutdown' o.a. . Wer meine Software benutzt kann durch die Taster ins SETUP gelangen und so Änderungen an den Standarteinstellungen vornehmen (s.u.).
Brown-Out
Aufgrund der intensiven Benutzung des EEPROMs hat es sich gezeigt, das die Brown-out Funktion genutzt werden sollte.
Eingeschalten wird diese mit SP12 durch:
sp12 -D0; sp12 -K111 ; sp12 -V0
(siehe Seite 20/tb. 5 im Atmel-Handbuch)..
Layout
Diesmal habe ich das Layout mit Eagle erstellt. Zum Selbstbau sind Fotoätztechniken von Vorteil.
Download Ätzvorlage als Postscript(49k) | |
Download Ätzvorlage als PDF(23k) | |
Download diese Ansicht als GIF (50k) | |
Download Original Eagle-Layout (48k) (ab 4.10 Light) | |
Stückliste als .pdf (48k) |
Und hier noch ein paar Bilder vom Prototypen zur Layout Version V1.0... | ||
Gehäuse
Ich kaufte mir zu diesem Zweck für ein paar Mark ein einfaches Plastikgehäuse und machte es passend. Aber wie schon bei Modell1 bietet es sich an das Display in den Rechner zu installieren. Mit einem geeigneten Displaytyp(bei kc) funktioniert das wunderbar und man kann den Spannungsregler sparen.
Siehe dazu Unten bei Alternativen zum Selbstbau ..
Zur Software
Die Software für das Zweite Modell habe ich in vielen Punkten weiterentwickelt.
- die LEDs kann man jetzt blinken lassen
- man hat die Wahl zwischen Automatischer oder Manueller Helligkeitssteuerung
- das EEPROM wird auf Fehler geprüft und bei einem schweren Fehler auf Standartwerte gesetzt (ab V0.9x) .
- freie Wahl der Display Grösse (ab V0.93)
- Temperaturanzeige durch 1-Wire Bus Digital-TemperaturSensor DS1820 (ab V0.94)
- Temperatur wird zum Computer gesendet (ab V0.97)
- SETUP-Menu:
- Einstellung der Baudrate und der Flusskontrolle möglich
- Wahl der Standart-Beleuchtungsart - immer AN, immer AUS, AUTOMATISCH
- Beleuchtungsanschaltschwelle jetzt auch per Software anzupassen
- Wahl der Entprellzeit der Taster zum optimalen anpassen an eigene Taster
- Parameter für Temperaturmessung einstellbar (ab V0.94 )
- Anm.: ins Menu entweder beim Start mit Taster 2 oder später durch drücken von Taster 1 UND 2 gleichzeitig..
Download Original-Code
-mein Originalcode und soweit wie Möglich getestet
- Programmcode V0.6 (ohne SETUP, ab ATMEL 2333)
- Programmcode V0.92 (umfangreiches SETUP, nur ab ATMEL 4433)
- Programmcode V0.93a
WICHTIGES UPDATE, VERSION 0.93 sollte nicht mehr benutzt werden
Die Version V0.93 hat einen Fehler wenn Display's ab 20x4 benutzt werden. Dies habe ich in Version V0.93a behoben.
Zur Version:
Es ist jetzt möglich die Displaygrösse einzustellen :
0-63 Spalten
0-3 Zeilen
Damit können jetzt fast alle Displays die einen HD44780 Kompatiblen Controller besitzen mit der Software benutzt werden. Vorbereitet sind Positionen für 16x4 und 20x4 Displays. Weiterhin habe ich ein Makefile zum leichtern compilieren erstellt.
In Planung (Arbeit) ist, die Treiber von Oliver und Jochen einzubinden für NICHT HD44780-Kompatible Displays.
- Programmcode V0.98 ( in diesen Version(en) ist die Temperaturmessung integriert)
- letzte Änderungen:
- Locate Methode umgestellt die Routinen für die großen Displays, konnte ich nicht hundertpro austesten
- CTS-Problem beim DisplayStart behoben
- Anlagen:
durch die Neue Locate-Methode, passen sich die Max-Werte des ~P Befehls automatisch an und haben somit andere Grenzen als angegeben !
Neueste Version V0.98 mit Temperaturmessung
In dieser Version wird der Freie AD-Eingang zur Abfrage des Digitalen Temperatursensors DS1820 genutzt.
Ich habe mich für diesen Sensor entschieden, da sich damit auf einfachem Weg korrekte Temperaturen abfragen lassen. Weiterhin ist es möglich, weitere DS1820 an den Bus anzuschließen und somit an einem I/O-Port mehrere Messwerte erfassen lassen.
Zur Zeit kann die Messung per SETUP Ein- bzw. Ausgeschalten werden. Der Messwert wird auf dem Display an einer festen Position angezeigt. Weiterhin wird der Messwert über die Serielle Schnittstelle an den Computer gesendet.
Folgendes Format enthält der Sendestring:
CVTTT.T -> C:Einleitung, V:KEIN Zeichen oder Minus, TTT.T: Temperatur
Geplant sind demnächst Einstellungen zur :
- Wahlmöglichkeit ob die Ausgabe der Temperatur auf Display/UART/ oder beides erfolgen soll - PRIO 1
- Positionsänderung der Messwertanzeige
- evt. Alarmtemperatur einstellbar machen mit welcher dann einer der LED Port's angesteuert werden kann
- Um diese geplanten Dinge einbauen zu können, habe ich die Texte wieder in das EERPOM gelegt. Damals waren die Daten im EEPROM nicht ganz stabil, deshalb bin ich gerade im Test ob sich das mit der besseren Entkopplung anders verhält.
Download Programmcode V0.98
( Dauertest läuft noch !) Versionen 0.95-0.97 sollten nicht mehr benutzt werden
- Neue Anlagen:
- SETUP-MENU:
...als .pdf
Anschluß des DS1820
Ich habe mich gegen die Phantomspeisung des DS1820 entschieden. Es ist somit Masse/IO/Vcc anzuschließen.
Bei Board vor Version V1.0 ist zusätzlich ein ca. 4k7 Ohm Widerstand zwischen IO und Vcc geschalten werden. Dieser ist in der BoardVersion 1.0 enthalten und aktiv wenn der Jumper 1 gesteckt ist.
Masse und I/O-Pin sind auf der Anschlußklemme vorhanden - PIN 9/10. Die 5V erhält man von einem der PINs auf der PowerConn-Leiste.
Näheres zum DS1820 und 1-Wire-Bus findet ihr im Datenblatt und später hier :).
Download Erweiterungen (tlw. von mir nicht getestet)
-man ist ja zum Glück nicht allein auf der Welt, hier findet ihr Erweiterungen meines Codes
- Code-Erweiterung von Oliver Bendig
- für 20x4 Display nutzbar
- Definition von eigenen Zeichen machbar
- u.a. see readme-file
- Programmcode V0.92.2
- Code-Erweiterung von Jochen Krahl
- für die Kleineren 20x4 Display nutzbar
- erweitert Olivers Version
- u.a. see readme-file
- Programmcode V0.92.2.1
Alternativen zum Selbstbau
Leider ist der Bausatz bei Kernelkoncepts ausverkauft.
Wer mit der Platinenherstellung garnicht klar kommt, kann sich an mich wenden. Nehmt aber Bitte Rücksicht auf meine begrenzte Zeit.
Ansonsten wartet mein Postfach immer auf auftretende Probleme ;)
Nachdem der Artikel zum Modell 1 im Linux-Magazin 02/2001 ( leider nicht mehr online ) erschienen ist, trat die Firma www.kernelconcepts.de an mich heran.
Ergebniss ist, das Ihr jetzt den kompletten Bausatz dort bestellen könnt und auch noch einige andere Displaytypen. Besonders hervorzuheben ist ein KLEINES 4x20-DISPLAY, welches wunderbar in eine 51/4 Laufwerksblende passt.
Als Preisbeispiel nenne ich hier die feritg geäzte Plaine für 10DM. Ein Blick dahin dürfte sich also lohnen.
( Nicht mehr erhältlich )
Kommerzielle Nutzung
Aus gegebenem Anlass möchte ich darauf hinweisen, dass eine kommerzielle Nutzung , Vermarktung oder ähnliches nur nach schriftlicher Genehmigung durch mich erlaubt ist.
Anm.:
Die Entwicklung des Displays hat eine Menge Arbeit gemacht und wer damit Geld verdient, sollte doch Bitte die Grundsätze der 'Fairniss' einhalten.
Entwickler
Michael Majunke
und
Sascha Weber
Anmerkung: Original Site: www.mmajunke.de/display.htm