PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : seriell port problem bei mega128



hgulle
05.06.2007, 00:47
hallo

ich will überprüfen ob die seriellschnittstelle von meinem rnmega128 funktioniert. Aber ich konnte es nicht schaffen. Einer meiner zweifele ist dass ich 47uF 35 V kondansator statt eines 47uf 50V kondansator am V+ pin des MAX232 habe.

und ich habe TX/RX wandler jumper in beider position getestet.

meine terminal einstellungen stimmen in meiner meinung.

vielleicht ist mein programm falsch. bitte gebt mir ein paar vorschläge

$regfile = "M128def.dat"
$crystal = 16000000
$hwstack = 32 ' default use 32 for the hardware stack
$swstack = 32 ' default use 10 for the SW stack
$framesize = 40
$baud = 1200
$baud1 = 1200


Do
Print "Versuch "
Wait 2
Loop

End

robodriver
05.06.2007, 10:38
Hallo,

also an dem Kondensator wird es nicht liegen. wichtig ist die Kapazität und es ist nur vorgegeben, das er mindestens eine Spannung von 16V abkönnen muss (RS232 sind +/-12V)
Am Programm kann ich auf den ersten Blick keinen Fehler feststellen.
Baudrate und Quarz passen auch zusammen (0,04% Error)
Bist du dir sicher das dein Controller auch richtig läuft?
Zum Test kannst du auch einfach mal eine schleife schreiben die alle Sekunden einen Pin ein und wieder ausschaltet. Und dann mit einer LED oder Messgerät sehen ob das Programm läuft.
Du kannst auch mal eine LED an die TXD-Leitung am Controller hängen und über eine Schleife permanent was senden. Die LED sollte dann etwas blicken/flackern

hgulle
05.06.2007, 11:39
ja die anderen ports funktionieren gut.
ich habe eine idee gehabt. ich brauche eigentlich über RX1,TX1 senden. Weil RX0,TX0 am Funkmodul angeschloßen sind. Vielleicht muss ich so was wie print #1 oder so schreiben. Aber compiler gibt fehler aus. Wie kann ich diesen zweiten seriellen port auslösen ?

robodriver
05.06.2007, 11:48
Dann ändere dein Programm mal folgender masen:


Open "comb.1:9600,8,n,1" For Output As #1

Print #1 , "text: "

Close #1

robodriver
05.06.2007, 11:49
Dann ändere dein Programm mal folgender masen:


Open "comb.1:9600,8,n,1" For Output As #1

Print #1 , "text: "

Close #1
kurzer Nachtrag:
Baudrate natürlich dann nicht 9600, sondern auf 1200 setzen!

hgulle
05.06.2007, 12:15
Geht immer nocht nicht. Die pins Rx1 und Tx1 schaut high aus. Aber die Ausgänge R1in und T1out vom MAX 232 schaut immer low aus.Aber ich habe die mit dem messgerät abgemesst, und einer hat -6V und einer hat -4.5V . V+ vom MAX232 hat 6.5V und V- hat -6V . ich weiss nicht ob es normal ist.