Moin Moin ich würde gern von meinem Computer aus über die rs232 Schnittstelle Daten an meinen atmega16 schicken ob Hex oder Binär ist egal. In google hab ich schon Infos für vb6 gefunden aber kommt damit nicht zu recht. Hab eine Form mit einem button gemacht und soll sobald ich drauf drücke 8 Bit oder halt hex senden nur weiß ich leider nicht wie ich den Code schreiben muss hat da jemand vielleicht ein bespiel oder kann mir darbringt helfen. MfG bqube
1. Hast du auch die Hardware passend aufgebaut mit RS232-Pegelwandler? 2. Hex/Binär/etc. ist alles das gleiche!!! Nur die Schreibweise ist anders -> Zahlendarstellung nachschlagen 3. Der folgende Link ist zwar für .NET, aber das meiste sollte auch für VB6 passen (ansosten... richtig, Google füttern): http://msdn.microsoft.com/de-de/library/30swa673.aspx 4. Beispiele sind im Link aus 3) enthalten. Ralf
Pierre Gnauck schrieb: > Hab eine Form mit einem button gemacht und soll sobald > ich drauf drücke 8 Bit oder halt hex senden nur weiß ich leider nicht > wie ich den Code schreiben muss Das Problem kannst du unabhängig vom µC behandeln, weil es erstmal darum geht, vom PC aus serielle Daten auszugeben. Darum würde ich eher in einem PC/VB6 Forum fragen.
Danke Ralf Hardware seitig ist alles da hab auch schon Daten zum pc geschickt Per hyperterminal könnt ich auch meine Daten einsehen, von einem uc zum anderen schicken hat auch funtioniert aber halt mim pc hängt es noch. Dein Link ist gut was bei google steht auch aber halt sehr fachlich ich kann mit vb nicht viel bis auf bissel was mit Textboxen und Buttons und wollt nun nicht noch eine Sprache anfangen zu lehrnen. Damit man versteht wo für das ist: Ich habe ein Computersystem für mein Auto gebaut und nun möchte ich als weiteres eine Relais Platine mit meinem Computer ansteuern. Zu Zeit wird dies immer über Taster realisiert MfG bqube
ich find mit Python und dem Modul http://pyserial.sourceforge.net/ geht es recht Easy kannst dir ja mal anschauen.
Bevor du Daten hin und her schiebst solltest du dir den Unterschied zwischen Hexadezimal, Binär und Dezimal aneignen. Vorher hat alles andere keinen Sinn. Weil du etwas von Autos schreibst ... Wo ist der Unterschied zwischen 1 Meile mit dem Auto fahren oder 1,609344km mit dem Auto fahren?
Den Unterschied kenn ich aber es ist egal weil ich das Programm einfach dann auf den wert änder
Pierre Gnauck schrieb: > Den Unterschied kenn ich aber es ist egal weil ich das Programm einfach > dann auf den wert änder Du hast nichts verstanden. Wenn Du binär ein Byte seriell überträgst, ist es auch nur ein Byte. Wenn Du es in Hex-Darstellung übertragen willst, kommt nur ASCII in Frage und dann sind es mind. 2 Byte (zB. 3E) oder 4 Byte der Form 0x3E. In binärer Form sind mind. 8 Byte als ASCII erfoderlich, zB. 01101001.
Du solltest zunächst mit einem einfachen Terminalprogramm am PC üben, z.B. http://elmicro.com/de/occonsole.html
Pierre Gnauck schrieb: > Den Unterschied kenn ich Der springende Punkt ist aber: Es gibt keinen Unterschied. Die Strecke ist immer gleicht weit, egal ob ich hinten als Einheit Miles oder Kilometer drannschreibe. Aber darum gehts eigentlich nicht. Dein Problem ist ja ein anderes: > Dein Link ist gut was bei google steht auch aber halt sehr > fachlich ich kann mit vb nicht viel bis auf bissel was mit > Textboxen und Buttons und wollt nun nicht noch eine Sprache > anfangen zu lehrnen. Darum wirst du aber nicht herumkommen. Und soooooo kompliziert ist das nun auch wieder nicht.
Danke für eure Mühe aber damit komm ich Net weiter weil ich zu wenig Grundwissen über vb hab ;)
Pierre Gnauck schrieb: > aber damit komm ich Net weiter weil ich zu wenig > Grundwissen über vb hab Dann eigne Dir das an. Das haben hunderttausende anderer vor Dir auch geschafft, und mehr Ahnung als Du hatten etliche von denen auch nicht.
Rufus Τ. Firefly schrieb: > Pierre Gnauck schrieb: >> aber damit komm ich Net weiter weil ich zu wenig >> Grundwissen über vb hab > > Dann eigne Dir das an. Das haben hunderttausende anderer vor Dir auch > geschafft, und mehr Ahnung als Du hatten etliche von denen auch nicht. Noch dazu, wo das in VB nicht wirklich schwer ist. Ist doch eh schon (fast) alles so vorbereitet, dass man sich 80% zusammenklicken kann.
So ich habe es nun endlich geschaft mit VB über rs232 was zu senden jetzt hab ich ein anderes problem naja nicht problem ich sag mal so ich versteh nich was da vor sich geht ??? Hab mit Bascom ein Programm geschrieben was einfach 12345 peer RS232 schickt habe mir ein Testboard dafür zusammengebaut mit Max232 ich brauch ja nur bin 3 4 für die übertragung funtioniert aber nicht nun hab ich zum Testen eine LED zwischen die beiden pinne gelötet um zu sehen ob überhaupt was raus kommt da ich kein oszi hab. Wenn ich nun versuch die daten zu schicken geh das nur wenn die LED dazwischen ist aber warum ?? Mfg Bqube
Pierre Gnauck schrieb: > jetzt hab ich ein anderes problem naja nicht problem ich sag mal so ich > versteh nich was da vor sich geht ??? Du hast vor allem das Problem, daß Du Dein Problem nicht beschreiben kannst. Vielleicht bist Du ja heute nüchtern und kannst Dir Dein Geschreibsel nochmal ansehen; meinst Du wirklich, daß das ein außenstehender entwirren kann?
Pierre Gnauck schrieb: > ich brauch ja nur bin 2 3 für die übertragung funtioniert aber nicht nun > hab ich zum Testen eine LED zwischen die beiden pinne gelötet um zu > sehen ob überhaupt was raus kommt da ich kein oszi hab. Was tust du da? Was meinst du, zwischen was für Signale du da die LED gelötet hast? > Wenn ich nun versuch die daten zu schicken geh das nur wenn die LED > dazwischen ist aber warum ?? Wohin kannst du die Daten nur schicken, wenn die LED dazwischen ist. Rufus hat wohl Recht... Und nicht nur dein Geschriebenes ist wirr.
Ich kann zwar auch nur qualifiziert raten, aber genau das versuche ich mal! ;) Mit "PIN 2 und 3" meint er bestimmt Pins 2 und 3 der seriellen (9-pol. SUB-D) Schnittstelle am PC, also RxD und TxD. Diese beiden Leitungen hat er nun (hoffentlich gekreuzt) mit RxD und TxD auf Pegelwandlerseite verbunden. Und wundert sich nun (mit an Sicherheit grenzender Wahrscheinlichkeit aufgrund Fehlender Signalmasse) dass keine Datenuebertragung moeglich ist. Mein Tipp lautet daher: Man benoetigt drei Leitungen fuer die bidirektionale Kommunikation: RxD, TxD und GND (also Pins 2, 3 und 5 PC-seitig). Volker
Servus also ich war schon nüchtern ;) das problem war die uhrzeit und das stundenlange versuchen. Also zu meiner Hardware: Pollin Evo Board 2 ist mit einem atmega8 Altesnotebook als Terminal Selbstgebautes Nullmodem Kabel ( wurde getestet funtioniert) Mit bascom hab ich ein programm geschrieben das irgend einen Text am uc ausgibt: Problem oder was mich halt verwirrt wenn ich an der sub d 9 poliegen buchse (auf dem pollin board) eine Led egal wie rum zwischen pin 2 und 3 schalte dann Funtioniert die übertragen Problemlos, bau ich diese led wieder aus kommt zwar ein signal raus aber der Pc kann damit nichts anfangen aber wieso ? Mfg bqube
Pierre Gnauck schrieb: > [...] > Selbstgebautes Nullmodem Kabel ( wurde getestet funtioniert) Wie aufgebaut? Also welche Adern wie verbunden? Wie getestet? > [...] bau ich diese led > wieder aus kommt zwar ein signal raus aber der Pc kann damit nichts > anfangen aber wieso ? Und wie genau sieht dieses Signal aus? Volker
Welche adern das sind kann ich dir aus dem kopf nicht sagen war ein Plan aus dem internet... Gestet hab zwei rechner mit meinem kabel verbunden und einen text uber die rs232 versendet und diese ist richtig angekommen. Deswegen geh ich davon aus das mein selbstgebautes kabel Funtioniert. Das Signal einfacher Ascii code ich hab einfach mal Hallo peer Print Befehl versendet. Mfg Bqube
Pierre Gnauck schrieb: > Welche adern das sind kann ich dir aus dem kopf nicht sagen war ein Plan > aus dem internet... Gestet hab zwei rechner mit meinem kabel verbunden > und einen text uber die rs232 versendet und diese ist richtig > angekommen. Deswegen geh ich davon aus das mein selbstgebautes kabel > Funtioniert. Hat schon einen Grund dass ich frage: Wenn die (Signal-) Masse nicht korrekt verbunden ist, kann es durchaus funktionieren, muss es aber nicht. Vielleicht mal durchmessen? > Das Signal einfacher Ascii code ich hab einfach mal Hallo peer Print > Befehl versendet. Ich wollte wissen, wie das elektrische Signal aussieht. Was meintest Du denn genau mit >der Pc kann damit nichts anfangen ? Volker
Zum messen hab ich leider kein Oszi da hat das Kleingeld nicht mehr für gereicht deswegen kann ih dir das niht so genau sagen und auf die sache mit der led bin ich nur durxh zufall gekommen. Das mit der masse muss ich dann mal überprüfen Pin 5 war das oder ? Ich vermute mal das er nichts damit anfangen kann ... Auf dem gebiet bin ich absoluter neuling Komunikation uber rs232 ;) Zum signal kann ich nur sagen Bascom (Print "hallo") Mfg Bqube
Pierre Gnauck schrieb: > [...] > Das mit der masse muss ich dann mal überprüfen Pin 5 war das oder ? Ja, Pin 5. > Ich vermute mal das er nichts damit anfangen kann ... Auf dem gebiet bin > ich absoluter neuling Komunikation uber rs232 ;) Dann beschreib' halt wie sich das aeussert. Du siehst einfach im Terminalfenster nichts? > Zum signal kann ich nur sagen Bascom (Print "hallo") Das ist etwas wenig fuer die fundierte Fehlersuche... ;) Aber vielleicht ist es ja wirklich nur eine Kleinigkeit wie fehlende Masseverbindung oder falsche Porteinstellungen. Volker
Pierre Gnauck schrieb: > Zum messen hab ich leider kein Oszi da hat das Kleingeld nicht mehr für > gereicht deswegen kann ih dir das niht so genau sagen und auf die sache > mit der led bin ich nur durxh zufall gekommen. > Das mit der masse muss ich dann mal überprüfen Pin 5 war das oder ? > > Ich vermute mal das er nichts damit anfangen kann ... Auf dem gebiet bin > ich absoluter neuling Komunikation uber rs232 ;) > > Zum signal kann ich nur sagen Bascom (Print "hallo") > > Mfg Bqube Basicprogramm brauchst du ja gar nicht. In Windows gibt es das Hyperterminal-Programm, das Zeichen senden kann. Wenn du sie schon empfangen kannst, so musst du 8 Leds an ein Port am ATmega hängen und dann kannst du den Wert des gesendeten Bytes "sehen". Aber immer nur eines. Wenn du an deinen ATmega ein Display anhängst dann ist es bequemer. Beispiele gibt es genug. Wer suchet der findet. Es ist wirklich viel vorhanden! z.B. http://elektronik-labor.de/RS232/RS232.html Da hast du gleich Basiswissen mit dabei. LG Rudi
Ich hoff doch mal das es nur ein Dummer fehler ist hab ja schließlich lang genug drann gessen mit Visal basic daten an die Rs232 zu schicken. Ja es it dann so als würden keine daten am rechner ankommen obwohl sie ja versendet werden und wenn da nun wirklich die masse fehlt war es ja eine kleinigkeit ..... Aber was macht dann dir Diode simuliert die dann die fehlende masseverbindung oder wie muss ich mir das vorstellen. Mfg bqube
Wenn das Kabel mit einer Verbindung zwischen 2 Rechnern funktioniert muss es ja nicht mit Deinem Pollin-Board gehen. - Beim AVR-NET-IO z.B. ist eine Buchse (female, weiblich) eingebaut mit Pin2=TxD und Pin3=RxD. - Bei einem PC ist es ein Stecker (male, männlich) mit Pin2=RxD und Pin3=TxD. In dem Fall passt das Kabel schon mal mechanisch nicht an das Board, und wenn man es mit Adapter passend macht, stimmt die Pinbelegung nicht. Also testweise mal Pin 2 und 3 vertauschen! Gruß Dietrich
Ja du kannst ja recjt haben alles gut aber was ändert die led dann was verändert die das ea aufeinmal funtioniert ?
zeichne einmal die Schaltung auf, dann können wir helfen. Jedenfalls ist ein LED für 8 bit zu wenig.
Ein Problem wenieger es war nur ein dreher in meinem Adapter jetzt versuch ich die ganze Zeit einen Schritt weiter zu kommen aber ich glaub mein Code hat einen Fehler oder ich denk ein wenig zu seltsam. Denn mir sagt Bascom es gibt immer wieder einen fehler in mein IF anweisung..
1 | $regfile = "m8def.dat" |
2 | $crystal = 8000000 |
3 | $baud = 9600 |
4 | Config Portd = Output |
5 | Dim X1 As Bit |
6 | |
7 | 2: |
8 | Waitms 500 |
9 | Print "ICH BIN EIN TEST" |
10 | Input "ICH" , X1 |
11 | Input X1 |
12 | If X1 = 1 |
13 | Goto 1 |
14 | Else
|
15 | Goto 2 |
16 | End If |
17 | 1: |
18 | Portd.5 = 1 |
19 | End
|
Das programm soll einfach den wert der peer RS232 ankommt vergleichen wenn er dann übereinstimmt soll das Programm weiter laufen in dem fall die LED EIN schalten aber es klappt irgendwie nicht warum auch immer. Habt ihr eine idee Mfg Bqube
Schon mal was von interrupts und overlay gehört ? Geh Schafe hüten, oder bist du dazu auch zu dusselig? Don't Feed The l Troll !
Was ins das für'n Deutsch hier . Bisdu legateniker ödet was dub bissdu ? Erbermlich echt!
Schonmal was von LRS gehört ausserdem sollte man sich nicht über die Probleme andere Menschen lustig machen stell dir vor du bekommst von heut auf morgen Demenz und jemand mit den gleichen Charakterlichen zügen wie du sie zeigst lacht dich aus !!! Wie würdest du das finden denk mal über deine Aussage nach. Mfg bqube
Hi
>Was ins das für'n Deutsch hier .
So richtig fit bist du aber auch nicht. Allerdings tut das, was Pierre
von sich gibt, schon manchmal richtig weh.
MfG Spess
Pierre Gnauck schrieb: > Das programm soll einfach den wert der peer RS232 ankommt vergleichen > wenn er dann übereinstimmt soll das Programm weiter laufen in dem fall > die LED EIN schalten aber es klappt irgendwie nicht warum auch immer. Ich programmiere nicht mit BASCOM (habe ich auch nie und werde ich nie), aber es faellt auf dass das erste INPUT irgendwie ueberfluessig ist und X1 wohl eher ein Byte-Array und kein Bit sein sollte... Ohne es genau zu wissen, behaupte ich aber mal, dass Du fertige Code-Beispiele fuer die serielle Kommunikation mit Google finden koenntest. spess53 schrieb: > So richtig fit bist du aber auch nicht. Allerdings tut das, was Pierre > von sich gibt, schon manchmal richtig weh. Hehe... Wo is denn hier der "Like-Button"? Volker
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.