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.
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....
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 ?
Ich möchte nur abfragen ob gerade eine '1' oder eine '0' gesendet wird und entsprechend die eine oder die andere Aktion auslösen.
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...?!
Niklas Beuster schrieb: > Ich möchte nur abfragen ob gerade eine '1' oder eine '0' gesendet wird > und entsprechend die eine oder die andere Aktion auslösen. Was soll das für Sinn machen? Du weißt schon was ein UART ist?
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?
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.
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.
Was soll das Einlesen des TXD Pins denn bringen? Was versprichst du dir davon?
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 ^^
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])
Hm, scheinbar will der keine Bilder per Edit hochladen...
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.
Niklas Beuster schrieb: > Ich möchte eigentlich nur die UART-Sequenz FM modulieren Warum sollte man das tun?
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.
