AskSin++ LCD Unterstützung

Entwicklung und Bau von Hardware aller Art, die im HM-Umfeld eingesetzt werden kann

Moderator: Co-Administratoren

harvey
Beiträge: 116
Registriert: 01.12.2013, 13:19
Danksagung erhalten: 2 Mal

Re: AskSin++ LCD Unterstützung

Beitrag von harvey » 28.10.2019, 21:32

So sieht es dann aus:
IMG_20191028_212947.jpg
Homematic raspberrymatic, iobroker, Asksinpp und Arduinos - rund 50 Geräte

jp112sdl
Beiträge: 4768
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 157 Mal
Danksagung erhalten: 332 Mal
Kontaktdaten:

Re: AskSin++ LCD Unterstützung

Beitrag von jp112sdl » 28.10.2019, 21:35

Ja cool, sieht gut aus.

Hast du schon den kompletten Font umgedreht?

Würdest du das der Allgemeinheit zur Verfügung stellen bzw. einen PR machen wollen?

VG,
Jérôme

harvey
Beiträge: 116
Registriert: 01.12.2013, 13:19
Danksagung erhalten: 2 Mal

Re: AskSin++ LCD Unterstützung

Beitrag von harvey » 28.10.2019, 21:44

Hi,
ja, alles umgedreht, auch die Buchstaben. Einige sehen aber unschön aus, da der mittlere senkrechte Strich jetzt optisch
zu weit rechts ist, das "D" ist identisch mit dem "O", aber meist passt es.

Ich hoffe dass ich alle Bedeutungen (z.. im Textausgabe) des Punktes/Doppelpunktes richtig verstanden habe.
Beim Float geht der Anzeigeumfang jetzt von 00.0 bis 999, aber eben auch nur maximal eine Nachkommastelle.
Den negativen Float habe ich noch nicht gemacht, von der Anzeige geht eigentlich -0.1 (mit Komma) bis -99 (ohne Komma).

Code ist ja im Post komplett enthalten, alles mit #ifdef LCDREVERSED. Und na klar, frei für alle.

Ich bin aktuell ohne Git unterwegs ....
schönen Abend und ciao
Harvey
Homematic raspberrymatic, iobroker, Asksinpp und Arduinos - rund 50 Geräte

jp112sdl
Beiträge: 4768
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 157 Mal
Danksagung erhalten: 332 Mal
Kontaktdaten:

Re: AskSin++ LCD Unterstützung

Beitrag von jp112sdl » 28.10.2019, 21:48

Ach ich war am Handy direkt auf Seite 2 gelandet und hab den vorherigen Post gar nicht gesehen.

Jetzt ist’s klar. :)

Danke!

VG,
Jérôme

harvey
Beiträge: 116
Registriert: 01.12.2013, 13:19
Danksagung erhalten: 2 Mal

Re: AskSin++ LCD Unterstützung

Beitrag von harvey » 28.10.2019, 22:04

Hab gerade gesehen, dass
lcd.printNumber(-14 ,false);
schon mal funktioniert, zeigt brav "-14" an, damit sehe ich schon, wie das mit dem negativem Float gehen kann.
Und lcd.printNumber(-14 ,false, LcdType::SINGLE_DOT); gibt wunderbar "-1.4" aus, schon fast fertig ....

