AskSin++ LCD Unterstützung
Moderator: Co-Administratoren
Re: AskSin++ LCD Unterstützung
So sieht es dann aus:
Homematic raspberrymatic, iobroker, Asksinpp und Arduinos - rund 50 Geräte
-
- Beiträge: 12108
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2148 Mal
- Kontaktdaten:
Re: AskSin++ LCD Unterstützung
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?
Hast du schon den kompletten Font umgedreht?
Würdest du das der Allgemeinheit zur Verfügung stellen bzw. einen PR machen wollen?
Re: AskSin++ LCD Unterstützung
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
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
-
- Beiträge: 12108
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2148 Mal
- Kontaktdaten:
Re: AskSin++ LCD Unterstützung
Ach ich war am Handy direkt auf Seite 2 gelandet und hab den vorherigen Post gar nicht gesehen.
Jetzt ist’s klar.
Danke!
Jetzt ist’s klar.
Danke!
Re: AskSin++ LCD Unterstützung
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
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
Re: AskSin++ LCD Unterstützung
ok, scheint zu funktionieren:
noch etwas verkürzt ...
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);
}
}
Homematic raspberrymatic, iobroker, Asksinpp und Arduinos - rund 50 Geräte
- Gelegenheitsbastler
- Beiträge: 586
- Registriert: 15.10.2017, 07:29
- Hat sich bedankt: 14 Mal
- Danksagung erhalten: 41 Mal
Re: AskSin++ LCD Unterstützung
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:
Ich habe mir vorher die aktuelle "AskSinPP-master" herunter geladen und installiert.
Wo könnte der Fehler liegen?
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
Wo könnte der Fehler liegen?
-
- Beiträge: 12108
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2148 Mal
- Kontaktdaten:
Re: AskSin++ LCD Unterstützung
Das kann eigentlich nicht sein, denn wenn du vorher tatsächlichGelegenheitsbastler hat geschrieben: ↑25.03.2020, 12:28Testweise habe ich den Sketch aus dem ersten Beitrag kompilieren wollen. Da wird angemeckert, dass die Datei/das Verzeichnis nicht vorhanden sei.
gemacht hast, dann ist die Datei dort mit dabei. Im Unterverzeichnis "displays".Gelegenheitsbastler hat geschrieben: ↑25.03.2020, 12:28Ich habe mir vorher die aktuelle "AskSinPP-master" herunter geladen und installiert.
P.S: Dein Fehler kann alles mögliche sein... da reicht schon ein vergessenes/zu vieles "}" irgendwo im Quelltext
- Gelegenheitsbastler
- Beiträge: 586
- Registriert: 15.10.2017, 07:29
- Hat sich bedankt: 14 Mal
- Danksagung erhalten: 41 Mal
Re: AskSin++ LCD Unterstützung
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.
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.
-
- Beiträge: 12108
- Registriert: 20.11.2016, 20:01
- Hat sich bedankt: 848 Mal
- Danksagung erhalten: 2148 Mal
- Kontaktdaten:
Re: AskSin++ LCD Unterstützung
Aus diesem Text ging nicht hervor, dass das Problem bei deinem eigenen Sketch auftritt, sondern dass es sich umGelegenheitsbastler hat geschrieben: ↑25.03.2020, 12:28Testweise 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:
handelt
Das liegt nicht an Ubuntu. Das OS hat damit relativ wenig zu tun.Gelegenheitsbastler hat geschrieben: ↑25.03.2020, 14:20Ubuntu erwartet tatsächlich den kompletten Pfad zur Datei
Vielmehr stimmt der Lib-Suchpfad in deiner Entwicklungsumgebung nicht.