Software UART

Persönliche Seite #3297432
Lesenswert?

Hallo,

ich brauchte letztens einen Software UART. Für die Bibliotheken, welche 
man online findet, benötigt man jedoch einen ICP-Eingang und einen 
Output-Compare-Ausgang.

Das steht mir aber leider nicht zur Verfügung, also habe ich mit Hilfe 
eines Timer einen eigenen Software UART geschrieben, welchen ich gerne 
mit euch teilen möchte. Über Kritiken freue ich mich selbstverständlich 
sehr!

Die Lib ist für einen Atmega168 und den Timer1. Es geht aber prinzipiell 
mit jedem Timer. Der Timer misst mit einem einstellbaren Oversampling 
einen beliebigen RX Eingang. Der Schwellwert, wann ein Wert als High 
erkannt wird, ist einstellbar (ich empfehle hierbei min. 50%). Das 
Senden verläuft ähnlich.

Zu beachten ist, dass eine hohe Baudrate zu einer kurzen zeit zwischen 
den Timer-Interrupts führt, da das nicht wie beim Hardware UART eine 
eigene Einheit macht.

Für eine kleine zusätzliche Debugging-Schnittstelle o.ä. reicht es aber 
auch eine geringe Baudrate.

Ich wünsche viel Spaß damit!
Moderator Persönliche Seite #3297473
Lesenswert?

Hannes E. schrieb:
>...
> ich brauchte letztens einen Software UART. Für die Bibliotheken, welche
> man online findet, benötigt man jedoch einen ICP-Eingang und einen
> Output-Compare-Ausgang.
>...

Nicht bei allen...
http://www.siwawi.arubi.uni-kl.de/avr_projects/#softuart
ist aber gleiches Prinzip

Als Mod.: Anhang im ersten Beitrag gelöscht, da im zweiten Beitrag 
korrigiert. Thread in Unterforum Codesammlung verschoben.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren