Forum: Mikrocontroller und Digitale Elektronik USART Raspberry Anbindung - Fragen


von Peter Reither (Gast)


Lesenswert?

Hi!

Ich verwende USART, um einen Raspberry Pi und einen ATMega8 zu 
verbinden, es sind also die entsprechenden RXD/TXD Paare verbunden. Dazu 
habe ich zwei Fragen:

1) Der Raspberry verträgt nur 3.3V an den Pins. Da ich den ATmega aber 
mit 16MHz laufen lassen möchte, benötigt er mehr Spannung - ich kann ihn 
also nicht mit 3.3V betreiben, benötige also einen Pegelwandler, der die 
5V in 3.3V umsetzt. Gibt es einen, der zwei Ein- und Ausgänge hat, oder 
sollte ich zwei Einzelne nehmen? Habt ihr eine andere Idee?

2) Der TXD Pin des Raspberry führt im Ruhezustand 3.3V (high). Findige 
Tüftler haben nun herausgefunden, dass man erkennt, dass der Raspberry 
komplett heruntergefahren worden ist, wenn TXD nach dem Herunterfahren 
keine Spannung mehr führt.

Diesen Zustand möchte ich gerne abfragen, jedoch ohne mit meinem 
Schaltungslayout die Signalqualität zu beeinflussen. Meine Idee war, 
3.3V als Referenzspannung an den ATmega anzulegen, und dann TXD vom 
Raspberry zusätzlich zum RXD an einen ADC Port anzuschließen. Was meint 
ihr dazu? Gibt es eine besser Option?

Danke im Voraus!

von AVR Bastler (Gast)


Lesenswert?

1) Den Highpegel vom Pi müsste der ATMega8 als solchen erkennen -> kein 
Pegelumsetzer notwendig.
Den Highpegel vom ATMega8 mit einem Spannungsteiler reduzieren und 
vielleicht mit einem Transistor oder so puffern.

2) Der ATMega8 hat für derartige Geschichten einen Analogkomparator 
onboard. Der ADC wäre eine Kanone die auf Spatzen schiesst dafür.

von Martin S. (sirnails)


Lesenswert?

Es gibt I2C Pegelwandler, z.B. den  pca9306 der in Deinem Falle auch 
hervorragend funktionieren sollte.

von Peter Reither (Gast)


Lesenswert?

Danke für die schnelle Antwort, jetzt weiß ich Bescheid!

von Peter Reither (Gast)


Lesenswert?

Martin Schwaikert schrieb:
> Es gibt I2C Pegelwandler, z.B. den  pca9306 der in Deinem Falle auch
> hervorragend funktionieren sollte.

Die Frage ist, inwieweit macht es Sinn solch einen Baustein zu 
verwenden, um nicht unnötig Strom zu "verheizen"?

von Mark (Gast)


Lesenswert?

Guten Abend Forum !


Ich habe auch eine Frage zum Raspberry, ich versuche schon seit einigen 
Stunden ein einfaches Byte an der Uart-Schnittstelle auszugeben. Bekomme 
es aber nicht hin. Ein Text geht aber keine einfaches Byte

Sprache: Python
import RPi.GPIO as GPIO

serialport= serial.Serial("/dev/ttyAMA0", 19200, timeout=0.5)
serialport.write("Hallo")
-das geht ohne Probleme

aber wie gebe ich zb. 0x55 aus ?

danke !

von strength thru oi! (Gast)


Lesenswert?

try this:

serialport.write(chr(0x41))

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.