- fchao-Sinus-Wechselrichter AliExpress         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Große Zeichen auf Display ausgeben

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    17.11.2005
    Beiträge
    272

    Große Zeichen auf Display ausgeben

    Anzeige

    Praxistest und DIY Projekte
    Hallo,

    ich will eine Uhr bauen. nur sieht man auf einem 2x16 Display nicht wirklich viel. also habe ich mir gedacht das ich einfach große Zeichen darstelle.

    aber leider geht das mit deflcdchar ja nur bis zu 8 Zeichen.

    ich habe es geschafft zwei zeichen auszugeben aber da ich aber pro zeichen 4 felder benötige und ich 8 darstellen will reicht das nicht ganz.

    kann ich das irgendwie die begrenzung umgehen? oder einfach per datenfeld die zeichen laden?

    Code:
    '**********************************
    '*    Atmega8 mit großen Zahlen   *
    '**********************************
    
    $regfile "m8def.dat"
    $crystal = 1000000
    
    'blaues display
    Config Lcdpin = Pin , Db4 = Portd.2 , Db5 = Portd.3 , Db6 = Portd.4 , Db7 = Portd.5 , E = Portd.1 , Rs = Portd.0
    Config Lcdbus = 4
    Config Lcd = 16 * 2
    
    
    'Zeichen definieren
    '**** 1 ****
    Deflcdchar 0 , 32 , 1 , 3 , 7 , 15 , 1 , 1 , 1              ' replace ? with number (0-7)
    Deflcdchar 1 , 32 , 16 , 16 , 16 , 16 , 16 , 16 , 16        ' replace ? with number (0-7)
    Deflcdchar 2 , 1 , 1 , 1 , 1 , 1 , 7 , 15 , 32              ' replace ? with number (0-7)
    Deflcdchar 3 , 16 , 16 , 16 , 16 , 16 , 30 , 31 , 32        ' replace ? with number (0-7)
    
    '**** 2 ****
    Deflcdchar 4 , 32 , 7 , 15 , 32 , 32 , 32 , 7 , 15          ' replace ? with number (0-7)
    Deflcdchar 5 , 32 , 28 , 30 , 6 , 6 , 6 , 30 , 28           ' replace ? with number (0-7)
    Deflcdchar 6 , 12 , 12 , 12 , 12 , 12 , 15 , 7 , 32         ' replace ? with number (0-7)
    Deflcdchar 7 , 32 , 32 , 32 , 32 , 32 , 28 , 30 , 32        ' replace ? with number (0-7)
    
    Cls                                                         'wichtig, muss hin
    
    Do
    
    Cls
    
    '* 1 ********************************
    Locate 1 , 1
    Lcd Chr(0)
    
    Locate 1 , 2
    Lcd Chr(1)
    
    Locate 2 , 1
    Lcd Chr(2)
    
    Locate 2 , 2
    Lcd Chr(3)
    
    Wait 1
    
    '* 2 ********************************
    Locate 1 , 3
    Lcd Chr(4)
    
    Locate 1 , 4
    Lcd Chr(5)
    
    Locate 2 , 3
    Lcd Chr(6)
    
    Locate 2 , 4
    Lcd Chr(7)
    
    Wait 1
    
    Loop
    mit dem stückchen code zeigt er die ersten beiden zahlen an.

    also meine frage, kann ich irgendwie mehr eigene zeichen definieren. oder gibt es eine andere möglichkeit solche großen zeichen darzustellen?

    cu arno

    PS: warum kann ich keine bilder ochladen. es kommtimmer die meldung das ich eine grenze von 1MB erreicht hätte. mein bild is nur 6k groß.

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Hallo, schau mal hier ganz unten...
    Dort ist ja solch eine Große Uhr, ich denke bei Dieser Lösung kommst Du mit 8 selbst Definierten Zeichen aus...

    Gruß Sebastian

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    17.11.2005
    Beiträge
    272
    ja, sowas habe ich schon für 4x20 displays gesehen. aber bei 2x16 geht das leider nicht auf die art. da muss was anderes her.

    thx arno

  4. #4
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    o weh, richtig, Du hast 2x16, sorry, dann kommt diese Lösung nicht in
    Frage ...
    Du kannst aber nur 8 Zeichen selber definieren....
    Ich weiß nicht wie es dann aussehen wird, aber was ist wenn Du Ecken definierst, z.B.
    Code:
    *****            *                           *****
           *            *                       
           *            *                    
           *            *                   
           *            *                    
           *            *                    
           *            *                     
           *            *****      *****
    usw.
    Wenn man die dann gekonnt im raster 2x2 Zeichen setzt, könnte man schon bald alle Zeichen 0-9 abdecken, oder?

    Gruß Sebastian

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    26.02.2006
    Ort
    München
    Alter
    35
    Beiträge
    161
    Wie wär's denn mit ner Binäruhr ?

    zB.:
    5 Bit für die Stunden: 10101 = 21 Uhr (in der ersten Zeile)
    7 Bit für die Minuten: 0110000 = 48 Minuten (in der zweiten Zeile)

  6. #6
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Wie wär's denn mit ner Binäruhr
    Geanau, Da ich zur Zeit sowieso mit einem Display dran bin habe ich es versucht mit den Ecken..... Für die 1 und 0 hat es noch gereicht, bei 2 hab ich leider festgestellt, daß mir die 8 Zeichen doch nicht reichen.....

    Gruß Sebastian
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken lcd_188.jpg  

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    17.11.2005
    Beiträge
    272
    @izaseba

    ja, die idee mit den ecken ist gut, nur leider benötigt man mehr zeichen als man definieren kann.
    die binäruhr wäre ne idee, aber da muss man ja bei abelesen rechnen, ausserdem kann man de ganz leicht mit LEDs bauen, kann man sich also das display sparen.

    kann man eventuell per assembler da noch paar zeichen laden. als speicher kann man ja den eeprom nutzten.


    cu arno

  8. #8
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Ich befürchte, da hilft kein Assembler, ind kein Weihwasser,
    die Beschränkung liegt bei HD44780 der kann nur 8 benutzerdefinierte Zeichen

    Gruß Sebastian

  9. #9
    Erfahrener Benutzer Robotik Einstein Avatar von Andree-HB
    Registriert seit
    10.12.2004
    Ort
    Bremen
    Alter
    53
    Beiträge
    2.803
    ...bastel Dir doch `ne Sub, die bei jedem Aufuf die Zeichen nach Deinen Wünschen neu definiert und darstellt und per locate positioniert. Wenn man die Zeilen dann schnell genug refresht, dann müsste es doch gehen.

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    22.01.2005
    Beiträge
    23
    Hast du schon mal im Datenblatt des LCD nach Sonderzeichen gesucht ?
    Ich kann mir vorstellen das da einige dabei sind die Du mit einbauen könntest.
    Gruß Sven

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad