Hallo leute, ich muss eine Eindrahtschnittstelle auf einem PIC12F629 realisieren. Übder diese Schnittstelle sollen Daten im Manchester Code gesendet und empfangen werden können. Der timer T1 (16Bit) ist bereits für die Erzeugung einer RTC (Real Time Clock) in verwendung. Somit steht nur noch der timer T0 mit 8Bit zur verfügung. Hat schonmal jemand sowas ähnliches realisiert? Ich bin für jede anregung / unterstützung dankbar.
Bei Manchester Encoding wird meistens ein Preamble gesendet, damit sich der Empfänger auf das Signal syncronisieren kann. Man kann dieses nutzen, um eine Zeitreferenz zu bekommen, die man dann al basis verwendet.
nuess wrote: > Der timer T1 (16Bit) ist bereits für die Erzeugung einer RTC (Real Time > Clock) in verwendung. Somit steht nur noch der timer T0 mit 8Bit zur > verfügung. Was in der Regel nicht stimmt. Ein durchlaufender Timer kann sehr wohl mehrere Zeitaufgaben erledigen. Ich hatte auch grad das Problem, über einen Draht (Optokoppler) etwas zu übertragen. Dabei ist mir aufgefallen, daß es wesentlich einfacher als Manchester geht. Ich erzeuge bzw. erkenne die Zeiten zwischen 2 Flanken: Sender: 1 * Bitzeit = 0 2 * Bitzeit = 1 4 * Bitzeit = Pause (keine Daten) Empfänger: 3 * Bitzeit = Pause 1,5 * Bitzeit = 0/1-Unterscheidung Der Code läuft in C aufm ATtiny13 (Sender) bzw. ATmega8 (Empfänger) Peter
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.