hey! hab fuer debuggingzwecke mal eben schnell einen uart rx und tx implementiert. dabei sind mir zwei implementierungsmoeglichkeiten eingefallen. es ist zwar bereits fertig, aber ich frage mich trotzdem ob es vor- und nachteile der jeweiligen variante gibt. 1. fsmd: wertet je nach state die start-, stop-, paritaets- und datenbits aus. 2. shift register: shiftet nach dem startbit alle folgenden bits in einen vector, der den uart frame repraesentiert. die auswertung erfolgt danach. welche moeglichkeit haltet ihr fuer sinnvoller? was hat sich als besser bewaehrt? bin nur neugierig. ;) all the best johannes
Johannes Walter schrieb: > dabei sind mir zwei implementierungsmoeglichkeiten eingefallen. Ich könnte noch die Mux-Variante anbieten. Die ist beim sender in CPLDs besser: http://www.lothar-miller.de/s9y/categories/49-RS232-IO > aber ich frage mich trotzdem ob es vor- und > nachteile der jeweiligen variante gibt. Sieh dir mal den Ressourcenverbrauch an... > welche moeglichkeit haltet ihr fuer sinnvoller? Die zweite, weil die geradliniger und weniger fehlerträchtig ist. > was hat sich als besser bewaehrt? Man muss das Rad ja nicht neu erfinden. Sieh dir mal an, wie das in den weitverbreiteten uCs gemacht wird. Du wirst erkennen: Startbit detektieren und die folgenden Bits (evtl. nach Zweifach oder Dreifachabtastung) schieben. Danach auswerten... Meine (gern kopierte und erprobte) Lösung ist die da: http://www.lothar-miller.de/s9y/categories/42-RS232
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.