PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Verständnisfrage zur Kommunikation



mameise
28.01.2011, 23:38
Hallo zusammen,

ich bin dabei in die grosse Welt der Microcontroller einzusteigen :) Ich hab mir nun mal ein Steckbrett bestückt mit ein paar Sachen. Als Controller nutze ich nen Atmega8, Programmer ist der MK2 usw. Paar LEDs und Taster zum testen usw. Alles nicht sonderlich spektakulär, aber für mich gut zum testen. Nun aber zur eigentlichen Frage: Ich lese mich ja kräftig durch sämtliche Seiten und Beiträge usw. und es taucht bei mir folgende, schockierende, Erkenntnis auf: Offensichtlich brauche ich, wenn ich Daten vom Controller an den PC senden will, zwingend einen Max232 und dann eine serielle Schnittstelle am PC.... Mal ganz ehrlich: Wer hat sowas noch? Da ich seit Jahren rein über Laptops arbeite habe ich sowas natürlich nicht mehr... Gibt es da keinen anderen Weg? Würde ein Adapter von Seriell auf USB für diesen Fall gehen oder ist das wie mit dem Programmer nicht möglich? Und als alternative bliebe dann wohl nur ein LCD an den Controller anzuschliessen und die Daten darüber auszugeben, sehe ich das richtig?
(Daten die ich auslesen möchte wären z.B. die Daten eines NTCs, das auch schon auf dem Steckbrett steckt, aber ich seh ja nicht was er mir sagen will :P )

Bitte entschuldigt, wenn die Frage schon öfter kam, eine Suche hat mich leider nicht weiter gebracht.

Danke für eure Antworten
mameise

Felix G
29.01.2011, 01:31
Dafür kannst du problemlos einen USB-Adapter einsetzen (Bei Programmern machen die oft Probleme, nicht aber bei der "normalen" Datenübertragung zwischen PC und µC)

oberallgeier
29.01.2011, 09:38
... Daten vom Controller an den PC senden will, zwingend einen Max232 und dann eine serielle Schnittstelle am PC ...Nein. Du kannst BEIDES sparen, sprich durch andere Varianten ersetzen.

Die Variante U SB-RS2 32-Adapter hat schon FelixG genannt.
Mit einem geeigneten U SB-nach-UART-Adapter gehts ohne MAX232. Dieser Adapter (klick hier) (http://www.watterott.com/de/Schnittstellen/USB) ist sehr preisgünstig. Ich verwende einen ähnlichen - und hatte schon 256 kBd vom Controller zum PC/U SB erfolgreich getestet (mehr noch nicht, langt ja). Es gibt ähnliche Adapter. Vorteil: Du brauchst neben dem Controller KEINEN MAX232 sondern gehst mit dem TTL-Pegel des UART (RX/TX am Controller) an den Adapter und von dort nach U SB.

Weitere Möglichkeiten zu UART-nach-U SB (ohne MAX) : der U SB-Programmieradapter von christian u, (http://shop.ullihome.de/catalog/product_info.php/cPath/25_30/products_id/67) geht bis etwa 19k2 Bd, ein Selbstbauteil, (https://www.roboternetz.de/phpBB2/zeigebeitrag.php?p=392996#392996) ein Programmer von minimikro (http://www.gms2000.de/minimikro/LP_usbprog_pr.htm) und viele andere.

Viel Erfolg.

mameise
29.01.2011, 10:49
Guten Morgen,

erstmal Danke für die Antworten. Also wenn ich das richtig verstehe, hätte ich mir lieber nicht den MK2 Programmer geholt, sondern nen aderen der das mit drin hat? Sorry, ich steig noch nciht ganz durch. Aber mal eine andere Frage:
Ich habe ja auch den RP6 Robby hier, der soll ja dann das eigentliche Objekt werden, auf dem Steckbrett möchte ich lediglich etwas üben, die Dinge verstehen usw...
Beim RP6 ist ja ein Programmer dabei, der, wie man mir sagte, wohl "nur" ein seriell to usb adapter ist, deswegen musste ich mir noch den MK2 holen um neue Controller beschreiben zu können. Der RP6 kann aber über seinen Programmer Daten an den PC senden... Kann ich diesen dann auch hernehmen um mit meinem eigenen Aufbau weiterzukommen? Und wie genau stell ich das an?
Danke :)

TobiKa
29.01.2011, 10:54
wohl "nur" ein seriell to usb adapter ist, deswegen musste ich mir noch den MK2 holen um neue Controller beschreiben zu können.
Das hast du wohl nciht ganz richtig verstanden.

Ja er ist ein Seriell -> USB Adapter, aber da der Controller aufm RP6 einen Bootloader besitzt, reicht das um in zu beschreiben!
Wenn du mit dem MKII ein Programm drauf brennst, dann ist der Bootloader weg!
Du sollstest den MK2 nicht am RP6 betreiben, außer du willst nen eigenen Bootloader aufspielen oder du willst keinen Bootloader mehr drauf haben, würde ich aber erstmal von abraten.

mameise
29.01.2011, 11:03
Ja das habe ich verstanden. Wie man einen Bootloader programmiert, davon bin ich erstmal noch meilenweit entfernt. Den RP6 wollte ich auch nicht mit dem MK2 betreiben. Meine Überlegung ist nun:
Wenn ich mein Steckbrett mit meinem Atmega8 über meinen MK2 programmiere, und den seriell-USB Adapter vom RP6 so nutzen kann, das ich die Daten vom Controller zum PC bekomme, würde mir das schon reichen. Und da meinte ich eben, da der RP6 das mit diesem Adapter kann, geht es evtl. auch mit meinem Steckbrett, oder hat der RP6 dafür wieder spezielle Dinge an Board!?! Evtl. hab ich auch nen kompletten Denkfehler drin, aber wäre halt top, so könnte ich, sofern ich weis wie zu verdrahten, dieses WE noch weiter machen. Da ich in der Schweiz wohne bin ich über alles dankbar, das ich nicht wieder mühsam bestellen muss... Das grosse C hier bei uns hat nichtmal die einfachsten Standartteile wie Kondensatoren, Widerstände oder so auf Lager... Fast jedes Teil muss bestellt werden, nervt. Deswegen weis ich, egal was ich brauche, ich warte erstmal wieder ne Woche...

Richard
29.01.2011, 11:26
Fast jedes Teil muss bestellt werden, nervt. Deswegen weis ich, egal was ich brauche, ich warte erstmal wieder ne Woche...

Also ich habe hier 3 USB- RS232 Wandler, angeblich voll Kompatibel und alle arbeiten ohne Probleme. Allerdings nicht die 9,5 € billig Teile meine haben bei Media Markt ca. 19 € gekostet.

An einen Max 232 sollte man sich gewöhnen wenn man öfters eigene Schaltungen bauen möchte die auch später an anderen PC's betrieben werden sollen. Das ist halt Standard.

Gruß Richard

mameise
29.01.2011, 11:32
Hmmm ok. Also wieder hoffen das die Teile da sind, sonst warten...
Bin gespannt wann ich es schaffe mal 2 Tage nicht zum Conrad zu fahren. :) Jeden Tag bin ich dort weil ich was brauch.

