Hi Leute, ich hab hier ein ziemlich komisches Problem: Kofig ist folgende: XP Pro STK500 Prolific USB-RS232 Adapter ATMEGA 8151L RS232 = 9600-8-E-1 Ich hab ein kleines Programm geschrieben, das nur ein Echo machen soll. Also das was ich im Hyperterminal ein tipp, soll auch wieder zurück gegeben werden. Das Programmieren über den Adapter geht einwandfrei... sogar über ne ziemlich schnelle Frequenz. Komischerweise hängt der CodeVision oft dabei, aber das AVRStudio brennt wie ne Eins. Das freut mich schon mal ungemein ;-) Komischerweise geht die Kommunikation über die Spare nicht. Am richtigen RS232 Port am PC geht's, mit dem Adapter nicht. Auch das Oszi zeigt mir die richtige Bit-Breite. Wie kann es denn sein, dass der RS232-USB Adapter an der Spare nicht geht, dafür aber an der Control? Danke schonmal für Eure Hilfe :-) Grüßle, Ralf
auf seite 7 vom schaltplan sieht man, dass die beiden schnittstellen exakt identisch beschaltet sind. das problem liegt also an deiner selbstgebauten hard- und/oder software.
für die "spare" müssen aber Kabel auf dem STK gesteckt werden... Otto
hi, die nötigen kabel sind gesteckt und an der software liegts auch nicht. das is ja das merkwürdige. wenn ich das board so wie es ist an den pc häng mit der echten rs232 schnittstelle, gehts ja. nur mit dem adapter nicht. komischerweise funzt der adapter aber zum programmieren. die spare und die ctrl sind gleich beschaltet, na klar... kommen ja aus dem selben baustein. also leute... mir gehen echt die ideen aus... :-(
Nachtrag: wenn man das Terminal auf 9600 8-N-1 stellt funzen folgende Buchstaben abdghkmnpsuvyzCEFIJLOQRTWX ich kann dabei weder einen sinnvollen zusammenhang zu den einzelnen bits, noch zu was anderem sehen. wenn ich den ATMEL auf 9600 8-n-1 programmier und das terminal auch so einstell, geht alles. es sieht auch so aus, dass das RXD-Signal am Chip an kommt (mit dem Oszi gemessen) aber er sendet bei den Buchstaben die in der Liste oben fehlen einfach nix raus. woran kanns liegen? verhaspelt sich der atmel vielleicht beim berechnen der Parity? Auf jeden Fall gibts keine Übertragungsfehler.. soviel ich mit dem Hyperterm fest machen kann. Also? Wer hat noch Latein übrig? Grüßle!
Ich habs gefunden... schuld war natürlich nicht der gute Atmel, sondern das Profitool schlechthin: das Hyperterminal. Den Atmel hab ich auf even eingestellt. da geht das Hyperterm mit none und odd. D.h. das Hyperterm verwechselt even und odd... habt ihr ähnliche Erfahrungen gemacht? Ich hab das Bit auch mit dem Oszi ausgemessen. ein "U" = 0x55 = 10101010 sieht so aus: low(start) hi low hi low hi low hi low low(parity) hi(stop) stimmt schon so oder hab ich nen denkfehler?
Vielleicht ist Dein USB-RS232 Adapter etwas anspruchsvoller mit der Bitrate als Deine PC-Schnittstelle; welche Taktquelle benutzt du für den AVR ?
@ Ralf Seibert (schepperle) >ein "U" = 0x55 = 10101010 sieht so aus: >low(start) hi low hi low hi low hi low low(parity) hi(stop) >stimmt schon so oder hab ich nen denkfehler? Ja, du hast schon wieder einen Denkfehler. RS232 sendet das LSB zuerst. ;-) MFG Falk
hmpf ja klar... habs mit 0xAA verwechselt (die zwei benutz ich zum bitbreite messen... gibt auch an nem nichtspeicheroszi ein konstantes bild) d.h. 01010101 ist der bitstrom. rückwärts gegessen stimmts dann aber am oszi bild... :-) aber vielen dank für den hinweis... :-) hab das schon wieder verdrängt. aber das mit dem hyperterm? also dass es even und odd verwechselt? ich mein das parity bit muss ja 0 sein oder ned? grüßle!
@ Ralf Seibert (schepperle) >aber das mit dem hyperterm? also dass es even und odd verwechselt? ich >mein das parity bit muss ja 0 sein oder ned? Bei 0x55 oder 0xAA muss das Parity Bit 0 sein für even und 1 für odd. google rs232 parity, 1. Treffer http://de.wikipedia.org/wiki/EIA-232 Parity Even(gerade) = D0 ^ D1 ^ D2 ^ D3 ^ D4 ^ D5 ^ D6 ^ D7; Parity Odd(ungerade) = ~(D0 ^ D1 ^ D2 ^ D3 ^ D4 ^ D5 ^ D6 ^ D7); MFg Falk
eben sag ich ja... also funzt das hyperterm falsch... hat jemand von euch ne alternative zum hyperterm? das terminal im codevision is fürn a* das interessiert sich null für das parity bit.
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.