www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Array über UART ausgeben (C18)


Autor: Slimer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Wie kann ich in C18 am besten einen Text der sich in einm Array befindet 
über UART ausgeben? gibt es eine Möglichkeit, das einfach mit z.B. putc 
zu machen?

Gruß
Simon

Autor: Michael M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
pointer auf den array-beginn. liefert C freihaus.
while(pointer-inhalt), pointer-inhalt ausgeben, pointer inkrementieren.
tadaa

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das mit Pointer ist aber gefährlich, hat man mir neulich beigebracht.

Autor: Michael M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aha? erläuterung?

Autor: Frank501 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Pointer sind böse :D

Wenn man den Pointer beim Lesen immer schön weiter inkrementiert, ohne 
darauf zu achten, wo die Daten liegen erhält man im besten Fall einfach 
nur Datensalat.
Beim Schreiben kann es gut passieren, das man ohne Vorsichtsmassnahmen 
andere Daten überschreibt.

Natürlich kann man gerade auf µC's schön Speicherplatz sparen, wenn man 
anstatt Variablen zu definieren und Daten von einer in die andere 
kopiert einen Pointer verwendet. Aber das sollte dann schon soweit 
durchdacht sein, das es zu keinen Irrtümern kommen kann.

Frank

Autor: Rüdiger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich hab die Sache mit den Pointer noch nie richtig kapiert. Gibt es 
irgendwo eine (sehr) einache Erklärung in dem Gebiet?

Autor: Michael M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> einache Erklärung in dem Gebiet?
ja, hier:
char feld[]={0x13,0x14,0x15}

wenn ich jetzt folgendes mache:
*variable = &feld;
dann steht in variable die adresse der speicherzelle, an der das array 
feld beginnt.
lese ich variable aus, bekomme ich 0x13
lese ich variable+1 aus, bekomme ich 0x14.

ein string ist nichts anderes als ein solches array, das auf \0 endet.
wenn ich danach prüfe, laufe ich mit dem pointer nirgens hin, wo ich 
nicht hingehöre.

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Michael M. schrieb:
> aha? erläuterung?

Verstanden habe ich es auch nicht, aber man hat es mir so versichert...
Beitrag "Re: Hilfe Struct in einem Array"

Autor: Michael M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
da wird aber auch nicht auf sinnvolle daten geprüft. da liegt der 
unterschied. bei einem string weißt du, dass er mit NULL endet.

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.