Hallo Experten, ich benutze BASCOM und VisualBasic6. (Beides aus guten Gründen und mit Erfolg und Freude - das müssen wir also nicht diskutieren..) Nun muss ich Zahlenwerte vom Mikrocontroller zum PC übertragen. Auf dem Mikrocontroller schreibe ich jeweils 1.) PRINT "T"; temperatur oder "V"; ventilsteuerung 2.) Auf dem PC im Terminalprogramm erscheint wie gewünscht zum Beispiel T18 T18 T18 T18 V120 T18 T19 T19 usw. 3.) Im VisualBasic6 möchte ich das nun einlesen und je nach "Header" (T, V,..) in verschiedene Textboxen einsortieren Ich versuche nun erst einmal überhaupt etwas vernünftiges in EINE Textbox zu bekommen. Ich versuche das mit MSComm1.CommEvent Vgl. unter anderem: http://www.activevb.de/tutorials/tut_com/com.html Ich bin mir sicher, dass sehr viele von Euch das schon erfolgreich gemacht haben aber irgendwie finde ich auch im Internet nicht die Lösung Ich bekomme bis jetzt zum Beispiel den gesendeten String und davnach zwei schwarze Striche in die Textbox ( in etwa so: T18!! ) Wie bekomme ich also einzelne Zahlen mit Header vom Mikrocontroller in das VisualBasic? Es müßte doch auf Mikrocontrollerseite eigentlich PRINT "T";temperatur usw. ausreichen. Wie empfange ich das so in VisalBasic6 dass ich das je nach Header als Zahl habe, die ich im VisualBAsic weiterverarbeiten kann und die ich am Ende in eine Textbox (je nach Header) schreibe. Das Ganze natürlich am liebsten für Ganzzahlen und auch für Kommazahlen. Da haben doch bestimmt viele von Euch Erfahrungen. Über kleine Beispiele/Ansätze würde ich mich sehr freuen. Karsten
:
Verschoben durch User
die zwei Striche sind <CR> und <LF>, die bascom bei der Printausgabe automatisch anhängt, kann unterdrückt werden, indem man hinter der Print "x" ein ; hängt, also print "x";
Hallo Weinbauer, ja - so etwas dachte ich mir schon.. Was ich nicht verstehe - Kann ich das auch so wie ich es jetzt sende senden und das CrLf dann im VisualBasic entfernen? - Wie mache ich im VisualBasic eine ZAHL? Übertragen wird das doch als String..? - Wie geht das mit Kommazahlen? - Wird nicht jedesmal nur EIN Zeichen gesendet und empfangen? Wie wird aus den einzeln gesendeten Zeichen ein String im VisualBasic, den ich dann in eine Zahl umwandeln kann - Hat jemand ein einfaches VisualBAsic6 Beispiel für so einen Empfang oder einen Link? Karsten
Hi, Es gibt in vb6 die befehle right() mid() und left() um zeichenketten zu bearbeiten. Mit denen kannst du die zeichenketten ohne cr und lf in die textbox schreiben. Gruss
ja - habe ich nur noch nicht geschafft. Ich bin anscheinend zu dumm dafür bisher. Dewegen wäre ein kleine Beispiel schön von jemandem, der diese Standard-Thematik schon erfolgreich gemacht hat.
ergänzend: Bei mir landet in der Textbox zur Zeit leider auch nicht immer nur ein "Datensatz" sondern zum Teil mehrere: T19!! !T19!! !T19!! oder so ähnlich. Ich habe noch nicht verstanden, an welcher Stelle VisualBasi merkt, dass es sich jeweils um einen Datensatz zum Beispiel T19 handelt
Karsten schrieb: > Dewegen wäre ein kleine Beispiel schön von jemandem Pseudocode: le = len(inputstring) le = le -2 neuerstring = left(inputstring,le) Gruss k
Vielen Dank, Klaus. Ich suche jetzt noch ein Beispiel der VisualBasic Empfangsroutine:
1 | Private Sub MSComm1_OnComm() |
2 | Select Case MSComm1.CommEvent |
3 | Case comOverrun: MsgBox "Datenverlust!" |
4 | Case comRxOver: MsgBox "Datenverlust!" |
5 | Case comEvReceive: |
6 | ... = MSComm1.Input |
7 | .......... |
8 | .......... |
9 | |
10 | End Select |
11 | End Sub |
Karsten schrieb: > Dewegen wäre ein kleine Beispiel schön von jemandem, der > diese Standard-Thematik schon erfolgreich gemacht hat. Ich mach' das immer zeichenweise:
1 | Private Sub uart_OnComm() |
2 | 'ein Zeichen wurde empfangen |
3 | uartrx = uartrx & uart.Input |
4 | p1 = InStr(1, uartrx, "CV:") |
5 | p2 = InStr(1, uartrx, "Dez:") |
6 | p3 = InStr(1, uartrx, ">") |
7 | If p3 > 0 Then |
8 | If p1 > 0 Then |
9 | cvn = Val(Mid(uartrx, p1 + 3, 3)) |
10 | cvw = Val(Mid(uartrx, p2 + 4, 3)) |
11 | uartok = True |
12 | List1.AddItem uartrx |
13 | uartrx = "" |
14 | End If |
15 | End If |
16 | End Sub |
Da dies aus dem Kontext gerissen ist, hänge ich den kompletten Quältext mal an. Das Protokoll der Übertragung wird hier erklärt: http://www.hanneslux.de/planet5b/planet5-lokfahrtregler_v02.html Der Absatz "PC-Interface zum Einstellen der Parameter" (zielmich weit unten) erklärt den Befehlssatz, auf den der AVR reagiert und antwortet. Viel Erfolg... ...
Hallo Hannes, herzlichen Dank - aber: puhhh.. das muss ich erst einmal nachvollziehen. Ich hatte bisher nur von MSComm1_OnComm()gelesen. wenn jemand noch ein einfacheres VB6 Programm hat, bei dem zum Beispiel einfach nur eine Temperatur wie 19.4 vom AVR zu VisualBasic6 übertragen und dort angezeigt wird freue ich mich weiterhin über Beispiele. Karsten
Also das Prinzip ist, - zeilenweise einlesen, damit du weisst, wann Zahl endet - vergleich nach t oder v (erster buchstabe) - zahlenwert extrahieren (stringfunktionen) - und zahlenwert-string nach int konvertieren, dafür gibts funktionen
Karsten schrieb: > ich benutze BASCOM und VisualBasic6. > (Beides aus guten Gründen und mit Erfolg und Freude - das müssen wir > also nicht diskutieren..) Karsten schrieb: > Ich bin mir sicher, dass sehr viele von Euch das schon erfolgreich > gemacht haben aber irgendwie finde ich auch im Internet nicht die Lösung Karsten schrieb: > Das Ganze natürlich am liebsten für Ganzzahlen und auch für Kommazahlen. > Da haben doch bestimmt viele von Euch Erfahrungen. Über kleine > Beispiele/Ansätze würde ich mich sehr freuen. Karsten schrieb: > - Hat jemand ein einfaches VisualBAsic6 Beispiel für so einen Empfang > oder einen Link? Karsten schrieb: > Ich suche jetzt noch ein Beispiel der VisualBasic Empfangsroutine: Karsten schrieb: > wenn jemand noch ein einfacheres VB6 Programm hat, bei dem zum Beispiel > einfach nur eine Temperatur wie 19.4 vom AVR zu VisualBasic6 übertragen > und dort angezeigt wird freue ich mich weiterhin über Beispiele. Sorry Karsten, ohne dir nahe treten zu wollen, aber "programmieren" tust du eigentlich nicht selbst sondern für mich stellt sich das so dar als lässt du hier programmieren. Du hast so viele Hinweise und auch Beispiele bekommen, versuche doch mal zu verstehen WAS da im Computer passiert und WIE so ein Programm funktioniert. Dann kannst du das auf dein Problem übertragen und die Beispiele entsprechend ändern erweitern.
Udo Schmitt schrieb: > das auf dein Problem übertragen und die Beispiele > entsprechend ändern erweitern. Genau diesem Zweck diente mein Beitrag, Hilfe zur Selbsthilfe... ...
Hallo Udo, ich hatte gehofft, es würde nicht (wieder) zu Grundsatzdiskussionen kommen. Zitieren kannst Du wirklich gut. Und einige haben grobe Hinweise gegeben - wofür ich auch dankbar bin aber es sind eben nur Pseudocode-artige Hinweise und ich benötige VisualBAsic. Hannes Lux hat als einziger bisher wirklich ein Beispiel gegeben. Das will ich jetzt ja auch verstehen. Mich wundert nur, dass das wieder ganz anders ist als das was ich bisher so in Tutorials gefunden hatte. Und: Du willst es nicht - aber Du trittst mir zu nahe: Ich kann sehr gut programmieren und tue das auch eifrig. Im BASCOM bin ich ziemlich fit. Mit VisualBasic habe ich bisher einige kleinere Programme gemacht. Mehr brauchte ich auf der PC-Seite damit noch nicht. Vom PC aus den AVR steuern klappt auch wunderbar. Nur jetzt bin ich eben an der Thematik, dass ich ein paar Werte vom AVR am PC anzeigen möchte. Hab eich eben vorher noch nicht gemacht. Da ist doch wohl der normale Weg, dass man im Internet sucht. Habe ich ausführlich getan. Dass man selbst probiert. Bin ich ja dabei. Und dass man sich helfen läßt. Was ist daran schlimm? Ich versuche ja auch, das zu verstehen. DEIN Beitrag hilft mir nun gerade einmal überhaupt nicht weiter. Du könntest Dich positiv herausheben wenn Du nicht so einen Meta-Beitrag schreiben würdest sondern mir einen guten Link oder ein kleines Beispielprogramm geben würdest. Wenn Du das nicht kannst dann brauche ich Deinen Beitrag nicht weil er mir einfach nicht hilft. Vielleicht gibt es ja doch noch jemanden außer Dir, der mir Hinweise geben kann. Keine Sorge: Ich passe das dann schon selbst an meine Umgebung an. Aber es geht mir erst einmal um die Basis des seriellen Empfangs. Und ich denke, dass sehr viele das schon gemacht haben werden. Ich hab eübrigens auch drei Bücher bezüglich VisualBasic6 aber leider ist die serielle Verbindung dort nicht behandelt. Bitte jetzt keine Meta-Diskussion mehr. Wenn jemand ein kleines Beispiel oder einen Link für mich hat dann freue ich mich. Alle anderen mögen bitte einfach schweigen :-) Karsten
Dann mal ein Beispiel
1 | Private Sub MSComm1_OnComm() |
2 | Static buffer As String |
3 | Dim s As String |
4 | Dim st As Integer |
5 | Dim Temperatur As Integer |
6 | Dim Ventil As Integer |
7 | |
8 | Select Case MSComm1.CommEvent |
9 | Case comOverrun: MsgBox "Error Overrun!" |
10 | Case comRxOver: MsgBox "Error RxOver!" |
11 | Case comEvReceive: |
12 | ' Ok, wir haben Daten bekommen. Die hängen wir erst mal an den buffer ran |
13 | buffer = buffer & MSComm1.Input |
14 | ' Wir suchen die Position von CRLF im buffer. Ist st > 0 dann haben wir die Position |
15 | st = InStr(buffer, vbCrLf) |
16 | While st > 0 |
17 | ' Alles links von CRLF nach s |
18 | s = Left(buffer, st - 1) |
19 | ' Alles rechts von CRLF nach buffer |
20 | buffer = Mid(buffer, st + 2) |
21 | |
22 | ' Prüfen ob erstes Zeichen T bzw. V |
23 | If Left(s, 1) = "T" Then |
24 | ' Ok. erstes Zeichen ist T. String in Integer umwandeln |
25 | Temperatur = Val(Mid(s, 2)) |
26 | ElseIf Left(s, 1) = "V" Then |
27 | ' Ok. erstes Zeichen ist V. String in Integer umwandeln |
28 | Ventil = Val(Mid(s, 2)) |
29 | End If |
30 | ' Wir suchen weiter nach CRLF |
31 | st = InStr(buffer, vbCrLf) |
32 | Wend |
33 | End Select |
34 | End Sub |
WOW! Lieber Werner .. :-) das sieht ja perfekt aus! Das kann ich auch gut nachvollziehen. So werde ich das ausprobieren. Ich hoffe, ich kann nachher eine Erfolgsmeldung geben. Viiiieeeelen Dank auf jeden Fall. Karsten
Karsten schrieb: > ähnlich. Ich habe noch nicht verstanden, an welcher Stelle VisualBasi > merkt, dass es sich jeweils um einen Datensatz zum Beispiel T19 > handelt Genau da liegt der springende Punkt. Die Antwort lautet: Zunächst mal - gar nicht. Es ist dein Bier aus dem Buchstabenstrom die Einzelteile herauszufischen! UNd genau aus dem Grund hast du die beiden Zeichen CR und LF in diesem Strom. Damit dein Programm daran erkennen kann, wo ein Datensatz im Buchstabenstrom endet. Aber das muss dein Programm machen. Visual Basic ist das völlig egal. Für VB hört die Welt dort auf, wo es deinem Programm die nächste Buchstabensequenz übergibt, die es seit der letzten Befragung empfangen und gesammelt hat.
ahh .. so langsam wird alles klarer. Vielen Dank
Denk dir ein Protokoll aus und programmier das auf beiden Seiten. Kommunikationsprotokoll sollte einige Treffer bei goo** haben
Uwe schrieb: > Denk dir ein Protokoll aus und programmier das auf beiden Seiten. Wozu? Er hat doch quasi schon ein Protokoll. Datensatz beginnt mit T oder V. Danach kommt der Wert. Abschluss ist CRLF. Bevor er mit einem "eigenen" Protokoll anfängt muss er erst mal verstehen wie die Kommunikation funktioniert.
Genau deshalb soll er ja mal nach Protokoll googln und erkennen was er hat und was fehlt und warum man sowas macht.
Ich denke auch, als "Protokoll" sollte es doch schon reichen. Ein "Header" und am Ende CrLf. Wenn es nötig wäre könnte ich ja auch noch ein Endezeichen anhängen - zum Beispiel $ - aber ich wüßte nicht, was das für Vorteile bringen sollte. Es muss ja auch möglich sein, den Datenstrom so zu nehmen wie er ist. Das ist ja in anderen Situationen auch so. Ich will das ja auch eigentlich nicht alles neu erfinden. Genau das, was ich hier machen möchte haben ja schon tausende vor mir gemacht.
Das was er hat ist als Protokoll schon vollkommen ausreichend. Texte über Protokolle im Internet nachzulessen würde das ganze nur deutlich verkomplizieren, zumal mit Sicherheit der Großteil der verfügbaren Protokollbeschreibungen fürs Netzwerk gedacht sind. Einen kleinen Tip hätte ich allerdings dennoch: Wenn Du von Deiner Textbox die Eigenschaft "Multiline" auf True setzt, dann werden Deine Texte auch ganz sauber nach einem Zeilenumbruch (Cr+Lf) in eine neue Zeile umbrochen, ohne dass es diese beiden Klötzchen gibt. Allerdings - da du je nach T oder V in unterschiedliche Textboxen gehen möchtest - kommst Du um das Aufsplitten der empfangenen Daten leider nicht herum. Aber dafür ist oben ja bereits ein Beispiel zu finden. :-) Grüßle, Torsten.
Hallo Torsten, das mit Multiline versuche ich auch mal. Vielleicht kann mir das nützlich sein, um für den einen oder anderen Wert die letzten Werte anzuzeigen und dann nach z.B. 5 Werten die Textbox wieder zu leeren. Wäre ja hier und da auch nützlich. (Klar..dann kann man das auch als nächstes so machen, dass immer der älteste Wert rausfliegt usw... aber erst muss die Basis jetzt klappen dann die Feinheiten. Danke für den Hinweis mit Multiline. Karsten
@ Autor: Karsten (Gast) ich find das prima, dass du mit VB6 anfängst. Das ist die letzte Programmiersprache von Gates, die noch verständlich ist. Danach kamen die ausgestorbenen Saurier und dann diese Typen , die auf C, C+ , C++ , und C-Rail to Rail geeicht waren.. da ich auch ein VB6 Fan bin, kann ich dir wohl helfen. wenn du also mit Autor: Werner P. (wpfundstein) und seinem Code nicht klar kommst, werden wir das gerne erarbeiten. Gruss klaus
Hallo Klaus, meinst Du das ernst? Hört sich ja sehr gut an. Tatsächlich hatte ich mir als ich ein paar kleine Dinge auf dem PC machen wollte VB6 (mühsam) legal (!) besorgt weil 1.) die moderneren Versionen , die ich testweise installiert hatte mir viel zu groß waren und die erzeugten Programme irgendwie sehr hohe Anforderungen hatten und weil ich 2.) wenig Lust hatte, das Ganze objektorientierte zu lernen nur um ein paar kleine Tools für mich zu schreiben und weil es 3.) BASCOM sehr sehr ähnlich ist. Ich bin wie eingangs gesagt ganz zufrieden damit. Habe heute noch einmal in meinen vier (!) Büchern zu VB6 nachgesehen. Erstaunlicherweise ist in keinem der Bücher die Sache mit der seriellen Schnittstelle beschrieben. Auch in den Tutorials im Internet nicht so richtig. Erstaunlich. Leider habe ich nun heute abend doch nicht soo viel Zeit zum Testen weil meine Tochter morgen Geburtstag hat und ich mit vorbereiten muss.. Meine ersten Schnell-Tests sind sehr vielversprechend: Als erstes habe ich mal auf Multiline einhgestellt. Interessanterweise kamen die Strings nicht ganz sauber an. Teilweise wurde noch EIN Strich angezeigt. Sah aber insgesamt schon etwas besser aus. Dann habe ich den Teil von Werner hineinkopiert..und Sieht wirklich absolut sauber aus!! Herzlichen Dank, Werner!! Die Zahlen werden tatsächlich jetzt sauber auf bisher zwei Textboxen verteilt. Ich freue mich sehr! Wenn ich Verbinden anklicke wird allerdings im Moment noch Error Overrun! angezeigt. Das muss ich als nächstes noch wegbekommen und dann noch mit Kommazahlen versuchen. Dann geht es nur noch um Feinheiten. So sieht mein Testcode zur Zeit aus:
1 | Public Function PortTest(COMPortNummer As Integer) As Boolean |
2 | 'einen com-Port testen |
3 | MSComm1.CommPort = COMPortNummer |
4 | On Error Resume Next |
5 | MSComm1.PortOpen = True |
6 | If Err = 0 Then |
7 | PortTest = True |
8 | MSComm1.PortOpen = False |
9 | Else
|
10 | PortTest = False |
11 | MSComm1.PortOpen = False |
12 | End If |
13 | End Function |
14 | |
15 | |
16 | Private Sub Command1_Click() |
17 | 'Nummer des com-Ports: |
18 | MSComm1.CommPort = Text1.Text |
19 | ' Baud: |
20 | ' Beispiel: "4800,N,8,1" |
21 | MSComm1.Settings = Text2.Text + ",N,8,1" |
22 | 'Port oeffnen: |
23 | On Error Resume Next |
24 | MSComm1.PortOpen = True |
25 | If Err <> 0 Then |
26 | MsgBox "COM" + Text1.Text + " nicht verfügbar" |
27 | End If |
28 | 'Fuer Input: |
29 | MSComm1.RThreshold = 1 |
30 | MSComm1.SThreshold = 1 |
31 | MSComm1.InputLen = 0 |
32 | End Sub |
33 | |
34 | Private Sub Command2_Click() |
35 | 'String zum AVR senden |
36 | MSComm1.Output = Text3.Text + vbCr |
37 | End Sub |
38 | |
39 | Private Sub Command3_Click() |
40 | 'com-Ports durchtesten |
41 | ''wenn verfügbar dann Message anzeigen |
42 | Dim Portzaehler As Integer |
43 | For Portzaehler = 1 To 16 |
44 | If PortTest(Portzaehler) Then |
45 | MsgBox "COM" + Str(Portzaehler) + " verfügbar" |
46 | End If |
47 | Next
|
48 | End Sub |
49 | |
50 | ' Empfangen |
51 | Private Sub MSComm1_OnComm() |
52 | Static buffer As String |
53 | Dim s As String |
54 | Dim st As Integer |
55 | Dim Temperatur As Integer |
56 | Dim Ventil As Integer |
57 | |
58 | Select Case MSComm1.CommEvent |
59 | Case comOverrun: MsgBox "Error Overrun!" |
60 | Case comRxOver: MsgBox "Error RxOver!" |
61 | Case comEvReceive: |
62 | ' Ok, wir haben Daten bekommen. Die hängen wir erst mal an den buffer ran |
63 | buffer = buffer & MSComm1.Input |
64 | ' Wir suchen die Position von CRLF im buffer. Ist st > 0 dann haben wir die Position |
65 | st = InStr(buffer, vbCrLf) |
66 | While st > 0 |
67 | ' Alles links von CRLF nach s |
68 | s = Left(buffer, st - 1) |
69 | ' Alles rechts von CRLF nach buffer |
70 | buffer = Mid(buffer, st + 2) |
71 | |
72 | ' Prüfen ob erstes Zeichen T bzw. V |
73 | If Left(s, 1) = "T" Then |
74 | ' Ok. erstes Zeichen ist T. String in Integer umwandeln |
75 | Temperatur = Val(Mid(s, 2)) |
76 | Text4.Text = Temperatur |
77 | ElseIf Left(s, 1) = "F" Then |
78 | ' Ok. erstes Zeichen ist V. String in Integer umwandeln |
79 | Ventil = Val(Mid(s, 2)) |
80 | Text5.Text = Ventil |
81 | End If |
82 | ' Wir suchen weiter nach CRLF |
83 | st = InStr(buffer, vbCrLf) |
84 | Wend
|
85 | End Select |
86 | End Sub |
87 | |
88 | |
89 | Private Sub Form_Unload(Cancel As Integer) |
90 | 'com-Port schliessen wenn Form verlassen wird |
91 | MSComm1.PortOpen = False |
92 | End Sub |
Muss jetzt erst einmal Gabentisch vorbereiten...
Soo... fast perfekt :-) Der AVR sendet jetzt testweise mit jeweils einem Buchstaben als Header eine Ganzzahl (G..), eine andere Ganzzahl (g...), einen Text (T..) oder eine Kommazahl (K...). Beispiele: G123 g123 TText K123.3 Ich empfange das aus dem seriellen Datenstrom mit VB6, kann im VB mit den Zahlen rechnen und verteile die Zahlen bzw. die Strings zur Anzeige auf Textfelder entsprechend des Headers. -> Werner, Du bist der Größte! Jetzt bekomme ich nur noch beim Öffnen des com-Ports noch die häßliche Meldung Error Overrun! Muss ich hierfür andere Werte angeben: MSComm1.RThreshold = 1 MSComm1.SThreshold = 1 MSComm1.InputLen = 0 ? So sieht es zur Zeit aus:
1 | ' Empfangen: |
2 | Private Sub MSComm1_OnComm() |
3 | Static buffer As String |
4 | Dim s As String |
5 | Dim st As Integer |
6 | Dim Temperatur As Integer |
7 | Dim Ventil As Integer |
8 | Dim kommazahl As Single |
9 | |
10 | Select Case MSComm1.CommEvent |
11 | Case comOverrun: MsgBox "Error Overrun!" |
12 | Case comRxOver: MsgBox "Error RxOver!" |
13 | Case comEvReceive: |
14 | ' Ok, wir haben Daten bekommen. Die hängen wir erst mal an den buffer ran |
15 | buffer = buffer & MSComm1.Input |
16 | ' Wir suchen die Position von CRLF im buffer. Ist st > 0 dann haben wir die Position |
17 | st = InStr(buffer, vbCrLf) |
18 | While st > 0 |
19 | ' Alles links von CRLF nach s |
20 | s = Left(buffer, st - 1) |
21 | ' Alles rechts von CRLF nach buffer |
22 | buffer = Mid(buffer, st + 2) |
23 | |
24 | ' Prüfen erstes Zeichen: |
25 | If Left(s, 1) = "G" Then 'Ganzzahl |
26 | ' Erstes Zeichen ist G = Ganzzahl. String in Integer umwandeln |
27 | Temperatur = Val(Mid(s, 2)) 'Hinter Header in Zahl umwandeln |
28 | Text4.Text = Temperatur |
29 | Text5.Text = Temperatur * 2 'testweise umgerechnet in anderes Textfeld |
30 | |
31 | ElseIf Left(s, 1) = "g" Then 'abgeleitete Ganzzahl |
32 | ' Erstes Zeichen ist g. String in Integer umwandeln |
33 | Ventil = Val(Mid(s, 2)) 'Hinter Header in Zahl umwandeln |
34 | Text5.Text = Ventil |
35 | |
36 | ElseIf Left(s, 1) = "K" Then |
37 | ' Erstes Zeichen ist K. String in Kommazahl umwandeln |
38 | s = Mid(s, 2) 'Alles hinter Header z.B. 75.22233 |
39 | kommazahl = Val(s) |
40 | Text6.Text = kommazahl |
41 | |
42 | ElseIf Left(s, 1) = "T" Then 'Text |
43 | ' Erstes Zeichen ist T = String. |
44 | Text7.Text = Mid(s, 2) 'Alles hinter Header ausgeben |
45 | |
46 | End If |
47 | ' Wir suchen weiter nach CRLF |
48 | st = InStr(buffer, vbCrLf) |
49 | Wend |
50 | End Select |
51 | End Sub |
52 | |
53 | |
54 | --------------------------- |
55 | Private Sub Command1_Click() |
56 | 'Nummer des com-Ports: |
57 | MSComm1.CommPort = Text1.Text |
58 | ' Baud: |
59 | ' Beispiel: "4800,N,8,1" |
60 | MSComm1.Settings = Text2.Text + ",N,8,1" |
61 | 'Port oeffnen: |
62 | On Error Resume Next |
63 | MSComm1.PortOpen = True |
64 | If Err <> 0 Then |
65 | MsgBox "COM" + Text1.Text + " nicht verfügbar" |
66 | End If |
67 | 'Fuer Input: |
68 | MSComm1.RThreshold = 1 |
69 | MSComm1.SThreshold = 1 |
70 | MSComm1.InputLen = 0 |
71 | End Sub |
Hallo Karsten, ja , ich meine das ernst. Mein VB6 habe ich seinerzeit für teuer Geld gekauft und wir haben ein Datenbanksystem entwickelt und verkauft. Aus sicherer Quelle weiss ich, dass dieses Programm immer noch im Einsatz ist. Entwickelt wurde das Programm noch unter Windows 3.11 und es hat seinen Weg bis in das XP geschafft. ich muss dir leider sagen, dass die Veröffentlichung deines Quelltextetes nicht viel bringt, da bei VB6 die Forms ja auch eingebunden werden. Zudem soll man ja hier nicht Quelltexte einstellen, weil es die Lesbarkeit des Artikels erschwert. Ich habe hier verschiedene Ansätze zu dem Thema , weiss aber nicht, wo dein Problem wirklich ist.. Gruss k.
Karsten schrieb: > Wenn jemand ein kleines Beispiel > oder einen Link für mich hat dann freue ich mich. Siehe Anhang, ein weiteres Beispiel, wie in VB6 Daten eines AVRs über die serielle Schnittstelle empfangen und aufbereitet werden. > Alle anderen mögen bitte einfach schweigen Hmmm... ...
Klaus De lisson schrieb: > Ich habe hier verschiedene Ansätze zu dem Thema , weiss aber nicht, > wo dein Problem wirklich ist.. Sein Problem ist, er kann nicht programmieren. Und wenn man das nicht kann, kann man es mit keiner Programmiersprache. VB mag Anfänger anziehen, da man schnell mal was zusammenklicken kann, aber sobald die Aufgabe einen Hauch kompexer wird, spielt das alles keine Rolle mehr. Heute fängt man nicht mehr klein an und lernt programmieren, da wirft man vb an und will "mal schnell" mit einem Controller kommunizieren und steht natürlich doof im Wald. Aber dafür gibts ja die Foren.... Das Problem ist ja hier noch nichtmal das WIE, sondern das WAS. Da fehlt es doch schon am Elementarsten: Repräsenation von Zahlen (Binär->ASCII usw.), Stringverarbeitung, funktionsweise serielle Schnittstelle usw usw. gruß cyblord
Karsten schrieb: > Jetzt bekomme ich nur noch beim Öffnen des com-Ports noch die häßliche > Meldung > Error Overrun! Hast du schon mal nschgesehen (igitt: Doku lesen), was dir die COM mitteilen will, wenn sie overrun meldet? Sie meint damit: Über die Serielle ist haufenweise Zeugs reingekommen, welches ich nicht zwischenspeichern konnte bzw. das keiner abgeholt hat und das ich daher verworfen habe. Schaltest du den AVR ein, dann beginnt der zu senden. Was passiert damit? Das wird gesendet und da am PC das Programm noch nicht läuft, holt es auch keiner ab. Die Serielle geht in den Zustand 'overrun' - Überlauf.
cyblord ---- schrieb: > Sein Problem ist, er kann nicht programmieren. .. und deswegen stellt er ja seine Frage. da musst du das nicht noch extra herausanalysieren. k.
Nach dem Programstart einfach den Puffer leeren z.B. mit einem dummy read. Oder dem µC Bescheid sagen das er senden soll.
"Nach dem Programstart einfach den Puffer leeren z.B. mit einem dummy read." -> Reicht dafür, direkt nach dem Öffnen des com-Ports einmal buffer = MSComm1.Input zu schreiben? Oder gibt es einen eleganten Befehl, um den Buffer erst einmal komplett zu leeren? Abgesehen davon läuft jetzt ja alles :-)
Klaus De lisson schrieb: > cyblord ---- schrieb: >> Sein Problem ist, er kann nicht programmieren. > > .. und deswegen stellt er ja seine Frage. da musst du das nicht noch > extra herausanalysieren. > > k. Man lernt also in deiner Welt programmieren indem man ein Forum eine spezielle Programmieraufgabe lösen lässt? Hab ich wieder was gelernt.
Uwe schrieb: > Nach dem Programstart einfach den Puffer leeren z.B. mit einem dummy > read. Das ist doch Blödsinn. Mit Windows und VB sind die Sachen anders. Was dir, Autor: Karsten (Gast) , vielleicht noch fehlt ist der Blick auf das EVENTSystem von Windows. (Event = Ereignis) Tritt ein Ereignis ein, kann darauf reagiert werden. evt. ist der Parameter MSComm1.InputLen für dich interessant. In VB6 gibt es doch eine tolle Hilfefunktion. Schau mal auf die Controls im angehängten Bild. Gruss klaus
cyblord ---- schrieb: > Man lernt also in deiner Welt programmieren indem man ein Forum eine > spezielle Programmieraufgabe lösen lässt? Hab ich wieder was gelernt. Dafür ist ein Forum da. Ein Auszug aus Wikipedia sollte es dir erklären: ************************************************************ Forum (Kultur), ein realer oder virtueller Ort, wo Meinungen untereinander ausgetauscht werden können, Fragen gestellt und beantwortet werden können ************************************************************ So einfach ist das Gruss klaus
Klaus De lisson schrieb: > cyblord ---- schrieb: >> Man lernt also in deiner Welt programmieren indem man ein Forum eine >> spezielle Programmieraufgabe lösen lässt? Hab ich wieder was gelernt. > > Dafür ist ein Forum da. Nein, siehe den Beitrag hier, der hat völlig Recht: Beitrag "Re: Wozu das & Zeichen vor Variable?" Ohne VB oder sonstige Grundlagen hier mit so einem Problem aufzuschlagen ist eine Frechheit und bringt auch niemanden weiter. Codebeispiele gibts im Web genug, aber ohne Basiswissen bringen die halt nix. > So einfach ist das Leider sind die einfachen Antworten meist auch die falschen.
cyblord ---- schrieb: > Leider sind die einfachen Antworten meist auch die falschen. Wenn alle so denken würden wäre jedes Forum tot. Es geht hier nicht um deine persönlichen Probleme, die zufällig gerade hast. Ich habe z.B. einen Freund , der VB noch besser versteht als ich. Wenn ich also nicht weiterkomme rufe ich ihn an und 2 Tage später habe genau das, was ich wollte. Bin ich deswegen nun ein "Vollarschloch" ? gruss k.
Klaus De lisson schrieb: > Wenn alle so denken würden wäre jedes Forum tot. Bestimmt nicht. Ich anderen Foren wird sowas viel schneller abgewürgt. > Es geht hier nicht um deine persönlichen Probleme, die zufällig gerade > hast. Ich sag meine Meinung, dazu ist ein Forum auch da. > Ich habe z.B. einen Freund , der VB noch besser versteht als ich. > Wenn ich also nicht weiterkomme rufe ich ihn an und 2 Tage später > habe genau das, was ich wollte. Unterschied. Wenn man VB etwas kann, kann man zu einem Problem konkrete Fragen stellen. Das hier ist keine konkrete Frage, sondern ein "Ich wil XYZ, kann es aber nicht, macht es für mich". Wenn du diesen Unterschied intellektuell nicht erfassen kannst, ist das nicht mein Problem. > Bin ich deswegen nun ein "Vollarschloch" ? Nette Ausdrucksweise. Zuhause so gelernt? Interessant.
cyblord ---- schrieb: >> Bin ich deswegen nun ein "Vollarschloch" ? > Nette Ausdrucksweise. Zuhause so gelernt? Interessant. Nun lassem wir es jettzt da stehen und kümmern uns um die Belange des Fragestellers ? k,
Hallo, Leute vertragt Euch doch. Diese völlig überflüssigen Meta-Diskussionen machen den Thread nur schwieriger lesbar.. In meinem Beitrag vom ----- Autor: Karsten (Gast) Datum: 10.05.2012 00:32 ------ habe ich den Status (dass fast alles super läuft) und das einzige verbleibende 'Problem' (comOverrun beim Öffnen des com-Ports) dargestellt. Hat jemand dazu noch einen (letzten) Lösungsvorschlag? Werner P. (wpfundstein), Du vielleicht? Du bist der Einzige, der mich hier wirklich signifikant vorangebracht hat. @cyblord: Halte Dich doch bitte raus. Vielen Dank Viele Grüße Karsten
Karsten schrieb: > @cyblord: Halte Dich doch bitte raus. Vielen Dank Ähm vielleicht hab ich was nicht mitbekommen, aber seit wann bestimmst du, wer hier schreiben darf und wer nicht? Statt hier den Leute was vorschreiben zu wollen solltest du dich vielleicht mal an in aller Ruhe an VB setzen und es LERNEN. Ich weiß, unmöglicher Vorschlag, geht gar nicht sowas. Wir denken nicht, wie Fragen im Forum.
naja .. ist immerhin 'mein Thread' und ich stelle einfach fachliche Fragen. Solltest Du fachlich konstruktiv etwas beitragen können dann bist Du natürlich herzlich willkommen. Da Du aber bisher noch keinerlei fachliche Beiträge gebracht hast muss ich bis auf Weiteres davon ausgehen, dass Du noch viel weniger Ahnung hast als ich oder wahrscheinlich sogar überhaupt keine. Wenn Du Ahnung hättest dann hättest Du ja auch schon einmal einige von den 'vielen Beispielen im Internet' verlinken oder kleine Lösungshinweise geben können. Du kannst mich ja gerne davon überzeugen, dass Du fachlich etwas drauf hast.
Hallo Karsten, ich bekomme keinen Overrun Error. Schau Dir mal die beigefügten Einstellungen an und nimm folgendes aus Deinem Code raus:
1 | MSComm1.RThreshold = 1 |
2 | MSComm1.SThreshold = 1 |
3 | MSComm1.InputLen = 0 |
Grüße
Karsten schrieb: > @cyblord: Halte Dich doch bitte raus. Vielen Dank Hallo cyblord, ich hatte den gleichen Eindruck wie der Fragesteller. "Halt dich raus !" Nachdem der Fragesteller nun aber schrieb: "Werner P. (wpfundstein), Du vielleicht? Du bist der Einzige, der mich hier wirklich signifikant vorangebracht hat." bin ich richtig eifersüchtig un traurig. Wir tun uns dann hoffentlich zusammen und lecken unsere Metawunden k.
Klaus De lisson schrieb: > Hallo cyblord, > ich hatte den gleichen Eindruck wie der Fragesteller. > "Halt dich raus !" Damit komm ich klar, aber das plenken ist nicht schön das macht mich fertig. > Nachdem der Fragesteller nun aber schrieb: > "Werner P. (wpfundstein), Du vielleicht? Du bist der Einzige, der mich > hier wirklich signifikant vorangebracht hat." > > bin ich richtig eifersüchtig un traurig. Tja da musst du nur mal schauen warum das so ist. Werner P. hat ihm schön einen vollständigen Code hingestellt. Genau das ist es doch was er wollte, kein Wunder dass er also so denkt. Wenn du ihm noch schnell sein ganzes Programm schreibst und ihm schickst, dann bist du sein neuer bester Freund ;-) > Wir tun uns dann hoffentlich zusammen und lecken unsere Metawunden Aber klaro
Tja, habt ihr es bemerkt? Ich darf mal mein Posting vor gefühlt 100 Beiträgen zitieren: Udo Schmitt schrieb: > Sorry Karsten, ohne dir nahe treten zu wollen, aber "programmieren" tust > du eigentlich nicht selbst sondern für mich stellt sich das so dar als > lässt du hier programmieren.
Dann ist das "Udo Schmitt schrieb: > Sorry Karsten, ohne dir nahe treten zu wollen, aber "programmieren" tust > du eigentlich nicht selbst sondern für mich stellt sich das so dar als > lässt du hier programmieren." wohl die Wahrheit und ich hatte einen falschen Eindruck. Nun kann ich nur Metasagen "ich bin froh, das Karsten nicht im Eingangspost schon geschrieben hat "ich bin 8 Jahre alt und ich will" Gruss
@Klaus De lisson: Nein, nein - Du gehörst zu den Guten. Ich habe mich sehr über Dein Hilfsangebot gefreut! Und: Nur zur Ergänzung: Nein - ich bin nicht 8. Ich bin im gestandenen Alter, habe ein abgeschlossenes Informatikstudium hinter mir und arbeite erfolgreich in einem großen EDV-Unternehmen. Das ist übrigens die erste Frage, die ich hier im Forum gestelt habe. Bisher habe ich also schon so manches auch ohne Forum programiert bzw. konfiguriert. Nur bin ich eben kein VB-Kenner und die serielle Verbindung AVR-PC baue ich eben zum ersten Mal. Wie es sich gehört hatte ich ja auch vorher Internet und Bücher bemüht bevor ich hier angefragt hatte. Ich hatte ehrlich gesagt auch gedacht, dass es hier sehr viele Leute geben müßte, die das schon tausendmal gemacht haben und die mir sofort Links bzw. Lösungen geben könnten/würden. Ich denke, es ist nicht sinnvoll für mich, diese Standardsachen im Detail selbst zu erarbeiten wenn sie a.) tausendfach vorhanden sind und b.) nicht mein Hauptfokus sind sondern nur ein Randthema. Wie gesagt: Für mich ist VB kein Selbstzweck sondern nur Hilfsmittel zur Erstllung kleiner Tools. Leider habe ich mich aber ja in der Kompetenz der Forum-Teilnehmer getäuscht: Sehr viele haben offenbar fachlich nichts drauf sondern können nur 'klug' daher reden. Ich werde in die Richtung des Hinweises von Werner P. weiterarbeiten. Ich denke auch, dass mein letztes 'Problemchen' daran liegt. Und dann habe ich das ja auch ausreichend im Griff und baue alles andere drum herum selbständig.
Karsten schrieb: > Und: Nur zur Ergänzung: Nein - ich bin nicht 8. Ich bin im gestandenen > Alter, habe ein abgeschlossenes Informatikstudium hinter mir und arbeite > erfolgreich in einem großen EDV-Unternehmen. Informatikstudium? Und dann solche Fragen? Und dann BASCOM? Und dann Visual Basic? Verstehe das wer will. Wie kann man da so ein Eingangspost verfassen? Stringverarbeitung sollte doch kein Problem sein. Hast du in "Compilerbau" geschlafen? Reguläre Ausdrücke könnte man da auch gut nehmen um das zu zerlegen. Ein Informatiker würde zu solchen Lösungen kommen. Und mach dir mal Gedanken warum dich die Leute für 8 Jahre alt halten. Uni, FH, BA, Baumschule? Erschreckend. Bei uns wärst du mit solchem "Wissen" und einer solchen Heransgehensweise aber nicht weit gekommen. edit: Kein Witz, ich scrolle gerade immer zwischen deinem letzten und deinem ersten Post hin und her und kann es nicht fassen. gruß cyblord
@cyblord edit. Ich scrolle lieber nicht zwischen Deinen Beiträgen hin und her weil es nur heiße Luft ist.
@Karsten Bestimmtes wissen muss man schon haben um mit VB zu programmieren! String Behandlungen sind das einfachste, und sollte jeder, bevor er mit VB großartige Programme schreiben möchte, beherrschen! Soviel dazu. Zu deiner Frage: 1. Vb 2008 oder 2010 runterladen (kostet nichts!) 2. Projekt starten 3. Form aufbauen (wo was zeigen, klicken, ...) 4. SerialPort einfügen 5. im event DataReceived: dim iForI as integer dim strLine as string dim strLineSplit() as string strLineRead = SerPort.ReadLine 'Daten werden gelesen und geleert strLineSplit = Split(strLine, vbCrLf) 'Datensätze werden aufgeteilt For iForI = 0 to UBound(strLineSplit) select case left(strlineSplit(iForI),1) case "K" Textbox1.text=mid(strlineSplit(iForI),2) 'Zeige wert, 'zum Rechnen musst du es mit: CDbl(mid(strlineSplit(iForI),2)) definieren case "G" ... case "g" ... case "T" ... case else msgbox "nicht erkant!" 'Zb. end select next iForI Grundstein ist damit gelegt worden! Rest ist dein Bier! Um ganz ehrlich zu sein, auch wenn ich ein Problem habe, zuerst bemühe ich mich selber es zu lösen, UND WENN'S NED anders geht (komme nicht dahinter, trotz einiger versuche) frage ich! Ich hoffe dir geholfen zu haben!
Kick schrieb: > 1. Vb 2008 oder 2010 runterladen (kostet nichts!) und was bringt ihm das wenn er anstelle von VB6 VB2008/2010 verwendet?
Werner P. schrieb: > Kick schrieb: > >> 1. Vb 2008 oder 2010 runterladen (kostet nichts!) > > und was bringt ihm das wenn er anstelle von VB6 VB2008/2010 verwendet? VB 6 ist alt wie Steinkohle. Und wenn er VS Express unterlädt, kann er gleich mit was besserem (C#) einsteigen und auf VB verzichten. :-p Tztz nen Informatiker der VB benutzt UND es nicht blickt. Elend.
Wiederum, außer kritisieren, hast du ned viel mehr geholfen cyblord! :P sag ihm doch: C# install und Ansatz zu der Lösung! ich bin kein C# Programmierer, aber ich nehme es an, wenn einer assemblieren kann, kann der eigentlich C# besser als VB! oder lieg i da falsch? 2. lass mei VB in ruh :P es gibt nichts was i mit VB ned machen kann! Und du wird’s es gar ned merken das es VB war! ;)
>Für mich ist VB kein Selbstzweck sondern nur Hilfsmittel zur Erstllung >kleiner Tools. Hohohohoho der Witz ist gut! Mit VB generiert selbst ein mickriges Hello-World Programm rund 1.5 MByte an Code und benötigt zudem noch eine Runtime-DLL Gucke Dir mal PureBasic an, das ist wohl wesentlich besser geeignet für Deine Zwecke. http://www.purebasic.com/german/index.php Mit PureBasic ist ein Hello-World.Exe < 8 kByte, und ein echtes, stand allone lauffähiges Programm, das keine Runtime-DLL benötigt!)
Peter schrieb: >>Für mich ist VB kein Selbstzweck sondern nur Hilfsmittel zur Erstllung >>kleiner Tools. > > Hohohohoho der Witz ist gut! Mit VB generiert selbst ein mickriges > Hello-World Programm rund 1.5 MByte an Code und benötigt zudem noch eine > Runtime-DLL Du bist nicht mehr UpToDate. VB generiert inzwischen, wie alle Visual Studio Applikationen Bytecode für .NET. Es wird also eine .NET Laufzeitumgebung gebraucht. Ne poplige .dll bringt da nix mehr. Welche allerdings auf jedem neueren Windows zu finden sein dürfte, da es .NET Anwendungen wie Sand am Meer gibt. Eure nativen Programme sind nicht mehr Zeitgemäß. .NET oder JVM ist grad am Zug. Aufjedenfall ByteCode für Virtuelle Maschinen. Direkt auf der CPU wird nix mehr ausgeführt, die Zeiten sind vorbei :-p Und auch BASIC Dialekte sind nicht jedermans Sache. Dazu kommt das "PureBasic" zu nichts auf der Welt irgendwie kompatibel ist. Eine winzige Insel. Sowas bringt dir heutzutage nix mehr. > 2. lass mei VB in ruh :P > es gibt nichts was i mit VB ned machen kann! > Und du wird’s es gar ned merken das es VB war! ;) Aber du wirst es Wissen... Kannst du damit leben? Aber ernsthaft, VS2010 hat auch ein VB an Bord. Nur VB6 ist eben aaaalt. gruß cyblord
cyblord ---- schrieb: > Aber du wirst es Wissen... Kannst du damit leben? > > Aber ernsthaft, VS2010 hat auch ein VB an Bord. Nur VB6 ist eben aaaalt. Seit 1991 bin i mit Basic unterwegs (gwbasic). Es gab damals schon hunderte sprachen, jetzt gibt es noch viele mehr, aber basic ist basic ;) Dh. ich kann damit leben! Und meine Kunden ebenfalls! (Die wissen gar nicht was dahinter steckt, für die, wie für viele andere die Windows benutzen) zählt nur die Oberfläche. Was sind die Vorteile von den anderen Sprachen: Geschwindigkeit? - CPU's werden immer schneller, somit kann des ned sein! Prg's Größe? - Heut zu tage redet man über TB, somit kann des ned sein! Was sind die Vorteile cyblord? Alt - Neu, unterschied sind die engine's die es treiben. Willst es klein und schnell haben, greif zu Assembler. Nur, ist es heut zu tage notwendig?
Entspannt Euch. Es läuft jetzt alles. Danke besonders an Werner P. und an Klaus De lisson. Danke auch an Kick. @cyblord: Du kannst jetzt im nächsten Thread rumätzen.
Kick schrieb: > Was sind die Vorteile cyblord? Kommt drauf an was du meinst. VB6-->VS2010: .NET Unterstützung. Deine alten VB6 Programme bekommen schnell mal Kompatibilitätsprobleme auf neueren Kisten. Kannste drauf warten. Dann natürlich die Entwicklungsoberfläche. Scho VS2010 kommt in Sachen Features mit Eclipse nicht mit, aber bei VB6 ists ja noch schlimmer. Und Tools werden leider immer wichtiger. Ob Unit-Tests oder Repositories ala GIT,SVN usw. Sonstige Basics: Geschwindigkeit und Größe interessieren doch heute nicht mehr. Da hat man andere Probleme. Multithreading z.B. Und bei den meisten alten und modernen Basic Dialekten fehlt die professionelle Unterstützung wie gute IDE, Tools usw vollständig. Dazu kommt eben dass du dich da drüber mit niemandem Unterhalten kannst. Im Pro Umfeld ein No-Go. Jeder Pro Entwickler kann mit C, C++,C#, Java, Ruby und noch andere mehr, was anfangen. Diese Sprachen werden von einer breiten Entwicklergemeinde benutzt und sind großteils standardisiert. Teilweise über internationale Gremien (JCP). Das geht nur wenn man komplett alleine vor sich hin wurschelt. Sobald da ein Mann mehr drüber gucken muss, ist es aus. Beim Hobby geht das alles, kein Problem. Mein Augenmerk liegt auf der prof. Nutzung. Und da geht es nicht. Das gleiche Problem hast du mit Visual Basic im übrigen auch immer. In welchem prof. Umfeld wird das eingesetzt? Da wirst du höchstens ausgelacht wenn du damit ankommst. Auch wenn sich Visual C# nicht extrem davon unterscheidet, haben sich halt c-artige Sprachkonstrukte durchgesetzt. @Karsten: Ach dich gibts ja auch noch. Tu uns doch den gefallen und halt dich raus wenn Erwachsene reden ja? gruß cyblord
Da gebe ich dir vollkommen recht cyblord! Nur, DU schaust es professionell an, und sonnst wer von diesen Jungs die es hier posten? Frage vom Karsten deutete darauf hin dass er kein Profi ist, zumindest ned im Bereich vom VB. Dh. eine einfache Lösung war gefragt. Gut, gute Lösungen sind gegeben worden, er kam trotzdem ned zu Recht, deswegen schrieb i, er soll sich bisserl mehr bemühen. Aber, wir haben ihm, auch wenn es keine Profi prg's waren, geholfen. Sei mir bitte ned böse, aber du hast permanent nur gscheit gredet! Was auch gut ist, die Leute sollen es wissen das es was besser gibt. Vielleicht zeigt der Karsten auch die Interessen daran. Nur, wie du es e scho angesprochen hast, hier sind Hobby Bastler. Die wollen was simples, ohne viel Aufwand. Man bietet hier seine Meinungen und Lösungen an, auch Kritiken. Aber nicht, NUR Kritik! ;) Paar Bsp's tun immer gut ;) lg Kick
Vielleicht wirst Du ja auch irgendwann einmal erwachsen - eines fernen Tages. Bei totaler Abwesenheit von sozialer Kompetenz ist das aber eher nicht zu erwarten. Schade, dass Leute wie Du es immer wieder schaffen, Threads kaputt zu machen. Immerhin wurde mir trotz Deines Schwachsinns geholfen und ich habe meine Lösung. Wenn dies ein Moderator liest: Bitte den gesamten Thread löschen, damit der Nachwelt cyblord und das alles hier erspart bleibt.
Das Problem war hier doch gar nicht die Sprache, hab da doch gar nix dagegen gesagt. Das Problem ist, dass man vorher die Sprache mal bissle lernen sollte. Das ist er eigentlich springende Punkt. Visual Basic ist an sich nicht schlecht und man kann damit, wie du richtig sagst, auch praktisch alles machen. @Karsten: Das war kein Schwachsinn sondern gut gemeinte Ratschläge. Du wolltest es nur nicht hören. gruß cyblord
Kein einziger Ratschlag kam von cyblord. Und von 'gut gemeint' ist nichts zu sehen.
cyblord ---- schrieb: > Das gleiche Problem hast du mit Visual Basic im übrigen auch immer. In > welchem prof. Umfeld wird das eingesetzt? Da wirst du höchstens > ausgelacht wenn du damit ankommst. Auch wenn sich Visual C# nicht extrem > davon unterscheidet, haben sich halt c-artige Sprachkonstrukte > durchgesetzt. Wir haben vor Jahren (ca. 10) für eine Spedition eine Software mit VB6 programmiert. Dem Anwender ist es völlig egal in welcher Sprache programmiert wurde. Für den zählt nur das Ergebnis. Und, das Programm läuft heute noch. Auch unter Windows 7.
Alfounso schrob:
>"push"
Su bringst den Stack durcheinander.
So:POP
RJMP Paul
;-)
Danke an alle, die geholfen haben und an alle, die helfen wollten. Ich habe - trotz cyblord - inzwischen beide Richtungen im Griff. PC <--> AVR Zahlen und Texte. Und ich habe mir eine Version mit VisualBasic6 geschrieben und eine zum Vergleich mit VisualBasic10. Läuft jetzt alles :-) Damit bin ich für meine Projekte gerüstet.
Karsten schrieb: > Danke an alle, die geholfen haben und an alle, die helfen wollten. > Ich habe - trotz cyblord - inzwischen beide Richtungen im Griff. Tja Karsten, ich habe dir nur gesagt wie es ist. Du hast a.) keine Ahnung und bist b.) Dreist. Wenn du mit so einer einfachen Wahrheit nicht klar kommst dann tut mir das leid, aber da musst du irgendwie durch... Vielleicht kommst du ja noch drüber hinweg. Hast du jetzt eigentlich in 2 Monaten programmieren gelernt oder nur endlich nen Dummen gefunden der das für dich macht? gruß cyblord
weder noch.. Du schätzt mich einfach nur vollkommen falsch ein denn a.) kann ich wahrscheinlich besser programmieren als 80% der Teilnehmer hier im Forum und b.) sollte man nicht davon ausgehen wenn jemand an einer Stelle eine Frage hat, dass er dann auf allen Gebieten dumm ist. Ist ja schön wenn wenigstens DU allwissend bist. Ja - ich habe mir das jetzt selbst zusammen gebaut. Keine fertige Lösung gefunden und auch keinen gefunden, der das für mich gemacht hat. War ja auch nie meine Intention.
cyblord ---- schrieb: > VB6-->VS2010: .NET Unterstützung. Deine alten VB6 Programme bekommen > schnell mal Kompatibilitätsprobleme auf neueren Kisten. http://msdn.microsoft.com/en-us/vstudio/ms788708
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.