www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Variablenausgabe auf GLCD


Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich besitze ein GLCD mit ks0108 128*64

habe auch schon die bibliotheken aus dem Forum hier verwendet:

#include "ks0108.h"
#include "ks0108.c"
#include "font12x16.h"
#include "font6x8.h"

leider kann ich damit keine Variablen ausgeben nur einen string, aus dem 
Progmem


-->

const char pgmString[] PROGMEM = "hallowelt";

kann mir jmd sagen wie ich diesen typ verstehen kann, weiss nur das 
"hallowelt" im nicht flüchtigen speicher liegt.

Danke

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann keiner helfen?

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hast du mal daran gedacht, welchen Aufwand man als Leser betreiben muss, 
um diese Frage zu beantworten? Das fängt damit an, im Forum rumzusuchen, 
welche Files du dafür verwendest.

Der String liegt übrigens so im Flash, nicht im RAM. Da der AVR (wird 
wohl einer sein, aber auch diese Info fehlt) darauf nicht in gleicher 
Weise zugreifen kann, muss es eine Funktion geben, die mit der 
Flash-Adresse des Strings etwas anfangen kann.

Autor: Maxx (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn Du genug FLASH und RAM hast, ist "sprintf" Dein Freund.

Autor: Teplotaxl X. (t3plot4x1)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber nicht bei GLCDs ;) Nur bei HD44780 (kP wie die heißen) kompatiblen 
LCDs

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
könnt ihr mir vllt wenigstens nähere infos zu diesem progmem gebe? warum 
kann ich da nur konstanten reinschreiben? weil zur laufzeit die 
variablen schon festsetehen müssen?


sprintf habe ich schon probiert:


ks0108Init();
ks0108GotoXY(0,4);
fdevopen(ks0108PutChar,Null, 0);
printf_P(PSTR("Variable: %d"), z);


habe ich hier ausm forum aber er meckert an den 3 parametern rum und 
will nur 2 haben.

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Gast wrote:
> habe ich hier ausm forum aber er meckert an den 3 parametern rum und
> will nur 2 haben.

Bloß nicht zu viele Informationen oder genaue Fehlermeldungen. Du 
könntest ja die Forummitglieder überfordern.

Autor: Maxx (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Aber nicht bei GLCDs ;) Nur bei HD44780 (kP wie die heißen) kompatiblen
>LCDs
Wenn Du einen String augeben kannst, warum sollte dann sprintf nicht auf 
GLCDs funktionieren?
unsigned char temp[25];

char a = 55; // nur als Beispiel
int b  = 5000;

sprintf(&temp0],"a:%02XH b:%05u",a,b);
... hier die Funktion aufrufen, die sonst den String ausgibt...

Ergebnis ist "a:37H b:05000", was dann bei &temp steht und mit NULL 
endet.

Autor: Marco M. (marco1987)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ... hier die Funktion aufrufen, die sonst den String ausgibt...
> [/c]
>
> Ergebnis ist "a:37H b:05000", was dann bei &temp steht und mit NULL
> endet.


kannst du die Zeilen nochmal etwas ausführlicher beschreiben was soll 
ich denn jetzt mit der string funktion, die gibt mir doch nur ein string 
aus und die variable temo kann ich doch nicht ausgeben lassen. is ja 
halt nur ein string. bitte um hilfe

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.