www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ASCII "1E" ?


Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Weiß jemand von euch, ob "1E" eine tiefere Bedeutung hat?

Ich hab jetzt mal rausgefunden, dass es in ASCII "RS" bedeutet und 
irgndwie für einen Zeichentrenner steht, aber ich weiß nicht wo der 
Fehler bei meiner AD-Wandlung liegt, dass ich das immer wieder 
rausbekomm...

lg luki

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>aber ich weiß nicht wo der Fehler bei meiner AD-Wandlung liegt, dass ich >das 
immer wieder rausbekomm...

Was haben AD-Wandlung und ASCII-Zeichen miteinander zu tun?

Die Steuerzeichen waren ursprünglich zur Steuerung von Fernschreibern, 
ASCII-Terminals ü.ä. gedacht und haben heute nur noch bedingt ihre 
ursprüngliche Funktion.

MfG Spess

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke für die rückmeldung!

das hat folgenden zusammenhang: ich mach die AD-Wandlung und wandle die 
Zeichen vor dem Senden in einen ASCII-String um (das hat bei mir 
verschiedene Gründe) - jednfalls bekomm ich bei jeder der drei 
unterschiedlichen AD-Wandlungen immer "1E" raus - vielleicht deutet das 
ja auf einen einschlägigen Fehler hin...

lg

Autor: Andreas K. (derandi)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wo kommt das denn raus? Ich glaub eher du hast da ein Problem mit der 
Umwandlung von Integer zu String.. ;)
Zeig doch mal wie du umwandelst.

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich überprüf das immer mit einem Microchip PICkit seriel am PC... und 
teilweise auch noch zusätzlich mit einem Oszi... die AD-Wandlung kommt 
beim PIC16F88 bei den Pins RA0, RA1 und RA4 raus!

lg

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>die AD-Wandlung kommt beim PIC16F88 bei den Pins RA0, RA1 und RA4 raus!

Wenn ich das Datenblatt richtig deute, sind das die Eingänge.

MfG Spess

