S 65 Anssteuerung

www.comwebnet.de
Verfügbare Informationen zu "S 65 Anssteuerung"

  • Qualität des Beitrags: 0 Sterne
  • Beteiligte Poster: Wigbert - avrnix - merlin63
  • Forum: www.comwebnet.de
  • Forenbeschreibung: AVR Mikrocontroller und Elektronik - Forum - www.comwebnet.de
  • aus dem Unterforum: Fragen zur Software
  • Antworten: 17
  • Forum gestartet am: Mittwoch 25.10.2006
  • Sprache: deutsch
  • Link zum Originaltopic: S 65 Anssteuerung
  • Letzte Antwort: vor 16 Jahren, 7 Monaten, 13 Tagen, 2 Stunden, 1 Minute
  • Alle Beiträge und Antworten zu "S 65 Anssteuerung"

    Re: S 65 Anssteuerung

    Wigbert - 22.03.2007, 09:22

    S 65 Anssteuerung
    Hallo,
    vielleicht kann mir mal jemand ein Beispielcode in Bascom
    -nach der Initialisierung , auch wenn es nur 10 Pixsel sind, reinstellen.
    Ich muss das mal gesehen haben.
    Vielleicht mal 10x10 Pixel mit den Konverter erzeugen,
    und dann Beispielcode.
    Dank Euch allen



    Re: S 65 Anssteuerung

    avrnix - 22.03.2007, 15:27


    Das Programm ist eigentlich einfach:

    Restore Tacho
    Read X
    Read Y
    X = X - 1
    Y = Y - 1
    For Y1 = 0 To Y
    For X1 = 0 To X
    Read Z
    Call Pset(x1 , Y1 , Z)
    Next X1
    Next Y1

    Das Programm hast du von mir bekomen "S65_Font.bas"
    Unten stehen die DATA Anweidungen drinnne.

    Erstelle erstmal ein 24Bit Bmp datei ( Paint Programm ) und Koventiere es mit dem Programm dann , danach musst du wie oben die Datei auslesen.

    Bin jetzt nicht zu Hause. Wenn das nicht reicht schreibe noch mal hier rein.
    Versuche dann man ein Demo zu Basteln.



    :idea:



    Re: S 65 Anssteuerung

    Wigbert - 22.03.2007, 19:19


    Hallo Dirk,
    mein Outlook-Express hat Deine Front....bas gelöscht(nicht sicher?).
    Mal sehen ob ich die wiederfinde. Man o man.



    Re: S 65 Anssteuerung

    avrnix - 22.03.2007, 19:34





    ' Ohne RLE Komprimierung !
    ' BMPConverter mit Bild in ein Verzeichnis. Und Punkt 1 des Konverters
    ' wandelt das BMP 24Bit um in dieses hier:

    Sub Pset(byval Lx1 As Byte , Ly1 As Byte , Color As Word)

    Rs = Kommando
    '------- Locate ------
    Ausgabe = &H0600 + Ly1 'Y
    Gosub Lcd_send
    Ausgabe = &H0700 + Lx1 'X
    Gosub Lcd_send
    '---------------------
    Rs = Parameter
    Cs = 0
    Shiftout Sdata , Sclk , Color , 0
    Cs = 1
    End Sub



    Restore Ok ' OK - Bild wird ausgegeben
    Read X
    Read Y


    X = X - 1
    Y = Y - 1
    For Y1 = 0 To Y
    For X1 = 0 To X
    Read Z
    Call Pset(x1 , Y1 , Z)
    Next X1
    Next Y1




    '#################################################################################
    OK: 'originalname: OK.bmp
    'In 16Bit RAW konvertiertes Bitmap - Aufloesung: 52x36

    data 52, 36
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 50744%, 35953%
    data 19049%, 0%, 0%, 19049%, 35953%, 50744%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 31727%
    data 0%, 0%, 0%, 0%, 35953%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 54938%, 19049%, 0%, 0%, 0%, 0%, 0%, 0%
    data 0%, 0%, 27469%, 59164%, 65535%, 65535%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 54938%, 0%, 0%, 0%, 0%, 0%
    data 63390%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 54938%, 0%, 0%, 0%, 0%
    data 0%, 0%, 0%, 0%, 0%, 0%, 0%, 0%
    data 57051%, 65535%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 65535%, 65535%, 65535%, 65535%, 65535%, 27469%, 0%
    data 0%, 0%, 0%, 42292%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 63390%, 19049%
    data 0%, 0%, 0%, 0%, 50744%, 65535%, 65535%, 50744%
    data 0%, 0%, 0%, 0%, 19049%, 65535%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 31727%, 65535%, 65535%
    data 65535%, 48631%, 0%, 0%, 0%, 0%, 19049%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 46486%, 0%, 0%, 0%, 0%, 48631%
    data 65535%, 65535%, 65535%, 65535%, 48631%, 0%, 0%, 0%
    data 0%, 46486%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 0%, 19049%, 61277%, 65535%, 19049%, 0%, 0%
    data 0%, 0%, 48631%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 31727%, 0%
    data 0%, 0%, 0%, 61277%, 65535%, 65535%, 65535%, 65535%
    data 61277%, 0%, 0%, 0%, 0%, 31727%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 0%, 0%, 0%
    data 31727%, 0%, 0%, 0%, 0%, 27469%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 0%, 0%, 0%, 0%, 0%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 0%, 0%, 0%
    data 0%, 0%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 0%, 0%, 0%, 0%, 0%, 0%, 0%
    data 0%, 54938%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 0%, 0%
    data 0%, 0%, 0%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 0%, 0%, 0%, 0%, 0%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 0%, 0%, 0%
    data 0%, 0%, 0%, 0%, 31727%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 0%, 0%, 0%, 0%, 0%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 0%, 0%, 0%
    data 0%, 0%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 0%, 0%, 0%, 0%, 0%, 0%, 0%
    data 59164%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 35953%, 0%
    data 0%, 0%, 0%, 61277%, 65535%, 65535%, 65535%, 65535%
    data 61277%, 0%, 0%, 0%, 0%, 31727%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 54938%, 0%, 0%
    data 0%, 0%, 0%, 0%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 46486%, 0%, 0%, 0%, 0%, 48631%
    data 65535%, 65535%, 65535%, 65535%, 48631%, 0%, 0%, 0%
    data 0%, 46486%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 65535%, 54938%, 0%, 0%, 0%, 0%, 0%
    data 31727%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 63390%, 19049%
    data 0%, 0%, 0%, 0%, 50744%, 65535%, 65535%, 50744%
    data 0%, 0%, 0%, 0%, 0%, 63390%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 65535%, 65535%, 54938%
    data 0%, 0%, 0%, 0%, 0%, 31727%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 54938%, 0%, 0%, 0%, 0%
    data 0%, 0%, 0%, 0%, 0%, 0%, 0%, 0%
    data 54938%, 65535%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 65535%, 65535%, 65535%, 54938%, 0%, 0%, 0%
    data 0%, 0%, 40147%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 54938%, 19049%, 0%, 0%, 0%, 0%, 0%, 0%
    data 0%, 0%, 19049%, 54938%, 65535%, 65535%, 65535%, 65535%
    data 0%, 0%, 0%, 0%, 0%, 65535%, 65535%, 65535%
    data 65535%, 54938%, 0%, 0%, 0%, 0%, 0%, 42292%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 50744%, 35953%
    data 19049%, 0%, 0%, 19049%, 35953%, 50744%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 0%, 0%, 0%, 0%
    data 0%, 65535%, 65535%, 65535%, 65535%, 65535%, 54938%, 0%
    data 0%, 0%, 0%, 0%, 42292%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    data 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%, 65535%
    'End of Bitmap
    '#################################################################################



    Re: S 65 Anssteuerung

    avrnix - 22.03.2007, 19:47


    So noch zur Erlärung:

    RESTORE OK: -> spring zur Marke OK

    data 53,65 -> Bildgröße 53 x 65
    data daten..... -> rest sind daten

    X und Y so anpassen das es von 0,0 Anfangspunkt verschoben wird.

    Schick mal ein Bild wenn es geklappt hat sonst deine Fragen :D



    Re: S 65 Anssteuerung

    merlin63 - 21.09.2007, 23:22


    hallöle

    habe also hier heute einen ganzen tag verbracht um mal ein bild auf dem display zur anzeige zu bringen. aufbauend auf dem beispiel hier.
    aber wo um himmelswillen ist die SUB LCD-SEND :shock:

    habe ich jetzt das brett vor dem kopf odr wie?



    Re: S 65 Anssteuerung

    avrnix - 22.09.2007, 08:20


    Die LCD_INIT etc. sind überrall gelich deswegen wurde das mal weggelassen

    folgendes das ganze Programm ohne Fonts hat also keine Schrift:

    '8 MHz Takt, bei höherem Takt muss evtl. die Ausgabegeschwindigkeit der Daten an das
    ' www.comwebnet.de

    $regfile = "M32def.dat"
    $crystal = 16000000 '8 MHz
    $baud = 19200

    $hwstack = 128
    $swstack = 128
    $framesize = 128


    Const Kommando = 1 'Eine folgendes Kommando wird durch "1" eingeleitet
    Const Parameter = 0 'Eine folgende Parameterübergabe wird durch "0" eingeleitet

    'Sclk Alias Portb.7
    'Sdata Alias Portb.5
    'Rs Alias Portb.0
    'Lcdreset Alias Portb.3
    'Cs Alias Portb.4


    Rs Alias Portb.0
    Lcdreset Alias Portb.1
    Cs Alias Portb.2
    Sclk Alias Portb.3
    Sdata Alias Portb.4

    Ddrb = &B11111111

    'Port D als Output

    '******************************************************************************

    Const Blau = &B0000000000011111 'Vordefinierte Konstanten für die Farbwerte machen das Programmiererleben leichter:
    Const Gelb = &B1111111111100000 '65.000 Farben Modus heißt die Farben liegen als Doppelbytes vor
    Const Rot = &B1111100000000000
    Const Gruen = &B0000011111100000
    Const Schwarz = &B0000000000000000
    Const Weiss = &B1111111111111111
    Const Hellgruen = &B1001111111110011
    Const Dunkelgruen = &B0000001101100000
    Const Dunkelrot = &B1001100000000000
    Const Dunkelblau = &B0000000000010011
    Const Hellblau = &B1101111011011111
    Const Orange = &B1111110011000110
    Const Orange2 = &B1111101110000011
    Const Lila = &B1111100000011111

    '*******************************************************************************


    Declare Sub Cls_bottomtop(byval Color As Word)
    Declare Sub Cls_leftright(byval Color As Word)
    Declare Sub Lcd_print(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)
    Declare Sub Lcd_print_klein(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)
    Declare Sub Pset(byval Lx1 As Byte , Byvally1 As Byte , Byvalcolor As Word)
    Declare Sub Lcd_box(byval Lx1 As Byte , Byval Ly1 As Byte , Byval Lx2 As Byte , Byval Ly2 As Byte , Byval Color As Word)
    '*** Achtung:
    '*** Nicht alle Variable werden benützt ! ***


    Dim Fontsize As Byte
    Dim Lcd_posx As Byte
    Dim Lcd_posy As Byte
    Dim Lcd_fcolor As Word , Drehung As Byte
    Dim Lcd_bcolor As Word
    Dim Fontbreite As Byte , Fonthoehe As Byte , Xpixel As Byte , Ypixel As Byte
    Dim R As Integer , X1 As Byte , X2 As Byte , Y1 As Byte , Y2 As Byte , E As Byte , F As Integer , G As Long , Zeichen As String * 1
    Dim A As Word , B As Byte , C As Integer , D As Integer , T1 As Byte , T2 As Byte
    Dim Pix As Byte , Gapx As Double , Gapy As Double , S As Byte
    Dim X As Byte , Y As Byte , H As Integer , M As Integer , Pixel As Integer , Schleife As Word , Hx As Integer , Hy As Integer , Xinc As Integer , Yinc As Integer
    Dim Temp As Byte
    Dim Trot As Byte , Tblau As Byte , Tgruen As Byte
    Dim Lx1 As Byte , Ly1 As Byte , Zeichenarraylsb(16) As Byte , Zeichenarraymsb(16) As Byte , I As Byte
    '------ Font ---------------------
    Dim Fontb As Byte , Fonth As Byte
    Dim Zeile As Word
    '----------------------------------

    'Dim HG as Word, VG as Word
    Dim Temp1 As Byte , Temp2 As Byte , Temp3 As Byte , Temp4 As Byte

    Dim Ausgabe As Word
    Dim Tempw As Word
    Dim Farbe As Word
    Dim G_byte As Byte , Type As Byte
    Dim Tempfb As Byte
    Dim Anzeige As String * 3
    Dim Text1 As String * 1
    Dim Text2 As String * 2
    Dim Text3 As String * 3
    Dim Drehzahl As String * 4
    Dim Anzeigedrehzahl As String * 4
    Dim Id As Word
    Dim Y1a As Byte
    Dim X1a As Byte
    Dim Z As Word




    '*******************************************************************************
    'Start usage S65-display with Reset and Init
    '*******************************************************************************
    '------------------------- Reset is important ----------------------------------
    Lcdreset = 1
    Waitms 10
    Lcdreset = 0 'Reset
    Cs = 1
    Sclk = 1
    Sdata = 1
    Rs = 1
    Waitms 2
    Lcdreset = 1 'Reset Ende
    '-------------------------------------------------------------------------------
    '-------------------------- Init is important ----------------------------------
    '********************** Displayinitialisierung ********************************
    Restore Init0
    For R = 1 To 2
    Read Ausgabe
    Gosub Lcd_send
    Next

    Waitms 50

    Restore Init1
    For R = 1 To 10
    Read Ausgabe
    Gosub Lcd_send
    Next
    '**** Important ***
    Waitms 7 '*** min. 7 ms or longer !!! ***
    '******************
    Restore Init2
    For R = 1 To 23
    Read Ausgabe
    Gosub Lcd_send
    Next
    '*******************************************************************************
    '-------------------------------------------------------------------------------

    Call Cls_bottomtop(schwarz)
    For X = 1 To 100
    Call Pset(x , 50 , Blau)
    Next X

    Wait 1

    Restore Tacho
    Read X
    Read Y


    X = X - 1
    Y = Y - 1
    For Y1 = 0 To Y
    For X1 = 0 To X
    Read Z
    'Print "X=" ; X ; " Y=" ; Y ; " Color=" ; Z
    Call Pset(x1 , Y1 , Z)
    Next X1
    Next Y1

    Wait 2



    Call Lcd_print_klein( "Total: 100254 km" , 1 , 6 , 1 , Rot , Schwarz)
    Call Lcd_print_klein( "Trip : 245 km" , 1 , 7 , 1 , Weiss , Schwarz)



    End





    '------------------------------------ SUB- Routinen ----------------------------
    'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Lcd_send:
    Cs = 0
    Shiftout Sdata , Sclk , Ausgabe , 0 'Msbl
    Cs = 1
    Return
    '-------------------------------------------------------------------------------



    '------------------------------------------------------------------
    Sub Cls_bottomtop(byval Color As Word)
    ' send window write start sequence
    Rs = Kommando
    Ausgabe = &HEF90
    Gosub Lcd_send
    Ausgabe = &H0504 ' Direction or &H0500
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0800 '+ Y1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0983 '+ Y2 (131)
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0A00 '+ X1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0BAF '+ X2 (175)
    Gosub Lcd_send
    '-----------------------
    Rs = Parameter
    For Tempw = 1 To 23232 ' 132X176
    Cs = 0
    Shiftout Sdata , Sclk , Color , 0 'Msbl
    Cs = 1
    Next
    End Sub

    Sub Pset(byval Lx1 As Byte , Ly1 As Byte , Color As Word)

    Rs = Kommando
    '------- Locate ------
    Ausgabe = &H0600 + Ly1 'Y
    Gosub Lcd_send
    Ausgabe = &H0700 + Lx1 'X
    Gosub Lcd_send
    '---------------------
    Rs = Parameter
    Cs = 0
    Shiftout Sdata , Sclk , Color , 0
    Cs = 1
    End Sub
    '------------------------------------------------------------------





    '-------------------------------------------------------------------------------
    '-------------------------------------------------------------------------------
    ' Routine zur Zeichenausgabe
    ' Grundroutine ist von Peter Küsters
    ' Anpassung an Bascom Font 8X8 + 16X16 Copyright by Bernd Kaa
    '-------------------------------------------------------------------------------
    Sub Lcd_print(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)

    Type = Lookup(0 , Color16x16) '*** oder Color16X16 ***
    Fontb = Lookup(1 , Color16x16)
    Fonth = Lookup(1 , Color16x16)
    G_byte = Lookup(2 , Color16x16) ' 8 or 32


    For R = 1 To Len(lcd_text) 'Für jedes Zeichen im String
    Zeichen = Mid(lcd_text , R , 1) 'Lies ein Zeichen aus String
    G = Asc(zeichen) 'Bestimme Pos in EEprom-Tabelle
    ' If G > 122 Then 'Em Ende des EEproms hängen die Umlaute, Umrechnung der ASCII-Werte für den
    ' 'korrekten Datenzugriff
    ' Select Case G
    ' Case 228 : G = 127 'ä liegt bei Pos. 127 etc.
    ' Case 246 : G = 128 'ö
    ' Case 252 : G = 129 'ü
    ' Case 196 : G = 130 'Ä
    ' Case 214 : G = 131 'Ö
    ' Case 220 : G = 132 'Ü
    ' Case 223 : G = 133 'ß
    ' End Select
    ' End If
    G = G - 32 'Fängt mit ASCII ZEichen Nr. 32 (=Space) an
    G = G * G_byte 'Jedes Zeichen hat 2 X 16 Byte im Eeprom
    G = G + 4 ' 4 Byte Header
    ' --------- X,Y Position (Ausgabefenster) setzen ------------------
    '
    ' ****************** x2,y2
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' x1,y1 ******************
    '

    Fontbreite = 1 'Wir nehmen erstmal an: einfach breit & einfach hoch und setzen diese Werte
    Fonthoehe = 1
    Xpixel = Fontb ' 16 '5
    Ypixel = Fonth '16 '7

    Select Case Fontsize 'wenn nicht einfach breit und hoch: nötige Werte ändern
    Case 1 'einfach breit und doppelt hoch
    Fonthoehe = 2
    Ypixel = Fonth * 2 '33
    Case 2 'doppelt breit und doppelt hoch
    Fontbreite = 2
    Fonthoehe = 2
    Xpixel = Fontb * 2 '33
    Ypixel = Fonth * 2 '33
    End Select

    X1 = Lcd_posx - 1 'fängt im Display mit 0 und nicht mit 1 an
    X1 = X1 * Fontb '16 '17 'Jedes Zeichen ist inkl. Leerspalte 6 Pixel breit
    X1 = X1 * Fontbreite 'Startposition, evtl. verdoppeln, wenn doppelt breit
    X2 = X1 + Xpixel 'Fenster ist 5 oder 11 Zeichen breit
    Decr X2
    Y1 = Lcd_posy - 1 'fängt im Display mit 0 und nicht mit 1 an
    Y1 = Y1 - 132
    Y1 = Y1 * Fonth '16 'jedes Zeichen ist 8 Pixel hoch
    Y1 = Y1 * Fonthoehe 'Startposition evtl. verdoppeln, wenn doppel hoch
    'Incr Y1
    Y2 = Y1 + Ypixel
    'andere Fensterecke liegt 7 oder 15 pixel tiefer
    Gosub Window2
    ' --------- Ende X,Y Position setzen ------------------

    For F = 1 To Fonth '16 'Die 5 Bytes des Zeichens in ein Array einlesen
    B = Lookup(g , Color16x16) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraylsb(f) = B
    Incr G
    If Type = 2 Then
    B = Lookup(g , Color16x16) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraymsb(f) = B
    Incr G
    End If
    Next F
    Tempfb = Fontb - 1
    '***** Attension ******
    For F = Fonth To 1 Step -1 'von unten nach oben (*** Text an Länksseite ***)
    D = Fonthoehe 'doppelte höhe, also 2 x durchlaufen um jedes pixel 2x zu schreiben
    For E = 1 To D 'bei doppelt hoch 2 x durchlaufen
    For A = 0 To Tempfb '15 or 7 '6 Bytes für jedes Zeichen (1 Leerspalte + Spalte 2-6)
    C = Fontbreite 'doppelte breite also jedes pixel direkt nochmal schreiben
    While C > 0
    If Type = 2 Then
    Zeile = Makeint(zeichenarraylsb(f) , Zeichenarraymsb(f))
    Else
    Zeile = Zeichenarraylsb(f)
    End If
    If Zeile.a = 1 Then 'jedes Bit jeder Array-Variablen prüfen (siehe Manual)
    Rs = Parameter 'jedes einzelne Bit des Bytes prüfen und dann jeweilige Pixelfarbe
    Ausgabe = Lcd_fcolor 'wenn das bit eingeschaltet ist, vordergrundfarbe setzen
    Gosub Lcd_send
    Else
    Rs = Parameter 'wenn das bit ausgeschaltet ist, hintergrundfarbe setzen
    Ausgabe = Lcd_bcolor 'Farben = 1 word
    Gosub Lcd_send ' ausgeben
    End If
    Decr C
    Wend
    Next F 'nächster Array-Eintrag
    Next E
    Next A 'nächstes Bit (also nächste reihe)
    Incr Lcd_posx 'Position für das nächste Zeichen erhöhen
    Next R 'nächstes Zeichen im String
    End Sub


    '-------------------------------------------------------------------------------
    Sub Lcd_print_klein(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)

    Type = Lookup(0 , Color8x8) '*** oder Color16X16 ***
    Fontb = Lookup(1 , Color8x8)
    Fonth = Lookup(1 , Color8x8)
    G_byte = Lookup(2 , Color8x8) ' 8 or 32


    For R = 1 To Len(lcd_text) 'Für jedes Zeichen im String
    Zeichen = Mid(lcd_text , R , 1) 'Lies ein Zeichen aus String
    G = Asc(zeichen) 'Bestimme Pos in EEprom-Tabelle
    ' If G > 122 Then 'Em Ende des EEproms hängen die Umlaute, Umrechnung der ASCII-Werte für den
    ' 'korrekten Datenzugriff
    ' Select Case G
    ' Case 228 : G = 127 'ä liegt bei Pos. 127 etc.
    ' Case 246 : G = 128 'ö
    ' Case 252 : G = 129 'ü
    ' Case 196 : G = 130 'Ä
    ' Case 214 : G = 131 'Ö
    ' Case 220 : G = 132 'Ü
    ' Case 223 : G = 133 'ß
    ' End Select
    ' End If
    G = G - 32 'Fängt mit ASCII ZEichen Nr. 32 (=Space) an
    G = G * G_byte 'Jedes Zeichen hat 2 X 16 Byte im Eeprom
    G = G + 4 ' 4 Byte Header
    ' --------- X,Y Position (Ausgabefenster) setzen ------------------
    '
    ' ****************** x2,y2
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' x1,y1 ******************
    '

    Fontbreite = 1 'Wir nehmen erstmal an: einfach breit & einfach hoch und setzen diese Werte
    Fonthoehe = 1
    Xpixel = Fontb ' 16 '5
    Ypixel = Fonth '16 '7

    Select Case Fontsize 'wenn nicht einfach breit und hoch: nötige Werte ändern
    Case 1 'einfach breit und doppelt hoch
    Fonthoehe = 2
    Ypixel = Fonth * 2 '33
    Case 2 'doppelt breit und doppelt hoch
    Fontbreite = 2
    Fonthoehe = 2
    Xpixel = Fontb * 2 '33
    Ypixel = Fonth * 2

    '33
    End Select

    X1 = Lcd_posx - 1 'fängt im Display mit 0 und nicht mit 1 an
    X1 = X1 * Fontb '16 '17 'Jedes Zeichen ist inkl. Leerspalte 6 Pixel breit
    X1 = X1 * Fontbreite 'Startposition, evtl. verdoppeln, wenn doppelt breit
    X2 = X1 + Xpixel 'Fenster ist 5 oder 11 Zeichen breit
    Decr X2
    Y1 = Lcd_posy - 1
    'fängt im Display mit 0 und nicht mit 1 an
    Y1 = Y1 * Fonth '16 'jedes Zeichen ist 8 Pixel hoch
    Y1 = Y1 * Fonthoehe 'Startposition evtl. verdoppeln, wenn doppel hoch
    'Incr Y1
    Y2 = Y1 + Ypixel 'andere Fensterecke liegt 7 oder 15 pixel tiefer
    Gosub Window2
    ' --------- Ende X,Y Position setzen ------------------

    For F = 1 To Fonth '16 'Die 5 Bytes des Zeichens in ein Array einlesen
    B = Lookup(g , Color8x8) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraylsb(f) = B
    Incr G
    If Type = 2 Then
    B = Lookup(g , Color16x16) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraymsb(f) = B
    Incr G
    End If
    Next F
    Tempfb = Fontb - 1
    '***** Attension ******


    ' For F = Fonth To 1 Step -1
    For F = 1 To Fonth 'von unten nach oben (*** Text an Länksseite ***)
    D = Fonthoehe 'doppelte höhe, also 2 x durchlaufen um jedes pixel 2x zu schreiben
    For E = 1 To D 'bei doppelt hoch 2 x durchlaufen
    For A = 0 To Tempfb '15 or 7 '6 Bytes für jedes Zeichen (1 Leerspalte + Spalte 2-6)
    C = Fontbreite 'doppelte breite also jedes pixel direkt nochmal schreiben
    While C > 0
    If Type = 2 Then
    Zeile = Makeint(zeichenarraylsb(f) , Zeichenarraymsb(f))
    Else
    Zeile = Zeichenarraylsb(f)
    End If
    If Zeile.a = 1 Then 'jedes Bit jeder Array-Variablen prüfen (siehe Manual)
    Rs = Parameter 'jedes einzelne Bit des Bytes prüfen und dann jeweilige Pixelfarbe
    Ausgabe = Lcd_fcolor 'wenn das bit eingeschaltet ist, vordergrundfarbe setzen
    Gosub Lcd_send
    Else
    Rs = Parameter 'wenn das bit ausgeschaltet ist, hintergrundfarbe setzen
    Ausgabe = Lcd_bcolor 'Farben = 1 word
    Gosub Lcd_send ' ausgeben
    End If
    Decr C
    Wend
    Next F 'nächster Array-Eintrag
    Next E
    Next A 'nächstes Bit (also nächste reihe)
    Incr Lcd_posx 'Position für das nächste Zeichen erhöhen
    Next R 'nächstes Zeichen im String
    End Sub



    '-------------------------------------------------------------------------------

    Window2: 'Ausgabefenster mit den kooridnaten x1,y1 und x2,y2 /X-direction)
    Rs = Kommando
    Ausgabe = &HEF90
    Gosub Lcd_send
    Ausgabe = &H0500 ' Direction or &H0500
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0800 + X1 'X1 **** X <-> Y **** !!!
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0900 + X2 'X2
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0A00 + Y1 'Y1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0B00 + Y2 'Y2
    Gosub Lcd_send
    Return
    '-------------------------------------------------------------------------------

    '-------------------------------------------------------------------------------
    '******* Schrift von unten nach oben ok. (*** Text an Schmalseite ***) (Links kurze Seite)
    Window: 'Ausgabefenster mit den kooridnaten x1,y1 und x2,y2 /X-direction)
    Rs = Kommando
    Ausgabe = &HEF90
    Gosub Lcd_send
    Ausgabe = &H0504 ' Direction or &H0504
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0800 + Y1 'X1 **** X <-> Y **** !!!
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0900 + Y2 'X2
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0A00 + X1 'Y1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0B00 + X2 'Y2
    Gosub Lcd_send
    Return
    '-------------------------------------------------------------------------------



    '-------------------------------------------------------------------------------

    '-------------------------------------------------------------------------------


    '-------------------- Init Data ------------------------------------------------
    Init0:
    Data &HFDFD% , &HFDFD%

    Init1:
    Data &HEF00% , &HEE04% , &H1B04% , &HFEFE% , &HFEFE% , &HEF90% , &H4A04% , &H7F3F% , &HEE04% , &H4306%

    Init2:
    Data &HEF90% , &H0983% , &H0800% , &H0BAF% , &H0A00% , &H0500% , &H0600% , &H0700%,
    Data &HEF00% , &HEE0C% , &HEF90% , &H0080% , &HEFB0% , &H4902% , &HEF00% , &H7F01% , &HE181% , &HE202% , &HE276% , &HE183% , &H8001%
    Data &HEF90% , &H0000%
    '-------------------------------------------------------------------------------



    $include "color8X8.font"
    $include "color16x16.font"

    '#################################################################################
    Tacho:
    Data 32 , 32
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 50712% , 50712% , 65535% , 50712%
    Data 65535% , 50712% , 65535% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 50712% , 50712% , 50712% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 65535% , 50712% , 65535% , 50712% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 50712%
    Data 50712% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 65535% , 50712%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 50712%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 31% , 31%
    Data 31% , 31% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 65535% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 50712% , 50712% , 0%
    Data 0% , 0% , 1024% , 2016% , 2016% , 0% , 31% , 31%
    Data 31% , 31% , 0% , 63488% , 63488% , 32784% , 0% , 0%
    Data 0% , 65535% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 50712% , 50712% , 0% , 0%
    Data 0% , 2016% , 2016% , 2016% , 1024% , 0% , 31% , 31%
    Data 31% , 31% , 0% , 32784% , 63488% , 63488% , 63488% , 0%
    Data 0% , 0% , 65535% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 50712% , 0% , 0% , 0%
    Data 2016% , 2016% , 1024% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 32784% , 63488% , 63519%
    Data 0% , 0% , 0% , 65535% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 0% , 0% , 0% , 2016%
    Data 2016% , 0% , 0% , 0% , 2047% , 50712% , 0% , 0%
    Data 0% , 0% , 50712% , 2047% , 0% , 0% , 0% , 63519%
    Data 63519% , 0% , 0% , 0% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 50712% , 50712% , 0% , 0% , 2016% , 2016%
    Data 0% , 0% , 2047% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 2047% , 0% , 0%
    Data 63519% , 63519% , 0% , 0% , 65535% , 50712% , 0% , 0%
    Data 0% , 0% , 50712% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 2047% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 50712% , 2047% , 0%
    Data 0% , 63519% , 63519% , 0% , 0% , 65535% , 0% , 0%
    Data 0% , 0% , 65535% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 63519% , 63519% , 0% , 0% , 50712% , 0% , 0%
    Data 0% , 50712% , 50712% , 0% , 1024% , 2016% , 1024% , 0%
    Data 2047% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 2047%
    Data 0% , 32784% , 63519% , 32784% , 0% , 65535% , 50712% , 0%
    Data 0% , 65535% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 50712%
    Data 0% , 0% , 65504% , 33792% , 0% , 0% , 65535% , 0%
    Data 0% , 50712% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 33808% , 33808%
    Data 33808% , 33808% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 65504% , 65504% , 0% , 0% , 50712% , 0%
    Data 0% , 65535% , 0% , 0% , 2016% , 2016% , 0% , 2047%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 65535%
    Data 1040% , 33808% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 2047% , 0% , 65504% , 65504% , 0% , 0% , 65535% , 0%
    Data 0% , 50712% , 0% , 0% , 2016% , 2016% , 0% , 2047%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 65535%
    Data 65535% , 1040% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 2047% , 0% , 65504% , 65504% , 0% , 0% , 50712% , 0%
    Data 0% , 65535% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 33808% , 50712%
    Data 50712% , 65535% , 1040% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 65504% , 65504% , 0% , 0% , 65535% , 0%
    Data 0% , 50712% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 65535% , 1040% , 0% , 0% , 0% , 50712%
    Data 0% , 0% , 65504% , 65504% , 0% , 0% , 50712% , 0%
    Data 0% , 65535% , 50712% , 0% , 1024% , 2016% , 1024% , 0%
    Data 2047% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 65535% , 1040% , 0% , 0% , 2047%
    Data 0% , 33792% , 65504% , 33792% , 0% , 50712% , 65535% , 0%
    Data 0% , 0% , 50712% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 65535% , 1040% , 0% , 0%
    Data 0% , 65504% , 65504% , 0% , 0% , 65535% , 0% , 0%
    Data 0% , 0% , 50712% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 2047% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 65535% , 1040% , 0%
    Data 0% , 2016% , 2016% , 0% , 0% , 50712% , 0% , 0%
    Data 0% , 0% , 65535% , 50712% , 0% , 0% , 2016% , 2016%
    Data 0% , 0% , 2047% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 2047% , 65535% , 0%
    Data 2016% , 2016% , 0% , 0% , 50712% , 50712% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 0% , 0% , 0% , 2016%
    Data 2016% , 0% , 0% , 0% , 2047% , 50712% , 0% , 0%
    Data 0% , 0% , 50712% , 2047% , 0% , 0% , 0% , 2016%
    Data 2016% , 0% , 0% , 0% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 65535% , 50712% , 0% , 0% , 0%
    Data 2016% , 2016% , 0% , 0% , 0% , 0% , 0% , 2047%
    Data 2047% , 0% , 0% , 0% , 0% , 0% , 2016% , 2016%
    Data 0% , 0% , 0% , 50712% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 65535% , 50712% , 0% , 0%
    Data 0% , 2016% , 2016% , 2016% , 1024% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 1024% , 2016% , 2016% , 2016% , 0%
    Data 0% , 0% , 50712% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 65535% , 50712% , 0%
    Data 0% , 0% , 2016% , 2016% , 2016% , 2016% , 2016% , 2016%
    Data 2016% , 2016% , 2016% , 2016% , 2016% , 2016% , 0% , 0%
    Data 0% , 50712% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 65535% , 50712%
    Data 0% , 0% , 0% , 0% , 1024% , 2016% , 2016% , 2016%
    Data 2016% , 2016% , 2016% , 1024% , 0% , 0% , 0% , 0%
    Data 50712% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 65535%
    Data 50712% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 50712%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 65535% , 50712% , 65535% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 50712% , 50712% , 50712% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 65535% , 50712% , 65535% , 50712%
    Data 65535% , 50712% , 65535% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    'End of Bitmap
    '#################################################################################



    Re: S 65 Anssteuerung

    avrnix - 22.09.2007, 08:31

    Datei: color8x8.font
    'Color
    Color8x8:
    $asm
    .db 1 , 8 , 8 , 0
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ;
    .db 24 , 60 , 60 , 24 , 24 , 0 , 24 , 0 ; !
    .db 102 , 102 , 36 , 0 , 0 , 0 , 0 , 0 ; ""
    .db 54 , 54 , 127 , 54 , 127 , 54 , 54 , 0 ; #
    .db 24 , 124 , 6 , 60 , 96 , 62 , 24 , 0 ; $
    .db 0 , 99 , 51 , 24 , 12 , 102 , 99 , 0 ; %
    .db 28 , 54 , 28 , 110 , 59 , 51 , 110 , 0 ; &
    .db 24 , 24 , 12 , 0 , 0 , 0 , 0 , 0 ; '
    .db 48 , 24 , 12 , 12 , 12 , 24 , 48 , 0
    .db 12 , 24 , 48 , 48 , 48 , 24 , 12 , 0
    .db 0 , 102 , 60 , 255 , 60 , 102 , 0 , 0 ; *
    .db 0 , 24 , 24 , 126 , 24 , 24 , 0 , 0 ; +
    .db 0 , 0 , 0 , 0 , 0 , 24 , 24 , 12 ; ,
    .db 0 , 0 , 0 , 126 , 0 , 0 , 0 , 0 ; -
    .db 0 , 0 , 0 , 0 , 0 , 24 , 24 , 0 ; .
    .db 96 , 48 , 24 , 12 , 6 , 3 , 1 , 0 ; /
    .db 28 , 54 , 99 , 107 , 99 , 54 , 28 , 0 ; 0
    .db 24 , 28 , 24 , 24 , 24 , 24 , 126 , 0 ; 1
    .db 62 , 99 , 96 , 56 , 12 , 102 , 127 , 0 ; 2
    .db 62 , 99 , 96 , 60 , 96 , 99 , 62 , 0 ; 3
    .db 56 , 60 , 54 , 51 , 127 , 48 , 120 , 0 ; 4
    .db 127 , 3 , 3 , 63 , 96 , 99 , 62 , 0 ; 5
    .db 28 , 6 , 3 , 63 , 99 , 99 , 62 , 0 ; 6
    .db 127 , 99 , 48 , 24 , 12 , 12 , 12 , 0 ; 7
    .db 62 , 99 , 99 , 62 , 99 , 99 , 62 , 0 ; 8
    .db 62 , 99 , 99 , 126 , 96 , 48 , 30 , 0 ; 9
    .db 0 , 24 , 24 , 0 , 0 , 24 , 24 , 0 ; :
    .db 0 , 24 , 24 , 0 , 0 , 24 , 24 , 12 ; ;
    .db 96 , 48 , 24 , 12 , 24 , 48 , 96 , 0 ; <db>
    .db 62 , 99 , 48 , 24 , 24 , 0 , 24 , 0 ; Print
    .db 62 , 99 , 123 , 123 , 123 , 3 , 30 , 0 ; @
    .db 28 , 54 , 99 , 127 , 99 , 99 , 99 , 0 ; A
    .db 63 , 102 , 102 , 62 , 102 , 102 , 63 , 0 ; B
    .db 60 , 102 , 3 , 3 , 3 , 102 , 60 , 0 ; C
    .db 31 , 54 , 102 , 102 , 102 , 54 , 31 , 0 ; D
    .db 127 , 70 , 22 , 30 , 22 , 70 , 127 , 0 ; E
    .db 127 , 70 , 22 , 30 , 22 , 6 , 15 , 0 ; F
    .db 60 , 102 , 3 , 3 , 115 , 102 , 92 , 0 ; G
    .db 99 , 99 , 99 , 127 , 99 , 99 , 99 , 0 ; H
    .db 60 , 24 , 24 , 24 , 24 , 24 , 60 , 0 ; I
    .db 120 , 48 , 48 , 48 , 51 , 51 , 30 , 0 ; J
    .db 103 , 102 , 54 , 30 , 54 , 102 , 103 , 0 ; K
    .db 15 , 6 , 6 , 6 , 70 , 102 , 127 , 0 ; L
    .db 99 , 119 , 127 , 127 , 107 , 99 , 99 , 0 ; M
    .db 99 , 103 , 111 , 123 , 115 , 99 , 99 , 0 ; N
    .db 62 , 99 , 99 , 99 , 99 , 99 , 62 , 0 ; O
    .db 63 , 102 , 102 , 62 , 6 , 6 , 15 , 0 ; P
    .db 62 , 99 , 99 , 99 , 99 , 115 , 62 , 112 ; Q
    .db 63 , 102 , 102 , 62 , 54 , 102 , 103 , 0 ; R
    .db 60 , 102 , 12 , 24 , 48 , 102 , 60 , 0 ; S
    .db 126 , 126 , 90 , 24 , 24 , 24 , 60 , 0 ; T
    .db 99 , 99 , 99 , 99 , 99 , 99 , 62 , 0 ; U
    .db 99 , 99 , 99 , 99 , 99 , 54 , 28 , 0 ; V
    .db 99 , 99 , 99 , 107 , 107 , 127 , 54 , 0 ; W
    .db 99 , 99 , 54 , 28 , 54 , 99 , 99 , 0 ; X
    .db 102 , 102 , 102 , 60 , 24 , 24 , 60 , 0 ; Y
    .db 127 , 99 , 49 , 24 , 76 , 102 , 127 , 0 ; Z
    .db 60 , 12 , 12 , 12 , 12 , 12 , 60 , 0 ; [
    .db 3 , 6 , 12 , 24 , 48 , 96 , 64 , 0 ; \
    .db 60 , 48 , 48 , 48 , 48 , 48 , 60 , 0 ; ]
    .db 8 , 28 , 54 , 99 , 0 , 0 , 0 , 0 ; ^
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 255
    .db 12 , 24 , 48 , 0 , 0 , 0 , 0 , 0 ; `
    .db 0 , 0 , 30 , 48 , 62 , 51 , 110 , 0 ; A
    .db 7 , 6 , 62 , 102 , 102 , 102 , 59 , 0 ; B
    .db 0 , 0 , 62 , 99 , 3 , 99 , 62 , 0 ; C
    .db 56 , 48 , 62 , 51 , 51 , 51 , 110 , 0 ; D
    .db 0 , 0 , 62 , 99 , 127 , 3 , 62 , 0 ; E
    .db 60 , 102 , 6 , 31 , 6 , 6 , 15 , 0 ; F
    .db 0 , 0 , 110 , 51 , 51 , 62 , 48 , 31 ; G
    .db 7 , 6 , 54 , 110 , 102 , 102 , 103 , 0 ; H
    .db 24 , 0 , 28 , 24 , 24 , 24 , 60 , 0 ; I
    .db 96 , 0 , 96 , 96 , 96 , 102 , 102 , 60 ; J
    .db 7 , 6 , 102 , 54 , 30 , 54 , 103 , 0 ; K
    .db 28 , 24 , 24 , 24 , 24 , 24 , 60 , 0 ; L
    .db 0 , 0 , 55 , 127 , 107 , 107 , 107 , 0 ; M
    .db 0 , 0 , 59 , 102 , 102 , 102 , 102 , 0 ; N
    .db 0 , 0 , 62 , 99 , 99 , 99 , 62 , 0 ; O
    .db 0 , 0 , 59 , 102 , 102 , 62 , 6 , 15 ; P
    .db 0 , 0 , 110 , 51 , 51 , 62 , 48 , 120 ; Q
    .db 0 , 0 , 59 , 110 , 6 , 6 , 15 , 0 ; R
    .db 0 , 0 , 126 , 3 , 62 , 96 , 63 , 0 ; S
    .db 12 , 12 , 63 , 12 , 12 , 108 , 56 , 0 ; T
    .db 0 , 0 , 51 , 51 , 51 , 51 , 110 , 0 ; U
    .db 0 , 0 , 99 , 99 , 99 , 54 , 28 , 0 ; V
    .db 0 , 0 , 99 , 107 , 107 , 127 , 54 , 0 ; W
    .db 0 , 0 , 99 , 54 , 28 , 54 , 99 , 0 ; X
    .db 0 , 0 , 99 , 99 , 99 , 126 , 96 , 63 ; Y
    .db 0 , 0 , 126 , 50 , 24 , 76 , 126 , 0 ; Z
    .db 112 , 24 , 24 , 14 , 24 , 24 , 112 , 0 ; {
    .db 24 , 24 , 24 , 24 , 24 , 24 , 24 , 0 ; |
    .db 14 , 24 , 24 , 112 , 24 , 24 , 14 , 0 ; }
    .db 110 , 59 , 0 , 0 , 0 , 0 , 0 , 0 ; ~
    $end Asm



    Re: S 65 Anssteuerung

    avrnix - 22.09.2007, 08:32

    Datei: color16x16.font
    'Color
    Color16x16:
    $asm
    .db 2 , 16 , 32 , 0
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ;
    .db 0 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 224 , 1 , 224 , 1 , 224 , 1 , 224 , 1 , 192 , 0 , 0 , 0 , 192 , 0 , 224 , 1 , 192 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; !
    .db 0 , 0 , 96 , 6 , 96 , 6 , 96 , 6 , 96 , 6 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; ""
    .db 0 , 0 , 0 , 0 , 48 , 12 , 48 , 12 , 252 , 63 , 252 , 63 , 48 , 12 , 48 , 12 , 48 , 12 , 252 , 63 , 252 , 63 , 48 , 12 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; #
    .db 0 , 0 , 192 , 0 , 248 , 7 , 220 , 14 , 204 , 24 , 204 , 0 , 248 , 0 , 240 , 1 , 192 , 7 , 192 , 14 , 192 , 24 , 196 , 24 , 220 , 30 , 248 , 15 , 192 , 0 , 0 , 0 ; $
    .db 0 , 0 , 0 , 0 , 56 , 12 , 108 , 12 , 68 , 6 , 108 , 6 , 56 , 3 , 128 , 1 , 192 , 28 , 96 , 54 , 48 , 34 , 24 , 54 , 24 , 28 , 0 , 0 , 0 , 0 , 0 , 0 ; %
    .db 0 , 0 , 240 , 0 , 152 , 1 , 152 , 1 , 240 , 1 , 240 , 0 , 240 , 49 , 184 , 59 , 28 , 31 , 12 , 14 , 12 , 31 , 188 , 59 , 240 , 49 , 0 , 0 , 0 , 0 , 0 , 0 ; &
    .db 0 , 0 , 192 , 1 , 192 , 1 , 192 , 1 , 192 , 0 , 192 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; '
    .db 0 , 0 , 0 , 15 , 192 , 3 , 224 , 0 , 96 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 96 , 0 , 224 , 0 , 192 , 3 , 0 , 15 , 0 , 0 , 0 , 0 , 0 , 0
    .db 0 , 0 , 240 , 0 , 192 , 3 , 0 , 7 , 0 , 6 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 6 , 0 , 7 , 192 , 3 , 240 , 0 , 0 , 0 , 0 , 0 , 0 , 0
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 48 , 6 , 112 , 7 , 224 , 3 , 248 , 15 , 248 , 15 , 224 , 3 , 112 , 7 , 48 , 6 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; *
    .db 0 , 0 , 0 , 0 , 0 , 0 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 248 , 31 , 248 , 31 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; +
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 6 , 0 , 15 , 0 , 15 , 0 , 6 , 0 , 3 , 0 , 0 , 0 , 0 , 0 , 0 ; ,
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 252 , 63 , 252 , 63 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; -
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 224 , 0 , 224 , 0 , 224 , 0 , 224 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; .
    .db 0 , 0 , 0 , 0 , 0 , 12 , 0 , 12 , 0 , 6 , 0 , 3 , 0 , 3 , 128 , 1 , 192 , 0 , 96 , 0 , 96 , 0 , 48 , 0 , 24 , 0 , 24 , 0 , 0 , 0 , 0 , 0 ; /
    .db 0 , 0 , 128 , 1 , 224 , 7 , 112 , 14 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 112 , 14 , 224 , 7 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; 0
    .db 0 , 0 , 128 , 1 , 192 , 1 , 240 , 1 , 176 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 240 , 15 , 240 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; 1
    .db 0 , 0 , 192 , 1 , 224 , 7 , 56 , 6 , 24 , 6 , 0 , 6 , 0 , 3 , 192 , 1 , 96 , 0 , 48 , 0 , 24 , 0 , 248 , 15 , 248 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; 2
    .db 0 , 0 , 224 , 3 , 248 , 7 , 24 , 6 , 0 , 12 , 224 , 15 , 224 , 7 , 0 , 6 , 0 , 12 , 24 , 24 , 24 , 28 , 240 , 15 , 240 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; 3
    .db 0 , 0 , 0 , 3 , 128 , 3 , 192 , 3 , 96 , 3 , 48 , 3 , 24 , 3 , 252 , 15 , 252 , 15 , 0 , 3 , 0 , 3 , 0 , 3 , 0 , 3 , 0 , 0 , 0 , 0 , 0 , 0 ; 4
    .db 0 , 0 , 248 , 15 , 248 , 15 , 24 , 0 , 24 , 0 , 248 , 7 , 248 , 15 , 0 , 12 , 0 , 12 , 0 , 12 , 24 , 12 , 240 , 15 , 240 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; 5
    .db 0 , 0 , 192 , 7 , 224 , 31 , 48 , 24 , 24 , 0 , 24 , 0 , 216 , 7 , 248 , 15 , 56 , 28 , 24 , 24 , 56 , 28 , 240 , 15 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; 6
    .db 0 , 0 , 248 , 15 , 248 , 15 , 8 , 12 , 0 , 6 , 0 , 3 , 0 , 3 , 128 , 1 , 192 , 0 , 96 , 0 , 96 , 0 , 48 , 0 , 24 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; 7
    .db 0 , 0 , 224 , 7 , 240 , 15 , 48 , 12 , 48 , 12 , 224 , 7 , 224 , 7 , 48 , 12 , 24 , 24 , 24 , 24 , 56 , 28 , 240 , 15 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; 8
    .db 0 , 0 , 224 , 7 , 240 , 15 , 24 , 14 , 24 , 12 , 56 , 14 , 240 , 15 , 224 , 13 , 0 , 12 , 8 , 12 , 24 , 6 , 240 , 3 , 192 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; 9
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 192 , 1 , 192 , 1 , 0 , 0 , 0 , 0 , 192 , 1 , 192 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; :
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 192 , 1 , 192 , 1 , 0 , 0 , 0 , 0 , 192 , 1 , 128 , 1 , 192 , 0 , 64 , 0 , 0 , 0 ; ;
    .db 0 , 0 , 0 , 12 , 0 , 6 , 0 , 3 , 128 , 1 , 192 , 0 , 96 , 0 , 96 , 0 , 192 , 0 , 128 , 1 , 0 , 3 , 0 , 6 , 0 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; <db>
    .db 0 , 0 , 192 , 7 , 224 , 15 , 48 , 24 , 48 , 24 , 48 , 12 , 0 , 6 , 0 , 3 , 0 , 3 , 0 , 3 , 0 , 0 , 0 , 3 , 128 , 3 , 0 , 3 , 0 , 0 , 0 , 0 ; Print
    .db 0 , 0 , 128 , 7 , 224 , 31 , 48 , 56 , 24 , 51 , 140 , 55 , 204 , 54 , 204 , 55 , 140 , 31 , 24 , 0 , 48 , 48 , 224 , 31 , 128 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; @
    .db 0 , 0 , 128 , 1 , 128 , 1 , 192 , 3 , 96 , 6 , 96 , 6 , 48 , 12 , 240 , 15 , 248 , 31 , 24 , 24 , 24 , 24 , 12 , 48 , 12 , 48 , 0 , 0 , 0 , 0 , 0 , 0 ; A
    .db 0 , 0 , 240 , 3 , 240 , 7 , 48 , 12 , 48 , 12 , 48 , 12 , 240 , 7 , 240 , 15 , 48 , 24 , 48 , 24 , 48 , 24 , 240 , 15 , 240 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; B
    .db 0 , 0 , 192 , 3 , 240 , 15 , 56 , 12 , 24 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 24 , 0 , 56 , 12 , 240 , 15 , 192 , 3 , 0 , 0 , 0 , 0 , 0 , 0 ; C
    .db 0 , 0 , 240 , 1 , 240 , 15 , 48 , 24 , 48 , 24 , 48 , 48 , 48 , 48 , 48 , 48 , 48 , 48 , 48 , 24 , 48 , 24 , 240 , 15 , 240 , 3 , 0 , 0 , 0 , 0 , 0 , 0 ; D
    .db 0 , 0 , 240 , 31 , 240 , 31 , 48 , 0 , 48 , 0 , 48 , 0 , 240 , 3 , 240 , 3 , 48 , 0 , 48 , 0 , 48 , 0 , 240 , 31 , 240 , 31 , 0 , 0 , 0 , 0 , 0 , 0 ; E
    .db 0 , 0 , 240 , 31 , 240 , 31 , 48 , 0 , 48 , 0 , 48 , 0 , 240 , 3 , 240 , 3 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; F
    .db 0 , 0 , 192 , 7 , 240 , 31 , 56 , 28 , 24 , 0 , 12 , 0 , 12 , 0 , 12 , 31 , 12 , 31 , 24 , 24 , 56 , 24 , 240 , 31 , 192 , 31 , 0 , 0 , 0 , 0 , 0 , 0 ; G
    .db 0 , 0 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 248 , 31 , 248 , 31 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 0 , 0 , 0 , 0 , 0 , 0 ; H
    .db 0 , 0 , 224 , 7 , 224 , 7 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 224 , 7 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; I
    .db 0 , 0 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 24 , 24 , 56 , 28 , 240 , 15 , 224 , 3 , 0 , 0 , 0 , 0 , 0 , 0 ; J
    .db 0 , 0 , 24 , 24 , 24 , 28 , 24 , 6 , 24 , 3 , 216 , 1 , 248 , 0 , 248 , 0 , 216 , 1 , 24 , 3 , 24 , 6 , 24 , 28 , 24 , 24 , 0 , 0 , 0 , 0 , 0 , 0 ; K
    .db 0 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 24 , 0 , 248 , 31 , 248 , 31 , 0 , 0 , 0 , 0 , 0 , 0 ; L
    .db 0 , 0 , 12 , 48 , 12 , 48 , 28 , 56 , 28 , 56 , 60 , 60 , 60 , 60 , 108 , 54 , 108 , 54 , 204 , 51 , 204 , 51 , 140 , 49 , 140 , 49 , 0 , 0 , 0 , 0 , 0 , 0 ; M
    .db 0 , 0 , 24 , 24 , 56 , 24 , 56 , 24 , 120 , 24 , 216 , 24 , 152 , 25 , 152 , 25 , 24 , 27 , 24 , 30 , 24 , 28 , 24 , 28 , 24 , 24 , 0 , 0 , 0 , 0 , 0 , 0 ; N
    .db 0 , 0 , 224 , 7 , 240 , 15 , 24 , 24 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 24 , 24 , 240 , 15 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; O
    .db 0 , 0 , 240 , 15 , 240 , 31 , 48 , 48 , 48 , 48 , 48 , 24 , 240 , 15 , 240 , 7 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; P
    .db 0 , 0 , 224 , 7 , 240 , 15 , 24 , 24 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 51 , 12 , 54 , 24 , 28 , 240 , 31 , 224 , 55 , 0 , 0 , 0 , 0 , 0 , 0 ; Q
    .db 0 , 0 , 240 , 15 , 240 , 31 , 48 , 48 , 48 , 48 , 48 , 24 , 240 , 15 , 240 , 7 , 48 , 12 , 48 , 12 , 48 , 24 , 48 , 24 , 48 , 48 , 0 , 0 , 0 , 0 , 0 , 0 ; R
    .db 0 , 0 , 240 , 3 , 248 , 7 , 28 , 14 , 12 , 12 , 28 , 0 , 248 , 1 , 192 , 7 , 0 , 12 , 0 , 24 , 12 , 28 , 252 , 15 , 248 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; S
    .db 0 , 0 , 248 , 31 , 248 , 31 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; T
    .db 0 , 0 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 56 , 28 , 240 , 15 , 192 , 3 , 0 , 0 , 0 , 0 , 0 , 0 ; U
    .db 0 , 0 , 24 , 24 , 24 , 24 , 24 , 24 , 48 , 12 , 48 , 12 , 48 , 12 , 96 , 6 , 96 , 6 , 192 , 3 , 192 , 3 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; V
    .db 0 , 0 , 140 , 49 , 140 , 49 , 140 , 49 , 140 , 49 , 216 , 27 , 216 , 27 , 216 , 27 , 120 , 30 , 112 , 14 , 112 , 14 , 48 , 12 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; W
    .db 0 , 0 , 24 , 24 , 24 , 24 , 48 , 12 , 96 , 6 , 192 , 3 , 128 , 1 , 128 , 1 , 192 , 3 , 96 , 6 , 48 , 12 , 24 , 24 , 24 , 24 , 0 , 0 , 0 , 0 , 0 , 0 ; X
    .db 0 , 0 , 24 , 24 , 24 , 24 , 48 , 12 , 48 , 12 , 96 , 6 , 192 , 3 , 192 , 3 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; Y
    .db 0 , 0 , 248 , 31 , 248 , 31 , 0 , 24 , 0 , 12 , 0 , 6 , 0 , 3 , 128 , 1 , 192 , 0 , 96 , 0 , 48 , 0 , 248 , 31 , 248 , 31 , 0 , 0 , 0 , 0 , 0 , 0 ; Z
    .db 0 , 0 , 240 , 15 , 240 , 15 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 240 , 15 , 240 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; [
    .db 0 , 0 , 0 , 0 , 24 , 0 , 24 , 0 , 48 , 0 , 96 , 0 , 96 , 0 , 192 , 0 , 128 , 1 , 0 , 3 , 0 , 3 , 0 , 6 , 0 , 12 , 0 , 12 , 0 , 0 , 0 , 0 ; \
    .db 0 , 0 , 240 , 15 , 240 , 15 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 240 , 15 , 240 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; ]
    .db 0 , 0 , 128 , 1 , 192 , 3 , 96 , 6 , 48 , 12 , 24 , 24 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; ^
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 255 , 255 , 255 , 255 , 0 , 0 , 0 , 0 , 0 , 0
    .db 0 , 0 , 120 , 0 , 120 , 0 , 224 , 0 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; `
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 192 , 13 , 224 , 15 , 112 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 224 , 15 , 192 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; A
    .db 0 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 176 , 3 , 240 , 7 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 240 , 15 , 240 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; B
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 192 , 7 , 224 , 15 , 112 , 0 , 48 , 0 , 48 , 0 , 112 , 0 , 224 , 15 , 192 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; C
    .db 0 , 0 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 192 , 13 , 240 , 15 , 112 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 240 , 15 , 224 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; D
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 224 , 3 , 240 , 15 , 56 , 12 , 248 , 15 , 248 , 15 , 24 , 0 , 240 , 15 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; E
    .db 0 , 0 , 192 , 3 , 224 , 7 , 112 , 6 , 48 , 0 , 48 , 0 , 248 , 1 , 248 , 1 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; F
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 192 , 15 , 224 , 15 , 112 , 12 , 48 , 12 , 48 , 12 , 112 , 12 , 224 , 15 , 192 , 15 , 16 , 12 , 240 , 15 , 224 , 7 ; G
    .db 0 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 240 , 3 , 240 , 7 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; H
    .db 0 , 0 , 0 , 0 , 0 , 0 , 128 , 1 , 128 , 1 , 0 , 0 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; I
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 12 , 0 , 12 , 0 , 0 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 0 , 12 , 48 , 12 , 48 , 12 , 240 , 7 , 224 , 3 ; J
    .db 0 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 12 , 48 , 7 , 240 , 1 , 240 , 1 , 176 , 1 , 48 , 7 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; K
    .db 0 , 0 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; L
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 124 , 14 , 252 , 31 , 140 , 49 , 140 , 49 , 140 , 49 , 140 , 49 , 140 , 49 , 140 , 49 , 0 , 0 , 0 , 0 , 0 , 0 ; M
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 240 , 3 , 240 , 7 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; N
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 224 , 7 , 240 , 15 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 240 , 15 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; O
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 248 , 3 , 248 , 7 , 24 , 12 , 24 , 12 , 24 , 12 , 24 , 12 , 248 , 7 , 248 , 3 , 24 , 0 , 24 , 0 , 24 , 0 ; P
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 224 , 15 , 240 , 15 , 24 , 12 , 24 , 12 , 24 , 12 , 24 , 12 , 240 , 15 , 224 , 15 , 0 , 12 , 0 , 12 , 0 , 12 ; Q
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 176 , 7 , 240 , 7 , 112 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 48 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; R
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 224 , 7 , 240 , 15 , 48 , 0 , 240 , 7 , 224 , 15 , 0 , 12 , 240 , 15 , 224 , 7 , 0 , 0 , 0 , 0 , 0 , 0 ; S
    .db 0 , 0 , 128 , 1 , 128 , 1 , 128 , 1 , 240 , 15 , 240 , 15 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; T
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 224 , 15 , 192 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; U
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 48 , 12 , 48 , 12 , 112 , 14 , 96 , 6 , 96 , 6 , 192 , 3 , 192 , 3 , 128 , 1 , 0 , 0 , 0 , 0 , 0 , 0 ; V
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 140 , 49 , 140 , 49 , 140 , 49 , 152 , 25 , 216 , 27 , 112 , 14 , 112 , 14 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; W
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 48 , 12 , 48 , 12 , 96 , 6 , 192 , 3 , 192 , 3 , 96 , 6 , 48 , 12 , 48 , 12 , 0 , 0 , 0 , 0 , 0 , 0 ; X
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 48 , 12 , 224 , 15 , 192 , 15 , 0 , 12 , 240 , 15 , 224 , 7 ; Y
    .db 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 240 , 15 , 240 , 15 , 0 , 6 , 128 , 3 , 192 , 1 , 96 , 0 , 240 , 15 , 240 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; Z
    .db 0 , 0 , 0 , 15 , 192 , 3 , 192 , 0 , 192 , 0 , 224 , 0 , 56 , 0 , 56 , 0 , 224 , 0 , 192 , 0 , 192 , 0 , 192 , 3 , 0 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; {
    .db 0 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 192 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; |
    .db 0 , 0 , 240 , 0 , 192 , 3 , 0 , 3 , 0 , 3 , 0 , 7 , 0 , 28 , 0 , 28 , 0 , 7 , 0 , 3 , 0 , 3 , 192 , 3 , 240 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; }
    .db 0 , 0 , 112 , 48 , 248 , 57 , 156 , 31 , 12 , 14 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ; ~
    .db 0 , 0 , 128 , 1 , 64 , 2 , 64 , 2 , 96 , 6 , 32 , 4 , 48 , 12 , 16 , 8 , 16 , 8 , 16 , 8 , 16 , 8 , 16 , 8 , 240 , 15 , 0 , 0 , 0 , 0 , 0 , 0 ; 
    $end Asm



    Re: S 65 Anssteuerung

    merlin63 - 24.09.2007, 12:20


    hallöle

    also da sag ich mal danke. bin noch nicht zum probieren gekommen, weil ich mich hier noch mit meiner stepper-steuerung rumschlage.
    aber am we werd ich mal reinschauen.

    also bis denne



    Re: S 65 Anssteuerung

    merlin63 - 02.10.2007, 15:16


    hallo dirk

    also habe mir das mal angeschaut.....junge junge....ne menge gehirnschmalz in deinem proggi. habe da nur ein problem. so wie ich es sehe, sollen die beiden fonts wohl in EEprom und genau da bekomme ich sie nicht hin. wenn ich sie im hauptprogramm belasse, dann sind die zeichen um zwei stellen verschoben. also im mom stehe ich auf dem schlauch :oops:



    Re: S 65 Anssteuerung

    avrnix - 02.10.2007, 16:10


    Das Programm mit den Fonts wird im Speicher (RAM) hinterlegt und das Programm vom Oszi im EEProm. Die Verarbeitung und Darstellung ist eine andere und sind zwei verschiede Programme also nicht durcheinander schmeissen!!

    Das Mit dem Oszi ist auf mein Mist gewachsen , das andere wurde mir mal gegeben.



    Re: S 65 Anssteuerung

    merlin63 - 02.10.2007, 16:27


    hallo dirk

    ne ne.....ich schmeiß da nichts durcheinander. ist schon klar das das zwie paar schuhe sind. nur in den kommentarzeilen wird etwas bei der zeichenausgaberoutine vom eeprom erzählt...deshalb bin ich darauf gekommen. wenn ich die beiden zeilen:$include "color8X8.font"
    '$include "color16x16.font" drinn lasse kommt immer die fehlermeldung, file not found, deshalb kam ich auf die idee, das der font "extra" behandelt werden muß. aber das es ein versatz von zwei zeichen gibt, kann ich mir trotzdem nicht erjlären. also möchte ich ein "A" auf dem display, bekomme ich ein "C". hmmmm...keinen schimmer :oops:



    Re: S 65 Anssteuerung

    avrnix - 02.10.2007, 19:25


    versuche dieses mal:
    Ich hatte das mal ausprobiert und jetzt klappt es nicht :-(

    '8 MHz Takt, bei höherem Takt muss evtl. die Ausgabegeschwindigkeit der Daten an das

    $regfile = "M16def.dat"
    $crystal = 8000000 '8 MHz
    $baud = 19200

    $hwstack = 128
    $swstack = 128
    $framesize = 128


    Const Kommando = 1 'Eine folgendes Kommando wird durch "1" eingeleitet
    Const Parameter = 0 'Eine folgende Parameterübergabe wird durch "0" eingeleitet

    'Sclk Alias Portb.7
    'Sdata Alias Portb.5
    'Rs Alias Portb.0
    'Lcdreset Alias Portb.3
    'Cs Alias Portb.4

    Ddrb = &B11111111
    Ddrc = &B11111111

    Rs Alias Portc.0
    Lcdreset Alias Portc.1
    Cs Alias Portc.2
    Sclk Alias Portc.3
    Sdata Alias Portc.4


    'Port D als Output

    '******************************************************************************

    Const Blau = &B0000000000011111 'Vordefinierte Konstanten für die Farbwerte machen das Programmiererleben leichter:
    Const Gelb = &B1111111111100000 '65.000 Farben Modus heißt die Farben liegen als Doppelbytes vor
    Const Rot = &B1111100000000000
    Const Gruen = &B0000011111100000
    Const Schwarz = &B0000000000000000
    Const Weiss = &B1111111111111111
    Const Hellgruen = &B1001111111110011
    Const Dunkelgruen = &B0000001101100000
    Const Dunkelrot = &B1001100000000000
    Const Dunkelblau = &B0000000000010011
    Const Hellblau = &B1101111011011111
    Const Orange = &B1111110011000110
    Const Orange2 = &B1111101110000011
    Const Lila = &B1111100000011111

    '*******************************************************************************


    Declare Sub Cls_bottomtop(byval Color As Word)
    Declare Sub Cls_leftright(byval Color As Word)
    Declare Sub Lcd_print(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)
    Declare Sub Lcd_print_klein(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)
    Declare Sub Pset(byval Lx1 As Byte , Byvally1 As Byte , Byvalcolor As Word)
    Declare Sub Lcd_box(byval Lx1 As Byte , Byval Ly1 As Byte , Byval Lx2 As Byte , Byval Ly2 As Byte , Byval Color As Word)
    '*** Achtung:
    '*** Nicht alle Variable werden benützt ! ***


    Dim Fontsize As Byte
    Dim Lcd_posx As Byte
    Dim Lcd_posy As Byte
    Dim Lcd_fcolor As Word , Drehung As Byte
    Dim Lcd_bcolor As Word
    Dim Fontbreite As Byte , Fonthoehe As Byte , Xpixel As Byte , Ypixel As Byte
    Dim R As Integer , X1 As Byte , X2 As Byte , Y1 As Byte , Y2 As Byte , E As Byte , F As Integer , G As Long , Zeichen As String * 1
    Dim A As Word , B As Byte , C As Integer , D As Integer , T1 As Byte , T2 As Byte
    Dim Pix As Byte , Gapx As Double , Gapy As Double , S As Byte
    Dim X As Byte , Y As Byte , H As Integer , M As Integer , Pixel As Integer , Schleife As Word , Hx As Integer , Hy As Integer , Xinc As Integer , Yinc As Integer
    Dim Temp As Byte
    Dim Trot As Byte , Tblau As Byte , Tgruen As Byte
    Dim Lx1 As Byte , Ly1 As Byte , Zeichenarraylsb(16) As Byte , Zeichenarraymsb(16) As Byte , I As Byte
    '------ Font ---------------------
    Dim Fontb As Byte , Fonth As Byte
    Dim Zeile As Word
    '----------------------------------

    'Dim HG as Word, VG as Word
    Dim Temp1 As Byte , Temp2 As Byte , Temp3 As Byte , Temp4 As Byte

    Dim Ausgabe As Word
    Dim Tempw As Word
    Dim Farbe As Word
    Dim G_byte As Byte , Type As Byte
    Dim Tempfb As Byte
    Dim Anzeige As String * 3
    Dim Text1 As String * 1
    Dim Text2 As String * 2
    Dim Text3 As String * 3
    Dim Drehzahl As String * 4
    Dim Anzeigedrehzahl As String * 4
    Dim Id As Word
    Dim Y1a As Byte
    Dim X1a As Byte
    Dim Z As Word




    '*******************************************************************************
    'Start usage S65-display with Reset and Init
    '*******************************************************************************
    '------------------------- Reset is important ----------------------------------
    Lcdreset = 1
    Waitms 10
    Lcdreset = 0 'Reset
    Cs = 1
    Sclk = 1
    Sdata = 1
    Rs = 1
    Waitms 2
    Lcdreset = 1 'Reset Ende
    '-------------------------------------------------------------------------------
    '-------------------------- Init is important ----------------------------------
    '********************** Displayinitialisierung ********************************
    Restore Init0
    For R = 1 To 2
    Read Ausgabe
    Gosub Lcd_send
    Next

    Waitms 50

    Restore Init1
    For R = 1 To 10
    Read Ausgabe
    Gosub Lcd_send
    Next
    '**** Important ***
    Waitms 7 '*** min. 7 ms or longer !!! ***
    '******************
    Restore Init2
    For R = 1 To 23
    Read Ausgabe
    Gosub Lcd_send
    Next
    '*******************************************************************************
    '-------------------------------------------------------------------------------

    Call Cls_bottomtop(schwarz)
    For X = 1 To 100
    Call Pset(x , 50 , Blau)
    Next X

    Wait 1

    Restore Tacho
    Read X
    Read Y


    X = X - 1
    Y = Y - 1
    For Y1 = 0 To Y
    For X1 = 0 To X
    Read Z
    'Print "X=" ; X ; " Y=" ; Y ; " Color=" ; Z
    Call Pset(x1 , Y1 , Z)
    Next X1
    Next Y1

    Wait 2



    Call Lcd_print_klein( "Total: 100254 km" , 1 , 6 , 1 , Rot , Schwarz)
    Call Lcd_print_klein( "Trip : 245 km" , 1 , 7 , 1 , Weiss , Schwarz)



    End





    '------------------------------------ SUB- Routinen ----------------------------
    'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    Lcd_send:
    Cs = 0
    Shiftout Sdata , Sclk , Ausgabe , 0 'Msbl
    Cs = 1
    Return
    '-------------------------------------------------------------------------------



    '------------------------------------------------------------------
    Sub Cls_bottomtop(byval Color As Word)
    ' send window write start sequence
    Rs = Kommando
    Ausgabe = &HEF90
    Gosub Lcd_send
    Ausgabe = &H0504 ' Direction or &H0500
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0800 '+ Y1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0983 '+ Y2 (131)
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0A00 '+ X1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0BAF '+ X2 (175)
    Gosub Lcd_send
    '-----------------------
    Rs = Parameter
    For Tempw = 1 To 23232 ' 132X176
    Cs = 0
    Shiftout Sdata , Sclk , Color , 0 'Msbl
    Cs = 1
    Next
    End Sub

    Sub Pset(byval Lx1 As Byte , Ly1 As Byte , Color As Word)

    Rs = Kommando
    '------- Locate ------
    Ausgabe = &H0600 + Ly1 'Y
    Gosub Lcd_send
    Ausgabe = &H0700 + Lx1 'X
    Gosub Lcd_send
    '---------------------
    Rs = Parameter
    Cs = 0
    Shiftout Sdata , Sclk , Color , 0
    Cs = 1
    End Sub
    '------------------------------------------------------------------





    '-------------------------------------------------------------------------------
    '-------------------------------------------------------------------------------
    ' Routine zur Zeichenausgabe
    ' Grundroutine ist von Peter Küsters
    ' Anpassung an Bascom Font 8X8 + 16X16 Copyright by Bernd Kaa
    '-------------------------------------------------------------------------------
    Sub Lcd_print(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)

    Type = Lookup(0 , Color16x16) '*** oder Color16X16 ***
    Fontb = Lookup(1 , Color16x16)
    Fonth = Lookup(1 , Color16x16)
    G_byte = Lookup(2 , Color16x16) ' 8 or 32


    For R = 1 To Len(lcd_text) 'Für jedes Zeichen im String
    Zeichen = Mid(lcd_text , R , 1) 'Lies ein Zeichen aus String
    G = Asc(zeichen) 'Bestimme Pos in EEprom-Tabelle
    ' If G > 122 Then 'Em Ende des EEproms hängen die Umlaute, Umrechnung der ASCII-Werte für den
    ' 'korrekten Datenzugriff
    ' Select Case G
    ' Case 228 : G = 127 'ä liegt bei Pos. 127 etc.
    ' Case 246 : G = 128 'ö
    ' Case 252 : G = 129 'ü
    ' Case 196 : G = 130 'Ä
    ' Case 214 : G = 131 'Ö
    ' Case 220 : G = 132 'Ü
    ' Case 223 : G = 133 'ß
    ' End Select
    ' End If
    G = G - 32 'Fängt mit ASCII ZEichen Nr. 32 (=Space) an
    G = G * G_byte 'Jedes Zeichen hat 2 X 16 Byte im Eeprom
    G = G + 4 ' 4 Byte Header
    ' --------- X,Y Position (Ausgabefenster) setzen ------------------
    '
    ' ****************** x2,y2
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' x1,y1 ******************
    '

    Fontbreite = 1 'Wir nehmen erstmal an: einfach breit & einfach hoch und setzen diese Werte
    Fonthoehe = 1
    Xpixel = Fontb ' 16 '5
    Ypixel = Fonth '16 '7

    Select Case Fontsize 'wenn nicht einfach breit und hoch: nötige Werte ändern
    Case 1 'einfach breit und doppelt hoch
    Fonthoehe = 2
    Ypixel = Fonth * 2 '33
    Case 2 'doppelt breit und doppelt hoch
    Fontbreite = 2
    Fonthoehe = 2
    Xpixel = Fontb * 2 '33
    Ypixel = Fonth * 2 '33
    End Select

    X1 = Lcd_posx - 1 'fängt im Display mit 0 und nicht mit 1 an
    X1 = X1 * Fontb '16 '17 'Jedes Zeichen ist inkl. Leerspalte 6 Pixel breit
    X1 = X1 * Fontbreite 'Startposition, evtl. verdoppeln, wenn doppelt breit
    X2 = X1 + Xpixel 'Fenster ist 5 oder 11 Zeichen breit
    Decr X2
    Y1 = Lcd_posy - 1 'fängt im Display mit 0 und nicht mit 1 an
    Y1 = Y1 - 132
    Y1 = Y1 * Fonth '16 'jedes Zeichen ist 8 Pixel hoch
    Y1 = Y1 * Fonthoehe 'Startposition evtl. verdoppeln, wenn doppel hoch
    'Incr Y1
    Y2 = Y1 + Ypixel
    'andere Fensterecke liegt 7 oder 15 pixel tiefer
    Gosub Window2
    ' --------- Ende X,Y Position setzen ------------------

    For F = 1 To Fonth '16 'Die 5 Bytes des Zeichens in ein Array einlesen
    B = Lookup(g , Color16x16) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraylsb(f) = B
    Incr G
    If Type = 2 Then
    B = Lookup(g , Color16x16) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraymsb(f) = B
    Incr G
    End If
    Next F
    Tempfb = Fontb - 1
    '***** Attension ******
    For F = Fonth To 1 Step -1 'von unten nach oben (*** Text an Länksseite ***)
    D = Fonthoehe 'doppelte höhe, also 2 x durchlaufen um jedes pixel 2x zu schreiben
    For E = 1 To D 'bei doppelt hoch 2 x durchlaufen
    For A = 0 To Tempfb '15 or 7 '6 Bytes für jedes Zeichen (1 Leerspalte + Spalte 2-6)
    C = Fontbreite 'doppelte breite also jedes pixel direkt nochmal schreiben
    While C > 0
    If Type = 2 Then
    Zeile = Makeint(zeichenarraylsb(f) , Zeichenarraymsb(f))
    Else
    Zeile = Zeichenarraylsb(f)
    End If
    If Zeile.a = 1 Then 'jedes Bit jeder Array-Variablen prüfen (siehe Manual)
    Rs = Parameter 'jedes einzelne Bit des Bytes prüfen und dann jeweilige Pixelfarbe
    Ausgabe = Lcd_fcolor 'wenn das bit eingeschaltet ist, vordergrundfarbe setzen
    Gosub Lcd_send
    Else
    Rs = Parameter 'wenn das bit ausgeschaltet ist, hintergrundfarbe setzen
    Ausgabe = Lcd_bcolor 'Farben = 1 word
    Gosub Lcd_send ' ausgeben
    End If
    Decr C
    Wend
    Next F 'nächster Array-Eintrag
    Next E
    Next A 'nächstes Bit (also nächste reihe)
    Incr Lcd_posx 'Position für das nächste Zeichen erhöhen
    Next R 'nächstes Zeichen im String
    End Sub


    '-------------------------------------------------------------------------------
    Sub Lcd_print_klein(byval Lcd_text As String , Byval Lcd_posx As Byte , Byval Lcd_posy As Byte , Byval Fontsize As Byte , Byval Lcd_fcolor As Word , Byval Lcd_bcolor As Word)

    Type = Lookup(0 , Color8x8) '*** oder Color16X16 ***
    Fontb = Lookup(1 , Color8x8)
    Fonth = Lookup(1 , Color8x8)
    G_byte = Lookup(2 , Color8x8) ' 8 or 32


    For R = 1 To Len(lcd_text) 'Für jedes Zeichen im String
    Zeichen = Mid(lcd_text , R , 1) 'Lies ein Zeichen aus String
    G = Asc(zeichen) 'Bestimme Pos in EEprom-Tabelle
    ' If G > 122 Then 'Em Ende des EEproms hängen die Umlaute, Umrechnung der ASCII-Werte für den
    ' 'korrekten Datenzugriff
    ' Select Case G
    ' Case 228 : G = 127 'ä liegt bei Pos. 127 etc.
    ' Case 246 : G = 128 'ö
    ' Case 252 : G = 129 'ü
    ' Case 196 : G = 130 'Ä
    ' Case 214 : G = 131 'Ö
    ' Case 220 : G = 132 'Ü
    ' Case 223 : G = 133 'ß
    ' End Select
    ' End If
    G = G - 32 'Fängt mit ASCII ZEichen Nr. 32 (=Space) an
    G = G * G_byte 'Jedes Zeichen hat 2 X 16 Byte im Eeprom
    G = G + 4 ' 4 Byte Header
    ' --------- X,Y Position (Ausgabefenster) setzen ------------------
    '
    ' ****************** x2,y2
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' * *
    ' x1,y1 ******************
    '

    Fontbreite = 1 'Wir nehmen erstmal an: einfach breit & einfach hoch und setzen diese Werte
    Fonthoehe = 1
    Xpixel = Fontb ' 16 '5
    Ypixel = Fonth '16 '7

    Select Case Fontsize 'wenn nicht einfach breit und hoch: nötige Werte ändern
    Case 1 'einfach breit und doppelt hoch
    Fonthoehe = 2
    Ypixel = Fonth * 2 '33
    Case 2 'doppelt breit und doppelt hoch
    Fontbreite = 2
    Fonthoehe = 2
    Xpixel = Fontb * 2 '33
    Ypixel = Fonth * 2

    '33
    End Select

    X1 = Lcd_posx - 1 'fängt im Display mit 0 und nicht mit 1 an
    X1 = X1 * Fontb '16 '17 'Jedes Zeichen ist inkl. Leerspalte 6 Pixel breit
    X1 = X1 * Fontbreite 'Startposition, evtl. verdoppeln, wenn doppelt breit
    X2 = X1 + Xpixel 'Fenster ist 5 oder 11 Zeichen breit
    Decr X2
    Y1 = Lcd_posy - 1
    'fängt im Display mit 0 und nicht mit 1 an
    Y1 = Y1 * Fonth '16 'jedes Zeichen ist 8 Pixel hoch
    Y1 = Y1 * Fonthoehe 'Startposition evtl. verdoppeln, wenn doppel hoch
    'Incr Y1
    Y2 = Y1 + Ypixel 'andere Fensterecke liegt 7 oder 15 pixel tiefer
    Gosub Window2
    ' --------- Ende X,Y Position setzen ------------------

    For F = 1 To Fonth '16 'Die 5 Bytes des Zeichens in ein Array einlesen
    B = Lookup(g , Color8x8) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraylsb(f) = B
    Incr G
    If Type = 2 Then
    B = Lookup(g , Color16x16) 'Lookup liest aus dem Databereich Font8x6 den g-ten Wert ein; Alternative zum Auslesen aus dem Eeprom mit "Readeeprom"
    'Readeeprom B , G
    Zeichenarraymsb(f) = B
    Incr G
    End If
    Next F
    Tempfb = Fontb - 1
    '***** Attension ******


    ' For F = Fonth To 1 Step -1
    For F = 1 To Fonth 'von unten nach oben (*** Text an Länksseite ***)
    D = Fonthoehe 'doppelte höhe, also 2 x durchlaufen um jedes pixel 2x zu schreiben
    For E = 1 To D 'bei doppelt hoch 2 x durchlaufen
    For A = 0 To Tempfb '15 or 7 '6 Bytes für jedes Zeichen (1 Leerspalte + Spalte 2-6)
    C = Fontbreite 'doppelte breite also jedes pixel direkt nochmal schreiben
    While C > 0
    If Type = 2 Then
    Zeile = Makeint(zeichenarraylsb(f) , Zeichenarraymsb(f))
    Else
    Zeile = Zeichenarraylsb(f)
    End If
    If Zeile.a = 1 Then 'jedes Bit jeder Array-Variablen prüfen (siehe Manual)
    Rs = Parameter 'jedes einzelne Bit des Bytes prüfen und dann jeweilige Pixelfarbe
    Ausgabe = Lcd_fcolor 'wenn das bit eingeschaltet ist, vordergrundfarbe setzen
    Gosub Lcd_send
    Else
    Rs = Parameter 'wenn das bit ausgeschaltet ist, hintergrundfarbe setzen
    Ausgabe = Lcd_bcolor 'Farben = 1 word
    Gosub Lcd_send ' ausgeben
    End If
    Decr C
    Wend
    Next F 'nächster Array-Eintrag
    Next E
    Next A 'nächstes Bit (also nächste reihe)
    Incr Lcd_posx 'Position für das nächste Zeichen erhöhen
    Next R 'nächstes Zeichen im String
    End Sub



    '-------------------------------------------------------------------------------

    Window2: 'Ausgabefenster mit den kooridnaten x1,y1 und x2,y2 /X-direction)
    Rs = Kommando
    Ausgabe = &HEF90
    Gosub Lcd_send
    Ausgabe = &H0500 ' Direction or &H0500
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0800 + X1 'X1 **** X <-> Y **** !!!
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0900 + X2 'X2
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0A00 + Y1 'Y1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0B00 + Y2 'Y2
    Gosub Lcd_send
    Return
    '-------------------------------------------------------------------------------

    '-------------------------------------------------------------------------------
    '******* Schrift von unten nach oben ok. (*** Text an Schmalseite ***) (Links kurze Seite)
    Window: 'Ausgabefenster mit den kooridnaten x1,y1 und x2,y2 /X-direction)
    Rs = Kommando
    Ausgabe = &HEF90
    Gosub Lcd_send
    Ausgabe = &H0504 ' Direction or &H0504
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0800 + Y1 'X1 **** X <-> Y **** !!!
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0900 + Y2 'X2
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0A00 + X1 'Y1
    Gosub Lcd_send
    '-----------------
    Ausgabe = &H0B00 + X2 'Y2
    Gosub Lcd_send
    Return
    '-------------------------------------------------------------------------------



    '-------------------------------------------------------------------------------

    '-------------------------------------------------------------------------------


    '-------------------- Init Data ------------------------------------------------
    Init0:
    Data &HFDFD% , &HFDFD%

    Init1:
    Data &HEF00% , &HEE04% , &H1B04% , &HFEFE% , &HFEFE% , &HEF90% , &H4A04% , &H7F3F% , &HEE04% , &H4306%

    Init2:
    Data &HEF90% , &H0983% , &H0800% , &H0BAF% , &H0A00% , &H0500% , &H0600% , &H0700%,
    Data &HEF00% , &HEE0C% , &HEF90% , &H0080% , &HEFB0% , &H4902% , &HEF00% , &H7F01% , &HE181% , &HE202% , &HE276% , &HE183% , &H8001%
    Data &HEF90% , &H0000%
    '-------------------------------------------------------------------------------



    $include "color8X8.font"
    $include "color16x16.font"

    '#################################################################################
    Tacho:
    Data 32 , 32
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 50712% , 50712% , 65535% , 50712%
    Data 65535% , 50712% , 65535% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 50712% , 50712% , 50712% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 65535% , 50712% , 65535% , 50712% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 50712%
    Data 50712% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 65535% , 50712%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 50712%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 31% , 31%
    Data 31% , 31% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 65535% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 50712% , 50712% , 0%
    Data 0% , 0% , 1024% , 2016% , 2016% , 0% , 31% , 31%
    Data 31% , 31% , 0% , 63488% , 63488% , 32784% , 0% , 0%
    Data 0% , 65535% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 50712% , 50712% , 0% , 0%
    Data 0% , 2016% , 2016% , 2016% , 1024% , 0% , 31% , 31%
    Data 31% , 31% , 0% , 32784% , 63488% , 63488% , 63488% , 0%
    Data 0% , 0% , 65535% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 50712% , 0% , 0% , 0%
    Data 2016% , 2016% , 1024% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 32784% , 63488% , 63519%
    Data 0% , 0% , 0% , 65535% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 0% , 0% , 0% , 2016%
    Data 2016% , 0% , 0% , 0% , 2047% , 50712% , 0% , 0%
    Data 0% , 0% , 50712% , 2047% , 0% , 0% , 0% , 63519%
    Data 63519% , 0% , 0% , 0% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 50712% , 50712% , 0% , 0% , 2016% , 2016%
    Data 0% , 0% , 2047% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 2047% , 0% , 0%
    Data 63519% , 63519% , 0% , 0% , 65535% , 50712% , 0% , 0%
    Data 0% , 0% , 50712% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 2047% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 50712% , 2047% , 0%
    Data 0% , 63519% , 63519% , 0% , 0% , 65535% , 0% , 0%
    Data 0% , 0% , 65535% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 63519% , 63519% , 0% , 0% , 50712% , 0% , 0%
    Data 0% , 50712% , 50712% , 0% , 1024% , 2016% , 1024% , 0%
    Data 2047% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 2047%
    Data 0% , 32784% , 63519% , 32784% , 0% , 65535% , 50712% , 0%
    Data 0% , 65535% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 50712%
    Data 0% , 0% , 65504% , 33792% , 0% , 0% , 65535% , 0%
    Data 0% , 50712% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 33808% , 33808%
    Data 33808% , 33808% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 65504% , 65504% , 0% , 0% , 50712% , 0%
    Data 0% , 65535% , 0% , 0% , 2016% , 2016% , 0% , 2047%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 65535%
    Data 1040% , 33808% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 2047% , 0% , 65504% , 65504% , 0% , 0% , 65535% , 0%
    Data 0% , 50712% , 0% , 0% , 2016% , 2016% , 0% , 2047%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 65535%
    Data 65535% , 1040% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 2047% , 0% , 65504% , 65504% , 0% , 0% , 50712% , 0%
    Data 0% , 65535% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 33808% , 50712%
    Data 50712% , 65535% , 1040% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 65504% , 65504% , 0% , 0% , 65535% , 0%
    Data 0% , 50712% , 0% , 0% , 2016% , 2016% , 0% , 0%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 65535% , 1040% , 0% , 0% , 0% , 50712%
    Data 0% , 0% , 65504% , 65504% , 0% , 0% , 50712% , 0%
    Data 0% , 65535% , 50712% , 0% , 1024% , 2016% , 1024% , 0%
    Data 2047% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 65535% , 1040% , 0% , 0% , 2047%
    Data 0% , 33792% , 65504% , 33792% , 0% , 50712% , 65535% , 0%
    Data 0% , 0% , 50712% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 65535% , 1040% , 0% , 0%
    Data 0% , 65504% , 65504% , 0% , 0% , 65535% , 0% , 0%
    Data 0% , 0% , 50712% , 0% , 0% , 2016% , 2016% , 0%
    Data 0% , 2047% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 65535% , 1040% , 0%
    Data 0% , 2016% , 2016% , 0% , 0% , 50712% , 0% , 0%
    Data 0% , 0% , 65535% , 50712% , 0% , 0% , 2016% , 2016%
    Data 0% , 0% , 2047% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 2047% , 65535% , 0%
    Data 2016% , 2016% , 0% , 0% , 50712% , 50712% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 0% , 0% , 0% , 2016%
    Data 2016% , 0% , 0% , 0% , 2047% , 50712% , 0% , 0%
    Data 0% , 0% , 50712% , 2047% , 0% , 0% , 0% , 2016%
    Data 2016% , 0% , 0% , 0% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 65535% , 50712% , 0% , 0% , 0%
    Data 2016% , 2016% , 0% , 0% , 0% , 0% , 0% , 2047%
    Data 2047% , 0% , 0% , 0% , 0% , 0% , 2016% , 2016%
    Data 0% , 0% , 0% , 50712% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 65535% , 50712% , 0% , 0%
    Data 0% , 2016% , 2016% , 2016% , 1024% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 1024% , 2016% , 2016% , 2016% , 0%
    Data 0% , 0% , 50712% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 65535% , 50712% , 0%
    Data 0% , 0% , 2016% , 2016% , 2016% , 2016% , 2016% , 2016%
    Data 2016% , 2016% , 2016% , 2016% , 2016% , 2016% , 0% , 0%
    Data 0% , 50712% , 50712% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 65535% , 50712%
    Data 0% , 0% , 0% , 0% , 1024% , 2016% , 2016% , 2016%
    Data 2016% , 2016% , 2016% , 1024% , 0% , 0% , 0% , 0%
    Data 50712% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 65535%
    Data 50712% , 50712% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 50712% , 50712%
    Data 50712% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 65535% , 50712% , 65535% , 50712% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 50712% , 50712% , 50712% , 50712% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 65535% , 50712% , 65535% , 50712%
    Data 65535% , 50712% , 65535% , 50712% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    Data 0% , 0% , 0% , 0% , 0% , 0% , 0% , 0%
    'End of Bitmap
    '#################################################################################



    Re: S 65 Anssteuerung

    avrnix - 02.10.2007, 19:27


    Es hatte bei mir geklappt wieso jetzt nicht keine Ahnung du musst du mal Kay fragen der ist auch hier im Forum.

    :?



    Re: S 65 Anssteuerung

    merlin63 - 02.10.2007, 21:03


    hallo dirk

    ja hast recht, geht bei mir auch nicht.
    aber sage mal, wie geht das eigentlich mit den fonts, wie kommt man auf diese werte?
    gruß



    Re: S 65 Anssteuerung

    avrnix - 02.10.2007, 22:23


    Im Prinzip ganz einfach - ASCII Zeichen defnierst du in einen Raster sagen wir mal 7 x 5

    1.Zeiche auf Karopapier 7 x 5 Kästchen jedes Kästchen das ausgemalt wird ist ein Bit

    2 Codierung :

    die 7 Bit haben eine Wertung (hier in Dezimal ) Bit 7=64, Bit 6=32, Bit 5=16, 4=8, 3=4 , 2=2, 1=1

    Bit 8,7,6,5,4,3,2,1 Bit 8=immer 0
    x x x x x x -> die Werte(x) zusammen zählen 1. Wert
    x x -> 2. Wert etc
    x x
    x x x x x x

    Oder: du gehts von oben nach unten

    5 4 3 2 1
    Bit 1 x x
    x x -> Werte zusammen zählen
    x x
    x x
    x x x x
    x x
    Bit 7 x x
    Bit 8 immer NuLL x=1


    Meist wird Quer genommen ergibt weniger Werte in der Reihe :-)

    Das Programm setzt jetzt entsprechend der X, Y Koordinaten relativ die Punkte die man durch teilen mit 64,32,16...1 feststellen kannst ob ein Bit gesetzt wird oder nicht.

    Und so hat man sein ABC.

    Das ASCII Zeichen fängt mit Space an ( 32 ) und höet bei 127 Dez auf.
    <32 sind Steuerzeichen.

    So ist man auch ASCII Konform.

    Also eine Zahl in der Tabelle entspricht einen oder mehrere Punkte
    Das heist teile 64,32...1 und finde raus welche Punkte gesetzt worden sind
    ,. Zeiche diese auf ein Blatt Papier.

    Je nachdem was für ein Zeichensatz definiert wurde 8x8 , 16x 16 muß dies am Anfang beschrieben werden.

    Eine Routine liest die Werte aus und setzt entsprechend die Punkte nach den gleichen Schemata.


    8) Geht doch oder ? :wink:

    Ich muss mal ein Bild erstellen die x sollten ein A darstellen , bloss die Formatierung geht verloren

    :( [/b]



    Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken



    Weitere Beiträge aus dem Forum www.comwebnet.de

    probs mit schrift - gepostet von merlin63 am Dienstag 11.09.2007
    Projekte mit diesen Modulen - gepostet von avrnix am Sonntag 27.05.2007
    8Bit Wandlung - Erhöhung der Samplerate - gepostet von avrnix am Mittwoch 14.11.2007
    Fehlermeldung Probleme - gepostet von avrnix am Sonntag 11.11.2007
    DDS-Signalgenerator - gepostet von Wigbert am Sonntag 29.10.2006



    Ähnliche Beiträge wie "S 65 Anssteuerung"