Hey, ich wollte mal fragen, ob es in C ein befehl gibt mit den man ACII zeichen in ein Array speichern kann, so wie itoa für int zahlen?
Mark schrieb: > ich wollte mal fragen, ob es in C ein befehl gibt mit den man ACII > zeichen in ein Array speichern kann, so wie itoa für int zahlen? was willst du machen? Zeig mal ein Beispiel. Ein Zeichen braucht kein Array, weil es nur ein Zeichen ist. viele Zeichen sind ein String.
Was stellst Du Dir unter "ASCII Zeichen in ein Array speichern" vor? Was soll das sein? itoa macht was völlig anderes, das erzeugt aus einem numerischen Wert eine Zeichenkette. Aber ... Zeichen sind schon Zeichen - was willst Du erreichen?
eigentlich wollte ich über uart debuggen und mir die variablen ausgeben lassn. nur arbeite ich ohne printf sonder mit ner string ausgabe.
Mark schrieb: > nur arbeite ich ohne printf sonder mit ner string ausgabe. und warum sendest du dann nicht einfach den String? (ein String ist ein Array von zeichen!)
also könnte ich mit der Funktion: Array[0]='i'; so ein i senden?(bzw so das i in dem Array speichern?
Mark schrieb: > Array[0]='i'; > > so ein i senden?(bzw so das i in dem Array speichern? ersteres nein, zweites ja
meinte mit senden, wenn das Array das 'i' enthält ob ich das i auch als i über USART/RS232 dann auch als i Ausgegeben bekomme oder ob ich dann den Hex(0x69) bzw den dezimal Code(105) bekomme.
Mark schrieb: > meinte mit senden, wenn das Array das 'i' enthält ob ich das i auch als > i über USART/RS232 dann auch als i Ausgegeben bekomme oder ob ich dann > den Hex(0x69) bzw den dezimal Code(105) bekomme. kommt darauf an wie du sendest. Wenn deine Senderoutine alle Zeichen erst in Hex umwandelt kommt es auch am ende als Hex raus.
Was du am anderen Ende liest, ist einzig und allein von der Darstellung abhängig. Dein Mikrocontroller wird im falle von array[0]=105, array[0]=0x69 oder array[0]='i' jedes Mal dasselbe senden. Wenn du das ganze am PC im Terminal betrachtest kannst du dann (je nach Terminal) einstellen ob du dec, hex, oder ascii als Ausgabe auf dem Bildschirm haben willst.
Mark schrieb: > USART/RS232 Da wird eine Bitfolge übertragen, wie du diese interpretierst ist deine Sache. Eine Bitte hätte ich allerdings an Dich: LIES EIN C-BUCH FÜR ANFÄNGER, das nimmt hier doch sonnst kein Ende!
Mark schrieb: > meinte mit senden, wenn das Array das 'i' enthält ob ich das i auch als > i über USART/RS232 dann auch als i Ausgegeben bekomme oder ob ich dann > den Hex(0x69) bzw den dezimal Code(105) bekomme. Der Computer kennt nur nullen oder Einsen. Der Uart kennt auch nur Zahlen von 0..255 in einem Zeichen. Der Uart zeigt auch nichts an. Was das Empfangsprogramm auf dem PC-Bildschirm oder auf einem 4*20-Zeichen-LCD ausgibt, hängt vom dafür zuständigen Programm ab. folgende Anweisung machen das selbe. x = 'i'; x = 105; x = 0x69 x = 100+5; printf("x ist %i, %x, %c", x,x,x); /*gibt aus:*/ x ist 105, 69, i
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.