Hallo Leute,
Habe mal ein Problem wo ich beim lesen im Forum nicht weitergekommen bin
und brauche jetzt mal Hilfe von euch. Habe ein Problem bei einem VB.net
Programm welches mit meinem Atmega 2561 sprechen soll. Da ich mit VB.net
noch nicht so viel Erfahrung habe weiß ich nicht was ich verkehrt mache.
Ich möchte vom Atmega Daten empfangen. Es soll ein String mit dem Wert
"EIN" oder "Aus" zum Computer gesendet werden.
Jetzt mein Problem, wie muß ich das anstellen ?
Habe es bis jetzt so versucht, aber mein Programm hängt sich dann auf:
ComPort.Open()
ComPort.Write("6")
ComPort.Close()
ComPort.Open()
Dim S_CH01 As String
S_CH01 = ComPort.ReadLine()
ComPort.Close()
If S_CH01 = "Ein" Then
cmdKanal_01.BackColor = Color.Green
Else
cmdKanal_01.BackColor = Color.Red
End If
Das senden zum VB Programm klappt wirklich gut, nur wie kann ich Daten
empfangen ?
Bräuchte wirklich dringend Hilfe.
Gruß Jörg
PS: Suche noch ein Buch wo ich sowas nachschlagen kann. Könnt Ihr mir
ein Buch oder einen Kurs empfehlen ?
>ComPort.ReadLine()
Liest eine Zeile ein, schickt dein µC denn ach ein CR+LF?? Sonst wartet
VB da nämlich drauf
Hallo Timo,
danke für deine Antwort. Wie sende ich den CR+LF von Bascom aus, sende
die Daten per print #2, "Ein".
Dann sollte er auch CR LF senden.
Der Code in Bascom:
Config Com2 = 115200 , Synchrone = 0 , Parity = None , Stopbits = 1 ,
Databits = 8 , Clockpol = 0
Open "com2:" For Binary As #2
Enable Interrupts
Echo On
Readeeprom S_speicher_ein_aus_a , &H9C0
Print #2 , "Ein"
Close #2
Gruß Jörg, der noch weitere Hilfe braucht.
ComPort.Close() ComPort.Open() Evtl. ist das zu schnell hintereinander. Du testest ja gar nicht auf ComPort.IsOpen. Und wieso machst du ihn überhaupt zu wenn du ihn eh wieder aufmachst? Ich würde den auf machen, die "6" senden dann eine Endlosschleife machen und dafür ein DataReceived-Event verwenden um ein Flag zu setzen, welche dann die Schleife verlässt.
Hallo Timmo, erstmal danke für deine Antwort. Wie teste ich ob der ComPort offen ist und wie bin ich zu schnell ? Gruß Jörg
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.