Archiv verlassen und diese Seite im Standarddesign anzeigen : Kommunikation zwischen Hard- und Software
Hallo,
ich will meinen AVR vom PC aus kontrollieren können.
Als Beispiel dient dies(am richtigen rojekt befindet sich mehr Hardware als nur 3 Taster)
Nehmen wir an:
Am AVR sind 3 Schalter angeschlossen.
Ist Taster 1 gedrückt, sendet der AVR diesen Code 499
Ist Taster 2 gedrückt, sendet der AVR diesen Code 959
Ist Taster 3 gedrückt, sendet der AVR diesen Code 996
Jetzt soll ein VB6-Programm diesen Code folgendermaßen auswerten.
1. Stelle soll in Variable "a" geschrieben werden.
2. Stelle soll in Variable "b" geschrieben werden.
3. Stelle soll in Variable "c" geschrieben werden.
Ich habe gedacht ich mache das wie folgt:
eingang=mscomm1.input
a=mid(eingang,1,1)
b=mid(eingang,2,1)
c=mid(eingang,3,1)
warum funktioniert dies aber NICHT????
DAnke für eure Hilfe
Man müßte sehen, wie und auf welche weise du diesen Code auf die Reise schickst.
Und die Detailfrage: WAS funktioniert nicht ?
Hallo,
in Bascom habe ich auch drei Variablen a,b,c.
Mein Code sieht dann so aus:
Print a;b;c;
das funktionert auch. Wenn ich mir das im Terminalprogramm angucke dann steht im ungedrückten Zustand 999
wird Taster 1 gedrückt --> 499
Was Funktioniert nicht?
Es funktioniert in meinem VB-Programm überhaupt nix (;
Ich bekomme zwar den Code 499 in einer Textbox angezeigt.
Will ich nun aber eine Stelle auslesen; zb die 1 dann wird die auch ausgelesen ABER nur einmal, d.h. es erscheint die 4
drücke ich dann Taster 2 müsste dann eine 5 erscheinen. Das funktioniert nicht. Der gesendete Code ist dabei auch richtig --> 959 .
Aber in der Textbox in der die 4 steht , bewegt sich nix!!?
Gruß MAx
BasCom seitig scheint das ok.
Mit dem VB muß ich dich leider den Wölfen überlassen, hab ich keinen Schimmer von nix.
Hallo
Dann zeig uns doch mal deine Empfangsroutine in VB .
Gruß
Dieter
Hallo,
aktuell siehts so aus (ich habe schon verschiedenes versucht)
Gruß und vielen Dank
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comOverrun: StatusBar1.Panels(1).Text = "Status: Störung O.V"
Case comRxOver: StatusBar1.Panels(1).Text = "Status: Störung R.O"
Case comEvReceive: eingang = MSComm1.Input
End Select
Text3 = eingang
Text1 = Text1 + Mid(eingang, 1, 1)
Wie löst ihr eigentlich eine Verbindung zwischen PC und µC. Ich bin doch bestimmt nicht der einzige der nicht den AVR an einen PC hängt.
Gruß Max
Ich würde mich über Antworten freuen (; ich sitze schon länger ratlos davor und weis nicht mehr weiter...
Danke Danke für euere Antworten (:
Hallo
Wie hast du deine mscoom1 denn eingestellt. Speziell den MSComm1.RThreshold Wert. setze den mal auf 3.
Wenn du unter lösen meinst, die COM wieder zu schliessen, dann mit
'COM Port schliessen
MSComm1.PortOpen = False
Am besten unter Form_unload oder eine eigene Schaltfläche.
Gruß
Dieter
Hallo Gast,
danke für den tip ich werds mal ausprobieren. Mit lösen habe ich das Problem gemeint. Also andere Vorschläge/Ansätze für dieses Problem (;
Hat leider nicht geklappt ):
Könntest ihr/du mir einen Codeschnipsel geben, wie ihr/du es machen würden/würdest
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.