Hallo Gemeinde, ich habe wieder eine Frage:
Ich ahbe vor eine infrarotübertragung zu bauen, die bytes senden kann, als Bsp. 10011001.
Ich habe mir nun Gedanken darüber gemcht, wie ich das Byte übertragen könnte. Meine Erste Idee ist folgende:
Eine 1 wird duch kurzes einschalten des Senders, eine 0 duch längeres Einschalten des Senders definiert, zwischen den zahlen befindet sich eine kurze Pause, um die CPU die länge des Signals zu errechnen und abzuspeichern, und um dien Länge überhaupt zu definieren.
Siehe dazu BILD 2!! (nicht 1)
Meine Zweite Idee ist folgende, um die Zeitliche länge des Signals zu verkürzen, lasse ich die Pausen zwischen den Zahlen weg.
Eine 1 ist ein langes, eine 0 ein kurzes Signal. Eine 1 kann sowohl durch langes einschalten, als auch langes ausschalten des Signals definiert werden.
Siehe dazu BILD 1!!
Natürlich habe ich auch einfach daran gedacht, das Byte einfach so zu übnertragen, also 1 = Siganl ein; 0 = Signal aus, aber was wäre z.B.: wenn ich ein Byte 00010000 habe, die CPU wüsste nciht, wo das Signal beginnt, bzw. wo es endet.
Mit einer Initialisierung z.B. 101 am Anfang un Ende zusätzlich, wäre dieses Problem gelöst, allerdings müsste ich sicherstellen, das die CPu den Eingang immer genau dann abfragt, wenn gerade gewechselt wurd, und da ich das nicht sicherstellen kann, gefällt mir die Idee nicht.
Wie geht es denn nun "normalerweise"?
Sorry, dass mein Titel vielleicht nicht so passend gewählt ist.
Lesezeichen