Forum: Mikrocontroller und Digitale Elektronik Attiny 841- UART soll invertiert senden


von Ferdinand H. (bastler_1958)


Lesenswert?

Hallo,

wie kann man bei einem Attiny 841 die TXD0- Daten aus dem UART 
invertiert ausgeben, so dass der Ruhepegel ca. 0V ist?

Mit dem in Bascom enthaltenem Software UART ist es möglich, aber nicht 
an dem TXD0- PIN, das der Hardware UART belegt.
Leider sind die Platinen fertig und die Peripherie will unbedingt 
negiert angesprochen werden.

mfg Ferdinand

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Ferdinand H. schrieb:
> aber nicht an dem TXD0- PIN, das der Hardware UART belegt
Richtig. Das lässt sich auch nicht ändern. Du wirst basteln müssen. Aber 
das hast du ja sowieso schon getan, weil du es nicht so gemacht hast, 
wie alle Anderen.

Mein Tipp für die Bastelei: Single Gate Inverter.

von MWS (Gast)


Lesenswert?

Ferdinand H. schrieb:
> Mit dem in Bascom enthaltenem Software UART ist es möglich, aber nicht
> an dem TXD0- PIN, das der Hardware UART belegt.

Warum sollte das nicht gehen? Wenn $Baud raus ist, wird das HW-UART 
nicht aktiviert. Und  wenn's aktiviert wäre, dann eben über die 
TXEN/RXEN Registerbits deaktivieren. Dann ist's wieder ein normaler Pin 
und arbeitet mit dem Softuart.

Lothar M. schrieb:
> Ferdinand H. schrieb:
>> aber nicht an dem TXD0- PIN, das der Hardware UART belegt
> Richtig. Das lässt sich auch nicht ändern.

Quark.

von Karl M. (Gast)


Lesenswert?

Vielleicht noch als Erweiterung,

über einen einfachen Emitterfolger (Kollektorschaltung).

Das sind dann 2 Widerstände und ein allg. NPN Transistor.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

MWS schrieb:
> Quark.

Wenn Du eine Software-UART anstelle der Hardware-UART verwendest ... 
aber warum sollte man das tun, um eine im Grundsatz kaputte Anforderung 
zu erfüllen?

von Karl M. (Gast)


Lesenswert?

Für MWS,

die Frage bezog sich auf "TXD0- Daten aus dem UART invertiert".
Das ist der Hardwareusart.

von MWS (Gast)


Lesenswert?

Rufus Τ. F. schrieb:
> Wenn Du eine Software-UART anstelle der Hardware-UART verwendest ...

Ja, deswegen schrieb ich "Quark" zur absoluten Behauptung Lothars.

> aber warum sollte man das tun, um eine im Grundsatz kaputte Anforderung
> zu erfüllen?

Vielleicht weil's in dieser Situation das Einfachste ist?
Warum gibt's wohl Workarounds per Software?

Warum murkst VW deren Diesel wohl per Softwareupdate um?
Weil's möglich und einfach ist.
Warum soll jemand Hardware reinmurksen, wenn's per Software geht?

Es schien mir der Fall gegeben, dass der TE gern das Softuart zur 
Behebung seines Fehlers verwenden wollte, aber nicht wusste, dass unter 
bestimmten Bedingungen Bascom das HW-UART automatisch aktiviert. Wenn 
das passierte, lässt sich der Pin nicht mehr für etwas anderes 
verwenden, das lässt sich aber wie beschrieben beheben.

von MWS (Gast)


Lesenswert?

Karl M. schrieb:
> die Frage bezog sich auf "TXD0- Daten aus dem UART invertiert".
> Das ist der Hardwareusart.

Sag Bescheid wenn bei Dir der Groschen gefallen ist.
Wenn Du jetzt trotz meines Hinweises nicht verstehst,  dann ist das 
Thema nichts für Dich.

Ferdinand H. schrieb:
> aber nicht an dem TXD0- PIN

von A. S. (Gast)


Lesenswert?

Ruhepegel High und invertieren im Treiber und Empfänger sind so 
grundsätzlich, dass ein umschalten keiner braucht.

Wenn es bei euch zuviel oder zu wenig invertiert wird, muss ein Inverter 
weg oder hinzu.

Am uC kann dies z.b.ein ungenutzter Komparator sein.

Der originale TX Pin geht oft dann nicht in SW, wenn der RX wieder 
laufen soll.

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
Noch kein Account? Hier anmelden.