www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD-Ausgabe


Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab mir ein Thermometer gebaut.
Die Temperatur wird über ein LCD ausgegeben.

Und nun mein Problem:

Kann kein °(grad)-Zeichen ausgeben.

Habs schon mit '°' versucht oder direkt den ASCII-Code(176) geschickt.
Anzeigen tuts aber immer etwas anderes.

Wer weiß was es da haben könnte?

mfg Chris!

Autor: Thomas H. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Chris,

versuche es einmal mit der direkten Ausgabe von 0xDF. Das muesste 
klappen.

Viele Gruesse,

Thomas H.

Autor: Kilian Nötzold (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe garde mal in einer ascii Tabbel nachgeguckt da steht das 248 
das "°" sein sollte. Bekommst du eventuell ein "░" das ist auf 
176. Oder ist das bei einem LCD anders?

Autor: Kilian Nötzold (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK  ASCII 176 hat das Forum nicht darstellen können das sollte so ein 
Kasten sein http://www.asciitable.com/

Autor: Rudolf Sosnowsky (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Chris und Kilian,

das hat mit ASCII nichts zu tun, sondern mit der Zeichentabelle des 
LCD-Controllers. 0xDF (oder 223 dezimal) entspricht bei einer 
Standard-Belegung (HD44780-kompatibel) dem Grad-Zeichen. Wenn nicht, 
hilft nur, die Tabelle herauszufinden. Vielleicht hast Du (Chris) einen 
Controller mit einer abweichenden Belegung.

Gruß, Rudolf.

Rudolf Sosnowsky +++ LC Design
EPSON Technology Partner
Internet http://www.LC-Design.de

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Chris,
mich würd mal interessieren, wie deine Schaltung aufgebaut ist. Ich bin 
da auch sowas ähnliches am Planen dran, bekomm aber nicht so richtig was 
hin.
Welche Temp-Sensoren hast du verwendet, analog oder digital?
MfG Marco

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marco!

Hab nen digitalen DS1820.
Ist der mit der 1-Wire Ansteuerung.

Den Temp.Sensor kannst du direkt an den Port hängen.
Dann noch + und Masse anschliessen, ein Programm schreiben
und los kanns gehen.

mfg Chris!

P.S.: Danke für eure Antworten!!!

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo nochmal,
Wie hast du den 1820 an den AVR angeschlossen?
Meine Gedankengang war: Da der 1820 1-wire ist, muss ich ihn an den UART 
hängen. Nun hab ich am UART aber Rx und Tx, am Sensor nur den DQ.
Muss ich den Rx und Tx irgendwie zusammenschalten, da die Übertragung 
zum 1820 ja wohl bidirektional ist?
MfG marco

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nope, das 1-Wire Protokoll mußt du selber stricken. Die Ports sind egal. 
Bascom kann das glaub ich, und für C gibt es sicher auch irgendwo Libs

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Falls Dein LCD kein "°" in seiner Zeichentabelle hat, kannst Du es 
selbst definieren.

Bei den meisten LCD kannst Du ja bis zu 16 Zeichen selber definieren. 
Wie das geht, steht im HD44780 Datenblatt.

Die werden aber im RAM abgespeichert, d.h. Du must sie bei jedem 
Einschalten neu zum LCD senden.


Peter

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marco,

zum DS1820 findest Du hier was:

http://www.specs.de/~danni/appl/soft/c51/thclock/index.htm

bzw.:

http://www.specs.de/~danni/ace/ds1820/index.htm


Ich finde die Dinger super, funktionierten auf Anhieb und man kann 
beliebig viele parallel schalten.
Ideal für das vollautomatische Haus.


Peter

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Peter
Das vollautomatische HAus? Hört sich gut an.
Bis zu welcher Kabellänge kann ich denn max. gehen?
MfG Marco

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einspruch. Ich hab schon mit dem 1-Wire Bus zu tun gehabt.
1. Beliebig viele Teilnehmer ist nicht
2. die Reichweite ist stark begrenzt
Wir hatten mal Probleme mit dem Bus, nur weil die Leitung in einer 
Maschine anders verlegt wurde. Dadurch wurde das Signal so stark 
verschleppt das nichts mehr ankam.
Also der Bus ist für max 2-5m Kabel geeignet, und das auch nur, wenn 
Leitungen mit geringen Kapazitäten verwendet werden, also ohne 
Abschirmung. Dadurch kommen natürlich Störungen auf die Leitung.
Also, vergiß am besten, damit ein Hausumspannendes Netztwerk aufzubauen. 
Nimm RS485

Gruß
Markus

Autor: Marco (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
@markus
"Die Ports sind egal"
Kann ich wirklich jeden freien Port nehmen? Im Datenblatt des 1820 steht 
was von Rx und Tx über einen 4k7 auf V+ ?

Ich benutz den 4433. Hat nicht jemand einen funktionierenden Code zur 
Ansteuerung in AVR ASM für mich?
Ich brauch jetzt langsam ein Erfolgserlebnis, sonst wandert das Ding in 
die Schublade. :-)
MfG marco

Autor: Markus Burrer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Ports sind egal. Aber mit 1-Wire hast Du Dir für "das erste 
Erfolgserlebnis" nicht grad das einfachste rausgesucht.
Such mal bei www.avrfreaks.net

Autor: Fritz Ganter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

So, ich hab gestern den Sensor gekauft, und heute endlich eingelötet.
Ging tadellos.
Tip zum Speichersparen:
Um die Temperatur auszugeben verwende ich:
    sprintf(text,"%d.%s°C",p/2,(p&1)?"5":"0");
Das spart 400 Byte gegenüber sprintf(text,"%.1f°C",p/2.0);
p ist das Byte, welches von THERMO_GetTemp() zurückgegeben wird.

Eine Frage hab ich, muss man in THERMO_GetTemp() wirklich 2 Sekunden
nach dem THERMO_Init_Temp_Read() warten? Muss man
THERMO_Init_Temp_Read() immer machen, oder reicht es einmal in meinen
Hauptprogramm und dann mach ich den Rest?

Autor: Fritz Ganter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, falscher Thread!

Habs nochmal im richtigen gepostet.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.