Forum: Mikrocontroller und Digitale Elektronik UART-Anfängerfalle in Bascom ich weiss nicht


von Gerhard H. (oderlachs)


Lesenswert?

Hallo Könner des Faches !

Ich weiss nun als Anfänger nicht was ich falsch mache. Zum Problem:
Ich habe das Pollin-AVR Board, für meine ersten Schritte reicht das.
Nun wollte ich per BascomTerminal und UART(2313) mal probieren, ob ich 
die Kommunikation zwischen Terminal und dem Board hinbekomme.
Es wird zwar auf meine Eingaben reagiert, aber es erscheinen als Ausgabe 
nur "C" im Terminalfenster.

Ich habe hier mal einen Screenshot abgelegt:

http://werkstatt.oderlachs.de/bascom/images/uart1.jpg

Hier ist auch der wenige Source ersichtlich, den ich aus dem Buch von 
C.Kühnel habe: Bascom-ARR (3. Ausg.)

Ich denke eher, dass ich in der Konfiguration der Verbindung, also 
Terminaleinstellungen was falsch mache.
Ich habe es mal so gelassen wie es das Bascom Terminal vorgibt nur die 
Baudrate auf 2400 gesetzt.
Der PC ist über ein NULL-Mod. Kabel mit dem RS232 Anschluss des 
Pollinbords verbunden.
Die Fuses sind auf den 8Mc ext. Osz. , also Board Quarz eingestellt. 
Habe nur die Osz. Einstellungen geändert die anderen sind wie im 2313 
org. vorgegeben.
Na vielleicht kann mir wer ein paar Hinweise geben , so das ich zu des 
Rätsels Lösung kommen kann.

Vielen Dank schon mal für eventuelle Hilfe
Gerhard

von Qwertz (Gast)


Lesenswert?

>8Mc ext. Osz. , also Board Quarz

Das ist ein Widerspruch: Entweder externer Oszillator oder exerner 
Quarz.
Klär das am besten.

von Helfer (Gast)


Lesenswert?

> Der PC ist über ein NULL-Mod. Kabel mit dem RS232 Anschluss des
> Pollinbords verbunden.

Die Pollinboards arbeiten nicht mit Nullmodemkabeln, sondern mit 1:1 
verschalteten Rs232-Verlängerungskabeln.

von Jasmin (Gast)


Lesenswert?

schau Dir mal hier Kapitel 6 an.


Das ist eine sehr gute Einführung, insbesondere weil hier die Erfahrung 
spricht. Auch der Overlay "Trick" ist sehr interessant und erzeugt 
effizienten Code.

Wenn Du das durchgearbeitet hast, verstehst Du wie es geht.

http://www.rowalt.de/mc/index.htm

Ich kann auch das Buch nur empfehlen.

D.S.

von Volker R. (pcl86)


Lesenswert?

Hallo,

der Hinweis von "Qwertz" ist richtig, also entweder 8Mhz Quarz mit 
Lastkapazitäten, oder aber du hast einen Quarzoszillator angeschlossen.
Weiterhin schau dir mal die Fuse "CKDIV8" an. Wenn diese Fuse gesetzt 
ist (=default), wird der Takt intern durch 8 geteilt.
Außerdem ist der 8 MHz-Quarz kein "Baudratenquarz", d.h., dass die 
Baudrate nicht genau abgeleitet werden kann (steht auch bei Kühnel).
Bei 2400 Baud macht das aber (fast) nichts.
Gruß
V

p.s. schau dir mal den FuseCalculator auf 
http://www.engbedded.com/fusecalc an.

von Gerhard H. (oderlachs)


Lesenswert?

Hallo !
Also Euch allen erst mal vielen herzlichen Dank !!!!!

Einen Fehler konnte ich selber finden: das Nullmodemkabel, habe mal die 
Schaltung angesehen, da ist das RS232 schon für ein orginal 1:1 Kabel 
hergerichtet.

Darauf bin ich auch gekommen, weil mit dem Null-Modemkabel eigendlich 
gar nix ging.
Ja ich werde mir mal alles an den von Euch verwiesenen Lesestellen 
durchlesen.
Nur mit den Fuses bin ich vorsichtig geworden habe, erst kürzlich meinen 
Atm16 ins Nirwada geschickt habe, weiss nicht wie es passieren konnte, 
aber er ist nun taub in allen Richtungen, schreiben wie lesen.. :(

Nochmals vielen Dank Euch sage , werde mich mühen das Rätsel zu lösen..

Gerhard

von Gerhard H. (oderlachs)


Lesenswert?

Leider kann ich nicht mehr editieren, aber ich wollte noch sagen , dass 
ich es Dank Eurer Hilfe geschafft habe.
Nun kann ich es zwar nicht ganz , noch nicht ganz verstehen warum, aber 
das ist erst mal nicht so wichtig.
Ich habe also den 8 Mhz Quarz gegen einen von 3.686400 Hz wie ihn das 
STK500 hat, ausgetauscht und siehe da es geht.:)
Gut nun kann  es ja sein das bei 8Mhz die Fehlerquote zu hoch liegt um 
die Baudzahl zu generieren.

Zum anderen habe ich in den Fuses noch die Teilung durch 8 gelöscht. Nun 
weiss ich nicht mal, an was es genau lag. das wird die zeit aber zeigen, 
wenn ich weiter experimentiere.

Mit diesem FuseCalculator habe ich leider noch Probleme, weil ich eben 
vieles dort nicht verstehe weil in english und das habe ich in meinen 
gut 60 Jahren noch nicht gelernt... :(
Ein STK500 habe ich zum Kauf auch eingeplant in nächster Zeit, doch wohl 
die grösste Hilfe für mich war wieder die hier im Forum.

D-A-N-K-E !!!

Gerhard

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.