Autor: Bernd Rüter (Firma: Promaxx.net) (bigwumpus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz klar,
der Fehler liegt in Zeile 42 !

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja stimmt - verzeihung, mein fehler - bei RA0, RA1 und RA4 kommts rein 
und raus kommts bei X,Y und Z vom Beschleunigungssensor (MEMSIC)...

lg

Autor: ingFH (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde auf Zeile 74 tippen. 1E ist übrigens gleich 1e. Alles 
Klärchen?

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aus deiner Beschreibung wird kein Mensch schlau.
Mal machst du selber die A/D Wnadlung. Dann wieder liest es sich so, als 
ob der Sensor das schon machen würde.

Was machst du denn genau? Wer hat welches Programm geschrieben?

Wenn der Sensor eine Spannung liefert und dein Prgramm wandelt die 
Spannungen per A/D Wandlung in Zahlenwerte um, und in den Zahlenwerten 
ist ein 0x1E enthalten, dann wird wohl in deinem Programm ein Fehler 
sein. Denn: Der Sensor weiß nichts von ASCII, der liefert nur 
Spannungen.

Kann aber auch sein, dass ich falsch liege. Denn wie gesagt, deine 
Beschreibungen sind ein wenig konfus.

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich weiß - die beschreibung war offensichtlich alles andere als 
eindeutig...

Karl Heinz Buchegger hat den Nagel auf den Kopf getroffen: Sensor 
liefert Spannung, Spannung wird vom PIC AD-gewandelt und dabei erhalte 
ich dann immer und immer wieder 1E! Ich dachte, da 1E sowas wie 
Informationstrennzeichen (was aber an dieser Stelle überhaupt falsch 
angebracht wäre) bedeutet, würde man vielleicht einen bestimmten zweck 
dahinter vermuten können - z.B. sowie CR und LF...

lg

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
poste doch einfach die beschaltung und was du geschrieben hast
ansonst kann dir keiner genau was sagen

wenn alle werte bei dir 1E sind liegt entweder ein baudratenproblem oder 
ein wandlungsproblem vor

also sendet der µC richig ?
und wandelst du die daten richtig ?
wird der sensor korrekt ausgelsen ??

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
nö die spannungen misst du einfach
es geht halt von 0 bis 5V was dann bei 8bit 0 bis 255 interpretiert wird
bei 10bit eben von 0 bis 1023

also x,y,z hat in deinem programm einen zahlenwert von 0 bis 255( 8bit)


zum uart senden wandelst du das nun in einen string
itoa( zielbuffer, x, 10)
uart_print( zielbuffer )

sprint wandelt auch um brauch aber mehr recourcen
oder größer mit sprintf( zielbuffer , " x:%i y:%i z%i", x,y,z)
uart_print(zielbuffer)

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die vielen Rückmeldungen!

Der sensor arbeitet korrekt - wurde mitn oszi schon überprüft...

ich tipp stark auf einen software-fehler, aber ich find ihn nicht...

lg

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn du x.y.z mit trennzeiuchen erwartest müsste der sensor zb per uart 
angeschlossen sein damit er solche daten senden kann

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Luki schrieb:
> Danke für die vielen Rückmeldungen!
>
> Der sensor arbeitet korrekt - wurde mitn oszi schon überprüft...
>
> ich tipp stark auf einen software-fehler, aber ich find ihn nicht...
>

Zum x-ten mal

P O S T E    D E I N E N    C O D E

Wir sind doch keine Hellseher!

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn er nicht will ...

wenn is code is de inern für eine firma ist darf man das teils nicht .. 
das is was anderes

aber mitlerweile sollte genug geholfen sein

Autor: QNXer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Weiß jemand von euch, ob "1E" eine tiefere Bedeutung hat?

0x1E ist der Zeilentrenner beim guten QNX.

Das 0x0A vom UN*X quasi.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Sensor liefert Spannung, Spannung wird vom PIC AD-gewandelt und dabei erhalte
>ich dann immer und immer wieder 1E! Ich dachte, da 1E sowas wie
>Informationstrennzeichen (was aber an dieser Stelle überhaupt falsch
>angebracht wäre) bedeutet, würde man vielleicht einen bestimmten zweck
>dahinter vermuten können - z.B. sowie CR und LF...

Dein AD misst einen Wert. Wenn DU dann Müll daraus machst
und sendest, dann gibt es nichts zu interpretieren.
Steuerzeichen sendet ein Programm normalerweise nicht
von alleine. Dafür ist der Programmierer verantwortlich.

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
an dieser stelle werde ich mich mal zurückziehen - wie bereits richtig 
angedeutet wurde, sind wir dabei etwas halbwegs neuartiges zu kreieren 
und es wär nicht richtig das jetzt schon zu verbreiten - aba wenn 
interesse besteht kann ich mich meldn sobald ich den fehler gefunden 
hab...

danke jedenfalls für die rückmeldungen! echt ein wahnsinn wie schnell 
hier Antworten eintruddeln!

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja ne, is klar!

Autor: Wegstaben Verbuchsler (wegstabenverbuchsler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Liki

ob das was neues oder was alte ist ändert nix an folgender Tatsache:

Man kann Fehler genau beschreiben, ohne daß man irgendwelche 
verwinkelten Umschreibungen macht. Komm einfach präzise auf den Punkt, 
das zeichet einen guten Ingenieur aus.


Deine Eingangsfrage "Ob 1E eine tiefere Bedeutung hat"  hat reineweg 
garnichts mit deinem Problem zu tun. Auch wenn es einen spirituell oder 
andersartigen tieferen Sinn hätte, löst die Beantwortung DIESER Frage 
nicht dein Problem. Du solltes über Betreff und Inhalt (Formulierung) 
deiner Anfragen noch mal nachdenken.



PS: Meine Frau stellt manchmal auch so seltsame Fragen. Neulich standen 
wir an einem Schuhgeschäft, und sie sagte/fragte: "Sind die roten Schuhe 
dahinten nicht schön?". Meine Antwort war kurz und bündig "Ja". Das war 
aber "eigentlich" nicht das was sie gefragt hatte bzw. was sie als 
Antwort hören wollte.

Ahnst du, was ihre "genaue" Frage war, bzw. was sie als Antwort von mir 
hören wollte?

Autor: Luki (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK - ich denke ich bin allen hier inzwischen eine genaue Erläuterung 
meines Problems schuldig (tut mir leid für die konfusen Beschreibungen, 
aber ich war gestern schon ein wenig hinüber und hab versucht eine 
Lösung aus dem Himmel zu zaubern).

Also: ich will die Daten eines Beschleunigungssensor (X,Y,Z Achse) 
mittels PIC16F88 auswerten und anschließend in einen ASCII-Code 
umwandeln und diesen dann weitersenden.

Die drei Achsen des Beschleunigungssensor sind am PIC am PORTA an den 
Pins 0, 1 und 4 angeschlossen. Der Sensor liefert eine Spannung, die ich 
mit dem PIC AD wandeln will. Und dabei war mein Problem, dass ich 
ständig "1E" erhalten habe - egal welche Achse, egal welche Position.

Da der Beschleunigungssensor aber richtig arbeitet und die Platine sonst 
auch einwandfrei funktioniert bin ich mir nun sehr sicher gewesen den 
Fehler in der Software zu finden.

Ich kann das gesamte erst morgen oder am Dienstag austesten - jedoch 
habe ich heute vormittag einen groben Anfängerfehler gefunden:
der Wert der AD-Wandlung wird in ein Register geschrieben und ich habe 
dieses Register mit einem Befehl ins WREG verschieben wollen. jedoch hab 
ich den falschen Befehl verwendet - ich hab ständig verlangt, das der 
PIC einen "Literal"-Wert ins WRGE schiebt - jedoch wollte ich ein sich 
ständig änderndes Register verschieben. Ich denke das könnte wirklich 
der Grund für das Problem gewesen sein.

Danke an euch alle für die Hilfe (trotz meiner chaotischen 
Beschreibungen).

PS: ich denke deine Frau wollte einfach nur, dass du ihr die Schuhe 
kaufst, egal ob sie dir gefallen oder nicht ;)

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.