noch ne info aus m datenblatt falls das was bringt... der USB lauft ueber TTL UARTS (RX/TX) (was auch immer das ist )
weis denn keiner was ??
hallo.
ich habe ein rnmega2560 und wuerde dieses gerne ueber ein visual basic programm ansprechen...
bis jetzt kann ich es ueber die Bascom console ueber das USB kabel ansprechen... so wies im datenblatt steht:
z.b. wenn ich in der console verschidene buchstaben druecke werden bestimte funktionen ausgelöst...Code:Config Com4 =9600 , Synchrone =0 , Parity = None , Stopbits =1 , Databits =8 , Clockpol =0 Open "com4:" For Binary As #4 'USB Buchse ...... B = Waitkey(#4) .......
wei kann ich das gleiche von einem visual basic programm aus steuern ,
muss ja nicht sien das tasten gesendet werden, sondern einfach iregdnwie ??
danke schon mal..
noch ne info aus m datenblatt falls das was bringt... der USB lauft ueber TTL UARTS (RX/TX) (was auch immer das ist )
weis denn keiner was ??
ich mache grade sowas ähnliches für die facharbeit....wie man tasten abfängt kann ich grad net sagen aber du wirst sicher was finden ...auch sollte dieses tut helfen: http://www.activevb.de/tutorials/tut_com/com.html wenn du fragen hast schreib sie her ich versuch zu helfen...
edit: eventuell mal durchlesen...http://www.wer-weiss-was.de/theme161...le2512915.html
edit2: achso usb? ich weiß nicht aber du sprichst ja den COM4 an da dürfte das doch gehen oder? musste mal probieren...ich machs über RS232
dann müsste es doch gehen ? oder ? die daten werden doch automatisch USB gerecht umgewandelt?
Der USB-Chip auf dem 2560er-Modul meldet sich (wie du schon sagtest) unter Windows als virtueller COM-Port an. Du brauchts daher ne lib/Treiber/wasauchimmer, um mit VB auf nen COM-Port zu schreiben. Sollte sich finden lassen...
ja ich kann dann das ganze als blackbox betrachten ,einfach nur den comport ansprechen und die tatsächliche funktionsweise des ganzen ignorieren..
ich habe das ganze im Excel umgesetzt mit dem MsCOMM Controll ist zwar VBA aber immerhin ist man im Excel hoch flexibel wenn man die Daten verwalten möchte. Als µC habe ich auch den ATMEGA2560 verwendet mit der USB Anbindung. Dazu reicht es den Simulierten CommPort einfach dem MSComm Controll mitzuteilen.
Ich lese 16 Analoge und ca. 30 Digitale Ports in das Excel ein und erstelle mir daraus meine Messwerttabelle.
Im Visual Basic 2005 Express habe ich irgendwo noch ein Beispiel aber da steht nur drinn wie man empfängt und nicht sendet.
Wer also brauchbaren Code für das VB 2005 hat .. ich bin interressiert. Ein eigenes kleines Windows Programm wäre wirklich zu geil.
Gruß
Steffen
@ steffen44
mit vb 2005 ist es ganz einfach:
einfach in der toolbox -> komponenten -> serail port auf die form ziehen...
dann rechts unten bei den eigenschften die baudrate usw einstellen...
und dann noch den code hier:
fertig....Code:SerialPort.Open() 'port oeffnen SerialPort.Write("blablubb, wasauchimmer") ' senden an uC SerialPort.Close() ' hinterher port schiessen
in vb 6.0: (anleitung von peterfideo)
Du erstellst ein Projekt. Gehst dann auf Komponeneten. Dort das Microsoft Comm Control anhaken. Dieses dann auf die Form ziehen. Jetzt kannst du den Comport parametrieren. z.B. Port 3 mit 19200 Baud:
Daten senden:Code:Private Sub Form_Load() With MSComm1 .CommPort = 3 .Settings = "19200,n,8,1" .DTREnable = False .RTSEnable = False .PortOpen = True .InBufferSize = 50 End With End Sub
Daten Empfangen:Code:MSComm1.Output = "Nachricht an uC"
Wobei das Event erst bei vollem Datenpuffer(mscomm1.InBufferSize) ausgelöst wird.Code:Private Sub MSComm1_OnComm() lblOverrun.Visible = False lblRXOver.Visible = False Dim s As String Dim i As Integer Select Case MSComm1.CommEvent Case comEvReceive Text2.Text = Text2.Text & MSComm1.Input End Select End Sub
Alternative wäre per Timer ständig gucken, ob was im Puffer ist und dann auslesen.
Wichtig: Port bei Programmende schließen.
Code:Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer) MSComm1.PortOpen = False End Sub
Lesezeichen