- Akku Tests und Balkonkraftwerk Speicher         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: % Zeichen und Balken auf Display ausgeben

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    20.02.2013
    Beiträge
    21

    % Zeichen und Balken auf Display ausgeben

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Ich verwende die Bibliothek von Peter Fleury(Controller: HD44780U LCD library) und würde gerne ein % Zeichen und einen vollen Balken anzeigen.
    Ich habe schon viel gegoogelt aber leider konnte ich mit nix was ich bisher gefunden habe so wirklich anfangen bzw. zum Laufen bringen.

    Danke für eure Hilfe.

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.062
    Du findest die möglichen Zeichen (die das LCD darstellen kann) im jeweiligen Datenblatt. Es gibt verschiedene Rom Codes auf die du achten musst. Hier habe ich ein recht ausführliches DB gefunden https://www.sparkfun.com/datasheets/LCD/HD44780.pdf
    Dort findest du auf S17 bzw 18 die Zeichensätze. Das % Zeichen ist in beiden vorhanden. Wenn du einen Balken erzeugen willst kannst du noch das CGRAM verwenden. Du kannst dort selbst generierte Zeichen verwenden, wie das geht steht (soweit ich beim überfliegen gesehen habe) auch drinnen. Ansonsten findet man im Internet genug Codes bzw Erklärungen.

    MfG Hannes

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    20.02.2013
    Beiträge
    21
    und mit welchem Befehl spreche ich die higher und lower bits und das CGRAM denn an?

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von 021aet04
    Registriert seit
    17.01.2005
    Ort
    Niklasdorf
    Alter
    36
    Beiträge
    5.062
    So wie du jedes andere Zeichen auch ansprichst. Normalerweise sollte es ganz einfach so gehen wie du die anderen Zeichen auch überträgst (wie normalen Text). Sollte das nicht funktionieren musst du einfach das Higher- und das lower Nibble zusammensetzen und als Daten (RS=1) an das LCD senden. Du musst aber direkt das zeichen senden und nicht als String.

    Beim CGRAM musst du es als Zeichen senden.

    MfG Hannes

  5. #5
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    72
    Beiträge
    11.077
    Hallo!

    Ich möchte nur als Lektüre vorschlagen: http://www.roboternetz.de/community/...n-auf-16*2-LCD .
    MfG (Mit feinem Grübeln) Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch) "Irgendwas" geht "irgendwie" immer...(Rabenauge) Machs - und berichte.(oberallgeier) Man weißt wie, aber nie warum. Gut zu wissen, was man nicht weiß. Zuerst messen, danach fragen. Was heute geht, wurde gestern gebastelt. http://www.youtube.com/watch?v=qOAnVO3y2u8 Danke!

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    20.02.2013
    Beiträge
    21
    mit dem Befehl: lcd_putc('%'); zeigt er es leider immer noch nicht an mhmmmmm.

  7. #7
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.652
    Zitat Zitat von Jasmin13 Beitrag anzeigen
    mit dem Befehl: lcd_putc('%'); zeigt er es leider immer noch nicht an mhmmmmm.
    Mal ne ganz dumme Frage: Du hast das LCD schon (vorher) initialisiert?
    Hast Du die (richtige) Position gewählt, wo das Zeichen hinkommen soll?
    Bei mir (Sprache C, NICHT-Fleury-Lib) sieht es mit Sonderzeichen z.B. so aus:

    Code:
    ...
    #define LCD_CHAR_OMEGA 244 //Omega-Zeichen
    #define LCD_CHAR_U 228 //µ-Zeichen
    ...
    lcd_init(); //
    ...
    lcd_clear(); // Vor LCD-Ausgabe Display leeren
    Line1(); // An den Anfang der 1. Zeile springen
    // oder auf Position: SetCursor (2, 10) => SetCursor (x,y), x=zeile {1,2}, y=Pos {0, 15}
    ...
    lcd_string("LCD-Test ^"); // String ausgeben
    ...
    lcd_data(LCD_CHAR_OMEGA); //Omega - käme hier direkt nach dem Winkel raus...
    Viel Erfolg noch
    Geändert von oberallgeier (12.04.2013 um 08:10 Uhr) Grund: Fehlenden Zeilenwechsel im Code korrigiert
    Ciao sagt der JoeamBerg

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    20.02.2013
    Beiträge
    21
    danke oberallgeier für den Programmcode, hat geklappt konnte damit was darstellen, aber leider anstatt das Omega Zeichen ein OHM Zeichen, weiss leider nicht auf welcher Zahl das Prozent liegt...

    Vielleicht kann mir damit ja noch jemand weiterhilfen.

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von BMS
    Registriert seit
    21.06.2006
    Ort
    TT,KA
    Alter
    33
    Beiträge
    1.192
    Hallo,
    in den Datenblättern der Displays ist meist der Zeichensatz aufgeführt.
    Ich gehe jetzt mal von einem Standardcontroller HD44780 aus.
    Also z.B. in http://www.lcd-module.de/pdf/doma/dip162-d.pdf auf Seite 2.
    Das Prozentzeichen ist in der Tabelle in der linken Spalte.
    Wenn man sich die Beschriftungen dazu anschaut ergibt sich Upper 4 bit: 0010 und Lower 4 bit: 0101, zusammengesetzt also 00100101. Die Binärzahl in Dezimal umgerechnet ist 37.
    Also kannst du nun mit
    Code:
    #define LCD_CHAR_PROZENT 37
    ...
    lcd_data(LCD_CHAR_PROZENT);
    das Prozentzeichen % anzeigen
    Falls auf dem Display etwas anderes anzeigt wird, hat dein Display wohl einen anderen Zeichensatz. Welches Display verwendest du denn?
    Was stellst du dir unter einem "Balken" vor? Alle Pixel auf dunkel? Das wäre nach Tabelle 11111111 binär, also 255 dezimal.
    Grüße,
    Bernhard

    <pingelig ein>
    aber leider anstatt das Omega Zeichen ein OHM Zeichen
    das ist dasselbe <pingelig aus>
    Geändert von BMS (12.04.2013 um 09:23 Uhr)

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    07.03.2011
    Beiträge
    1.899
    Zitat Zitat von Jasmin13 Beitrag anzeigen
    Ich verwende die Bibliothek von Peter Fleury(Controller: HD44780U LCD library) und würde gerne ein % Zeichen ...
    Das '%' ist doch ein ganz normales ASCII-Zeichen, wo ist das Problem?

    MfG Klebwax
    Strom fließt auch durch krumme Drähte !

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Uhrzeit auf LCD mit Arduino ausgeben (Eigene Zeichen)
    Von NukeNoob im Forum Software, Algorithmen und KI
    Antworten: 5
    Letzter Beitrag: 15.04.2012, 12:54
  2. Ampere mit Atmega 8 auslesen und auf einem Display ausgeben
    Von RobbyMartin im Forum AVR Hardwarethemen
    Antworten: 4
    Letzter Beitrag: 03.04.2010, 10:29
  3. Antworten: 5
    Letzter Beitrag: 14.04.2007, 18:03
  4. Variablen auf Display ausgeben
    Von palermo im Forum C - Programmierung (GCC u.a.)
    Antworten: 20
    Letzter Beitrag: 22.12.2006, 09:55
  5. Große Zeichen auf Display ausgeben
    Von Olle_Filzlaus im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 11
    Letzter Beitrag: 28.02.2006, 20:57

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen