Grad-Zeichen am LCD ausgeben

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo ich versuche ein Grad-Zeichen (°) mit Python auf meinem LCD auszugeben.
    Die betreffende Zeile sieht so aus:

    Code
    lcd_string('C: '+str(get_temperature())+' @ '+str(get_cpu_speed()[:3])+'MHz')

    Ich möchte nun statt dem "@" ein "°C" ausgeben. Wie stelle ich es an, das ein korrektes ° ausgegeben wird?
    Danke

    • Offizieller Beitrag
    Code
    # -*- coding: UTF-8 -*-
    a=u"°"
    b = 5
    print "temperatur is %d%s" %(b,a)

    Ausgabe

    Code
    temperatur is 5°

    Das display muss dieses Zeichen natürlich unterstützen.

    Der Unterschied zwischen Genie und Wahnsinn definiert sich im Erfolg.

    Einmal editiert, zuletzt von dbv (26. November 2013 um 12:31)


  • Hallo ich versuche ein Grad-Zeichen (°) mit Python auf meinem LCD auszugeben.
    Die betreffende Zeile sieht so aus:

    Code
    lcd_string('C: '+str(get_temperature())+' @ '+str(get_cpu_speed()[:3])+'MHz')

    Ich möchte nun statt dem "@" ein "°C" ausgeben. Wie stelle ich es an, das ein korrektes ° ausgegeben wird?
    Danke


    schreibe dir ein script wo alle Codes von 0 bis 255 auf dem Display ausgegeben werden

    notiere welcher Code für ° ist falls überhaupt vorhanden, oder programmiere es selber im Speicher vom Display ist meist an Position 0-7 Platz für 8 selbst gemachte Zeichen

    dann baue dir eine Umleitung, wenn der PI ° sendet, auf Code für ° umschalten.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • hier die Byte für °C Zeichen

    12, 18, 18, 12, 32, 32, 32, 32, // ° Celsiuszeichen

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Hallo, danke erst mal für die Hilfe.
    Ich habe das Script jetz mal so geändert (nur ein Auszug)

    Code
    # -*- coding: UTF-8 -*-
    a=u"°"
    lcd_string('C: '+str(get_temperature())+a+'C'+str(get_cpu_speed()[:3])+'MHz')

    Ausgegeben wird jetzt "40,1-C 700 MHz" . Also statt dem '°' ein '-' :s
    Wahrscheinlich habe ich die Variable 'a' falsch eingetragen. Laut der Tabelle sollte ja so ein Display ein ° darstellen können.
    (unten das 3. von rechts)
    Leider kann ich mit den Byte-Zahlen nicht viel anfangen da ichein absoluter Programmieranfänger bin. Es wäre super wenn jemand die Zeile mit dem 'lcd_string' abändern könnte damit das Grad-Zeichen erschein. Danke

  • setze doch mal für a = 239 ein (aber ich kann kein python Dialekt)

    dein ° hat aber Ecken das ist doof, evtl. findet sich noch jemand der weiss wie man in python die Bytefolge 12, 18, 18, 12, 32, 32, 32, 32, // ° Celsiuszeichen in den Speicher vom LCD bekommt

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (27. November 2013 um 10:14)

  • versuchs mit str(unichr(239))

    http://stackoverflow.com/questions/3673…-back-in-python


    auch wenn ich keine Ahnung von python habe, googeln kann ich :lol:

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (27. November 2013 um 11:01)


  • Das gibt folgenden Fehler:
    "UnicodeEncodeError: 'ascii' code can't encode character u\xef' in pos.0: ordinal not in range(128)"

    was ist denn das für ein doofer Fehler ? wer sagt denn das der Range nur 128 sein darf ?

    das gilt doch nur für signed char, aber char sind unsigned.....

    also dann wird das auch nicht gehen ?

    Code
    print('\239')


    ich würde ja das ° Zeichen in LCD mem 0 erstellen mit meiner Bytefolge:
    12, 18, 18, 12, 32, 32, 32, 32, // ° Celsiuszeichen

    nach dieser Anleitung:
    http://www.tinkerforge.com/de/doc/Softwar…let_Python.html

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (27. November 2013 um 11:52)


  • Es könnte alles so einfach sein.....wenn man weiß wie es geht......:thumbs1:

    Code
    lcd_string('C: '+str(get_temperature())+chr(223)+'C'+str(get_cpu_speed()[:3])+'MHz')


    Danke noch mal allen für die (vergebliche) ;) Hilfe!

    aber 223 ist immer noch sehr eckig :D

    aber wenn es dir so gefällt :fies:

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • o.k. ich bin gespannt, wie du bei 5x8 Pixeln ein rundes Zeichen hinbringst...:)

    ich habs doch hier eingestellt :s soll ich es dir auf Karopapier aufmalen ?


    .oo.
    o..o
    o..o
    .oo.

    im Gegensatz zum eingebauten mit Ecken

    ooo
    o..o
    ooo

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • ...is ja gut, ich gebe mich geschlagen.


    musst du nicht, vielleicht hilft das ?

    hier mal ein Link:
    http://www.roboternetz.de/community/thre…ichen-in-BASCOM

    zum download:
    http://www.mst-page.de/lcdchar_designer.zip

    Deflcdchar 0,12,18,18,12,32,32,32,32

    sieht aus wie meine Zeichenfolge :D

    Bilder

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    Einmal editiert, zuletzt von jar (29. November 2013 um 15:29)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!