PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Software - RS-232



sigo
17.05.2007, 20:31
Hallo allerseits,

ich habe folgendes Problem:

Ich muss mehrere Motorsteuerungen mit RS-232 Schnittstelle ansprechen. Die Baudrate beträgt 38,4kBit/s kann aber auch auf 9.6kBit/s gesenkt werden.

Ich kann die Kommando mit dem PC problemlos an die Steuerung schicken.

Mit einem ATMega 48 @20MHz kann ich z.B. folgendes Kommando schicken:

J10000 aber G0 1000 z.B. nicht

Kann es sein, dass Bascom das Leerzeichen <Space> nicht richtig schickt?

Any ideas?

Sigo

repi64
17.05.2007, 22:07
Any codesamples?

Bei 20Mhz und 38400 liegt die Baudrate um1,7% daneben.
Bei 9600 sind es 0,16% daneben.

Muß CR / LF geschickt werden? Stört das LF?
Benutzt du HW UART oder SW UART?
Wenn letzteres, macht es der HW UART genau so?
Wenn du print "G0 1000" schickst (+CR/LF), wird es nicht unbedingt am SPACE liegen.

sigo
17.05.2007, 23:39
Danke für die schnelle Antwort.

Ich habe den HW-Uart noch nicht ausprobiert. Aber ich habe das ganze auch mal mit 9600kBd ausprobiert. Da war es das Gleiche.
Den HW-Uart habe ich für die PC-Verbindung genutzt. Ich kann das aber auch mal tauschen.

CR/LF muss geschicht werden. Das tut der Print-Befehl ja sowieso, wenn man kein ; dahinter setzt..

J1000 (mit CR/LF) geht
GO 1000 (mit CR/LF) geht nicht

Code muss ich morgen nochmal neu machen, da ich inzwischen div. Experimente gemacht hab..die nicht unbedingt alle sinnvoll / lesbar sind.

Gruß Sigo