- fchao-Sinus-Wechselrichter AliExpress         
Ergebnis 1 bis 10 von 11

Thema: % Zeichen und Balken auf Display ausgeben

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    73
    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!

  2. #2
    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.

  3. #3
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.698
    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

  4. #4
    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.

  5. #5
    Erfahrener Benutzer Roboter Genie Avatar von BMS
    Registriert seit
    21.06.2006
    Ort
    TT,KA
    Alter
    34
    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)

  6. #6
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.698
    ... weiss leider nicht auf welcher Zahl das Prozent liegt ...
    Das ist ein geringes Problem. Es gibt etliche Möglichkeiten ans Prozentzeichen zu kommen. Beispiele wieder NICHT Fleury-Lib-proof (sprich: nicht getestet).

    Die Einfachste:
    Code:
      SetCursor (2, 7);
      lcd_data('%');
    malt in die zweite Zeile auf die achte Position das Prozentzeichen. Achte Postion, weil die erste mit Null adressiert wird: SetCursor (2, 0);

    Kaum komplizierter:
    Code:
      SetCursor (2, 7);
      lcd_data(37);
    macht das Gleiche, ist aber schlecht leserlich im Quellcode.

    Und "hinterrücks durchs Ohr"
    Code:
      #define LCD_CHAR_Przt 37 //%-Zeichen
      SetCursor (2, 7);
      lcd_data(LCD_CHAR_Przt);
    Schon wieder dasselbe, nur umständlich.

    Oder im String:
    Code:
      Line1(); // An den Anfang der 1. Zeile springen
      lcd_string("Rabatt 22 %"); // String ausgeben ab Anfang erste Zeile
    Vielleicht schaust Du Dir mal diese Tabelle an (klick hier).
    Ciao sagt der JoeamBerg

Ä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