Trotz alternativer Pins restlicher Port benutzbar (Attiny2313)?

OP #2598113
Huhu,

ich wusste nicht wonach ich suchen sollte, darum Sry, falls es schon mal 
gefragt wurde, aber kann man beim Attiny2313 die restlichen Pins vom 
PortD normal benutzen wenn man die UART benutzt (TxD statt PD1) ?

Und wenn ja, was muss ich dann dabei beachten? Darf man einfach In und 
Out benutzen oder ist man dann auf eines beschränkt? Darf man die 
Pull-ups ziehen oder doch besser lassen?

Und noch etwas: Kann man irgendwie das Signal von TxD wieder einlesen? 
Ich habe es über "sbis PIND, 1" (wenn eine '1' gesendet wird, dann 
überspringe') probiert, aber das klappt nicht.
Gast #2598124
Ja, du kannst den restlichen Port nutzen. Die AF bezieht sich dann nur 
auf die Uart-Pins.

Niklas Beuster schrieb:
> Und noch etwas: Kann man irgendwie das Signal von TxD wieder einlesen?
> Ich habe es über "sbis PIND, 1" (wenn eine '1' gesendet wird, dann
> überspringe') probiert, aber das klappt nicht.

Da verstehe ich nicht, was Du genau versuchst....
#2598127
Niklas, dein Frage verstehe ich nicht, die Funktionen der Pins steht im 
Datenblatt - genau.

Wenn der USART läuft hat dieser die Kontrolle über die Tx,Rx Pins.

Steht doch alles dort.

Evtl. kannst Du uns deine Fragen etwas genauer stellen ?
Gast #2598133
0 oder 1 gesendet wird?! Im physikalischen Sinne? Eine Ascii 0 bzw. 1 
besteht ja aus einer Bitsequenze. Außerdem: Du sendest doch die Daten 
selber. Dann wirst du doch auch wissen, was Du sendest...?!
OP #2598140
Nein, '1' oder '0' im Sinne von Pegel, also physikalisch. Und ja, ich 
weiß was UART ist und ja - ich weiß was ich sende, aber wie kriegt man 
raus, wann die UART die einzelnen Bits rausgibt? Klar müsste man 
umständlich über die Baudrate berechnen, aber kann man nicht auch 
einfach den TxD-Pin abfragen?
Gast #2598141
Die Frage ist wozu man das machen sollte.

Dein Grund dafür wird, so nehmen wir alle erstmal an, plausibel und 
sinnvoll sein. Aber welcher ist das? Vielleicht kannst Du mit einer 
anderen Methode Dein Ziel auch erreichen.

So würde ich erstmal sagen: Nutze einen Software-UART. Da weisst Du wann 
1 und 0 herauskommen.
(Firma: guloshop.de) #2598147
Niklas Beuster schrieb:
> Nein, '1' oder '0' im Sinne von Pegel, also physikalisch. Und ja, ich
> weiß was UART ist und ja - ich weiß was ich sende, aber wie kriegt man
> raus, wann die UART die einzelnen Bits rausgibt? Klar müsste man
> umständlich über die Baudrate berechnen, aber kann man nicht auch
> einfach den TxD-Pin abfragen?

Der 2313 hat recht viele Eingänge. Vielleicht ist einer davon noch frei? 
Dann kannst du den TxD über einen Widerstand - sagen wir 4,7 kOhm - auf 
diesen Eingang legen und ihn pollen oder sogar per Pin-Change-Interrupt 
abfragen.
OP #2598161
Ok, es geht also scheinbar nicht, Danke, das reicht mir schon ;-)

Ich möchte eigentlich nur die UART-Sequenz FM modulieren und habe leider 
schon PORTB und PORTA komplett belegt für andere Zwecke und wollte das 
Signal wieder einlesen, damit ich einem Timer sagen kann er soll bei 
einer '1' eine andere Frequenz (Interrupt bei Compare) als bei einer '0' 
einstellen und ich in der Interrupt-Routine den einen Pin von PORTA an- 
und ausschalten kann für ein Rechtecksignal, welches sich in der 
Frequenz ändert.

Und ja, ich weiß was Manchester-Codierung ist und nein, ich mag das net 
verwendet und ja ich weiß wie ein Modem funktioniert, Danke ^^
OP #2598318
Ha! Es geht doch! Man kann das UART-Signal über PIND einlesen, genauso 
wie ich's im Ausgangsbeitrag geschrieben habe, ich hatte nur einen 
anderen Fehler im Code.

Komisch dass man sowas nur nach Mitternacht mit Bier hinkriegt :D Naja, 
jetzt gehts, wie man hoffentlich auf dem Bild sehen kann. (Wenn denn das 
Forum endlich mal das Bild hochladen würde [und ja, es ist im richtigen 
Format])
(Firma: guloshop.de) #2598630
Niklas Beuster schrieb:
> Ha! Es geht doch! Man kann das UART-Signal über PIND einlesen, genauso
> wie ich's im Ausgangsbeitrag geschrieben habe, ich hatte nur einen
> anderen Fehler im Code.

Genial!
Und gut zu wissen, dass das geht. Damit spart man eine Hand voll 
Bauteile, die man sonst extern für den Modulator brauchen würde.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.