PS: eine Funktion printNumber(in16_t number) OHNE bool leadingzero gibt es nicht :-(
Homematic raspberrymatic, iobroker, Asksinpp und Arduinos - rund 50 Geräte

harvey
Beiträge: 116
Registriert: 01.12.2013, 13:19
Danksagung erhalten: 2 Mal

Re: AskSin++ LCD Unterstützung

Beitrag von harvey » 28.10.2019, 22:12

ok, scheint zu funktionieren:

Code: Alles auswählen

  void printNumberAsFloat(int16_t number) {
    if (number > 999) {
      number = (number + 5) / 10;
      printNumber(number, false, NO_DOT);
    } else if (number < -99) {
      number = (number - 5) / 10;
      printNumber(number ,false, NO_DOT);
    } else { 
      printNumber(number, false, SINGLE_DOT);
    }
  }
noch etwas verkürzt ...
Homematic raspberrymatic, iobroker, Asksinpp und Arduinos - rund 50 Geräte

Benutzeravatar
Gelegenheitsbastler
Beiträge: 529
Registriert: 15.10.2017, 07:29
Hat sich bedankt: 13 Mal
Danksagung erhalten: 10 Mal

Re: AskSin++ LCD Unterstützung

Beitrag von Gelegenheitsbastler » 25.03.2020, 12:28

Ich habe mir seinerzeit auch einige der kleinen, günstigen Displays geordert. Nun hätte ich (abseits von HM) einen konkreten Einsatzzweck. Testweise habe ich den Sketch aus dem ersten Beitrag kompilieren wollen. Da wird angemeckert, dass die Datei/das Verzeichnis nicht vorhanden sei. Also habe ich die Datei ein Verzeichnis tiefer kopiert und verlinke somit direkt auf die Datei (#include <Lcd6749.h>). Das scheint zu klappen. Aber nun meckert er etwas anderes an:

Code: Alles auswählen

/opt/arduino-1.8.9/hardware/tools/avr/bin/avr-gcc -Os -Wl,--gc-sections -mmcu=atmega328p -o /tmp/arduino_build_245812/sketch_mar25a.ino.elf /tmp/arduino_build_245812/sketch/sketch_mar25a.ino.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/AlarmClock.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/Globals.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/HMID.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/Led.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/PhaseCut.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes128_dec.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes128_enc.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes_dec.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes_enc.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes_invsbox.c.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes_keyschedule.cpp.o /tmp/arduino_build_245812/libraries/AskSinPP-master/aes_sbox.c.o /tmp/arduino_build_245812/libraries/AskSinPP-master/gf256mul.S.o /tmp/arduino_build_245812/libraries/AskSinPP-master/gf256mul.cpp.o /tmp/arduino_build_245812/core/core.a -L/tmp/arduino_build_245812 -lm
/tmp/arduino_build_245812/core/core.a(main.cpp.o): In function `main':
/opt/arduino-1.8.9/hardware/arduino/avr/cores/arduino/main.cpp:43: undefined reference to `setup'
/opt/arduino-1.8.9/hardware/arduino/avr/cores/arduino/main.cpp:46: undefined reference to `loop'
collect2: error: ld returned 1 exit status
Ich habe mir vorher die aktuelle "AskSinPP-master" herunter geladen und installiert.

Wo könnte der Fehler liegen?

jp112sdl
Beiträge: 4768
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 157 Mal
Danksagung erhalten: 332 Mal
Kontaktdaten:

Re: AskSin++ LCD Unterstützung

Beitrag von jp112sdl » 25.03.2020, 12:34

Gelegenheitsbastler hat geschrieben:
25.03.2020, 12:28
Testweise habe ich den Sketch aus dem ersten Beitrag kompilieren wollen. Da wird angemeckert, dass die Datei/das Verzeichnis nicht vorhanden sei.
Das kann eigentlich nicht sein, denn wenn du vorher tatsächlich
Gelegenheitsbastler hat geschrieben:
25.03.2020, 12:28
Ich habe mir vorher die aktuelle "AskSinPP-master" herunter geladen und installiert.
gemacht hast, dann ist die Datei dort mit dabei. Im Unterverzeichnis "displays".

P.S: Dein Fehler kann alles mögliche sein... da reicht schon ein vergessenes/zu vieles "}" irgendwo im Quelltext

VG,
Jérôme

Benutzeravatar
Gelegenheitsbastler
Beiträge: 529
Registriert: 15.10.2017, 07:29
Hat sich bedankt: 13 Mal
Danksagung erhalten: 10 Mal

Re: AskSin++ LCD Unterstützung

Beitrag von Gelegenheitsbastler » 25.03.2020, 14:20

Ich habe den Fehler gefunden. Ubuntu erwartet tatsächlich den kompletten Pfad zur Datei. Dann läuft es.
Die anderen Fehler waren dämlicher Natur. Ich habe vergessen void setup und void loop in den Sketch zu schreiben.
Trotzdem danke für die schnelle Antwort.

jp112sdl
Beiträge: 4768
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 157 Mal
Danksagung erhalten: 332 Mal
Kontaktdaten:

Re: AskSin++ LCD Unterstützung

Beitrag von jp112sdl » 25.03.2020, 14:32

Gelegenheitsbastler hat geschrieben:
25.03.2020, 12:28
Testweise habe ich den Sketch aus dem ersten Beitrag kompilieren wollen. Da wird angemeckert, dass die Datei/das Verzeichnis nicht vorhanden sei. Also habe ich die Datei ein Verzeichnis tiefer kopiert und verlinke somit direkt auf die Datei (#include <Lcd6749.h>). Das scheint zu klappen. Aber nun meckert er etwas anderes an:
Aus diesem Text ging nicht hervor, dass das Problem bei deinem eigenen Sketch auftritt, sondern dass es sich um
Gelegenheitsbastler hat geschrieben:
25.03.2020, 12:28
den Sketch aus dem ersten Beitrag
handelt 8)
Gelegenheitsbastler hat geschrieben:
25.03.2020, 14:20
Ubuntu erwartet tatsächlich den kompletten Pfad zur Datei
Das liegt nicht an Ubuntu. Das OS hat damit relativ wenig zu tun.
Vielmehr stimmt der Lib-Suchpfad in deiner Entwicklungsumgebung nicht.

VG,
Jérôme

Antworten

Zurück zu „Hardwareentwicklung und Selbstbau von Aktoren und Sensoren“