www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik String übergeben in C18


Autor: Chipsammler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schommn jeamdn wach? :)

ich habe für mein LCD Display die Funktion GLCD_putchar() die jeweils 
ein Zeichen am Bildschirm ausgibt und dann eine Stelle nach rechts 
rückt. Das funktioniert auch ohne Probleme.
Nun wollte ich mit einer weiteren FUnkition GLCD_putmsg() einen String 
ausgeben.

void GLCD_putmsg(unsigned char *Message)
{
  while(*Message!=0)
  {
    GLCD_putchar(*Message++);
  }
}


ich hatte versucht, die Funktion mit:
GLCD_putmsg("Hello world");
oder
GLCD_putmsg('Hello world');
aufzurufen.Leider blieb der Erfolg dabei bisher aus. Kann mir jemand 
weiterhelfen?

mfg
Chipsammler

Autor: erd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
void GLCD_putmsg(const char *Message)
{
    register char x;

    while ( (x = *Message++) )
        lcd_putc(x);
}

so musses gehen

Autor: Chipsammler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ne geht leider auch nicht. macht es eigentlich einen Unterschied, ob die 
Funktion in einer anderen Datei liegt? also:
main.c
glcd.c

Autor: christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du sie über die Header datei in den anderen C Dateien einbindest 
dann nicht.

christian

Autor: christian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kleiner Nachtrag:

Manchmal hilft auch ein Blick in den C18 Users Guide!

void putsUSART_rom( static const rom char *data )
{
/* Send characters up to the null */
  do
  {
    while (BusyUSART());
    /* Write a byte to the USART */
    putcUSART (*data);
  } 
   while (*data++);
}

Autor: A. K. (prx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wobei das "rom" hier entscheidend ist, nicht das "static".

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.