Richard
29.01.2011, 15:28
Hmmm ok. Also wieder hoffen das die Teile da sind, sonst warten...
Bin gespannt wann ich es schaffe mal 2 Tage nicht zum Conrad zu fahren. :) Jeden Tag bin ich dort weil ich was brauch.

Den Max 232 werden sie haben, die dafür nötigen Kondensatoren? Kleinteile legen die nicht auf's Lager, es gibt zu fiele davon.

Aber wenn Du nicht wie ich z.B. ca. 100 km Fahren musst, kann man damit leben. :-)

Gruß Richard

mameise
29.01.2011, 20:28
Hallo,
ein Glück, sie hatten alles da.
Nun hab ich mich natürlich gleich an das Steckbrett gesetzt und alles verdrahtet. Hab mir nun nen MAX232N besorgt, mit ELKOs 1uF usw. aufgesetzt, nach ner Anleitung im Netz, und ne RS232 Schnittstelle drangelötet. Ausserdem hab ich mir nen RS232 to USB Converter geholt.
Nun taucht ein neues Problem auf. Um die Daten vom Controller sehen zu können, muss ich ja ein Terminal nutzen, oder das in Bascom. Leider kommt nichts an. Im Programm habe ich die baudrate eingestellt, genau wie am PC, hab Print "Hallo" einfach mal als Test rein, kommt aber nix...
Ich hab mir auch ein Terminal runtergeladen, verbinden klappt scheinbar, also das Programm meckert nicht, aber die Daten kommen nicht an. Woran könnte das liegen? BZW. wie kann ich testen wo genau der Fehler liegt?

Richard
29.01.2011, 22:00
Hast Du RDX/TDX getauscht also RX an TX und Tx an RX? und natürlich GND verbinden. Bei den Einstellungen der PC Schnittstelle muss Flussteuerung auf KEINE stehen!

Wenn Du RX und TX auf µC Seite verbindest (kurzschließt) sollte der PC sich im Terminal mit sich selber unterhalten = alles was Du eintippst wird am Bildschirm angezeigt. So kannst Du testen ob der Übertragungsweg OK. ist.

Gruß Richard

mameise
29.01.2011, 22:08
Vertauscht ist eigentlich nichts.... Aber ich vermute fast es liegt an dem Aufbau an sich.... Wie genau schliesse ich den MAX232 denn an? Ich finde verschiedene Versionen im Netz, aber nix klappt. Ich versuch jetzt mal den Tipp mit dem kurzschliessen. Schau ma mal :) Danke ;)

EDIT:
Also grad mal den Tip mit dem Kurzschliessen probiert, sofern ich ihn richtig verstanden habe. Ich habe einfach die 2 Kabel, die eigentlich zum Controller gehen sollten, zusammengeschlossen. Dann über das HTerm (ein Terminal das ich geladen habe, da Win7 sowas wohl nicht mehr für nötig hält) verbunden und mal nen Text gesendet, sofern ich das dann überhaupt richtig gemacht habe, aber es kam nichts zurück. Also scheint dort schon irgendwo ein Wurm zu sein.

Tante EDIT wieder:
Hmm, manchmal sollte man sich wohl doch erstmal genau überlegen was man macht, wenn man schon "ausserhalb" der Reihe tanzen muss...
Ich habs nun gecheckt! :) Es läuft. Mein Fehler war, das ich mich bei der Pinbelegung des RS232 Steckers echt total verhauen habe... Ich hab am Steckbrett einen weiblichen Stecker (oder Buchse) und am RS232 to USB Converter ist ja ein männlicher Stecker, somit wollte ich das Kabel sparen. Aber dann hab ich irgendwie falsch gedacht und alles spiegelverkehrt angelötet :P Jetzt, nach Berichtigung, läuft alles wie es soll! Danke!!! Es geht weiter :) Zum Glück hats nix zerhauen.