HI
Ich hab mir ne schaltung mit nem µc aufgebaut und nem ft232rl (usb zu seriel konverter) der µc soll später mal eine rgb led matrix ansteuern...
so nun bin ich an dem punkt angelangt an dem ich die usb verbindung aufbauen muss ich hab nuch noch nie was mit dem ft232 oder mit usb gemacht ... vieleicht hat ja schonmal jemand was mit einem ft232 gemacht für hilfreiche tipps zum ansprechen von meinem ft232 wäre ich dankbar oder vieleicht hat ja jemand sogar ein beispiel in pb oder c
die dokumentation zum d2xx treiber gibts hier
mfg stalky
FT232 RL via D2XX Treiber ansprechen
FT232 RL via D2XX Treiber ansprechen
Aus großer Kraft folgt große Verantwortung.
servus
so habs jetzt geschafft daten zum µC und zurück zu rechner zu senden ....
den FT232 kann man nach dem mann den treiber installiert hat mit dem programm MProg Konfigurieren Herstellername Device deskription usw...
hier mal mein test code:
ich find den chip einfach toll ist nicht kompliziert zu handaben nur zum einlöten ist er ein bischen zu klein kann ihn aber sonst weiterempfehlen
mfg stalky
so habs jetzt geschafft daten zum µC und zurück zu rechner zu senden ....
den FT232 kann man nach dem mann den treiber installiert hat mit dem programm MProg Konfigurieren Herstellername Device deskription usw...
hier mal mein test code:
Code: Alles auswählen
#FT_OK = 0
#FT_OPEN_BY_SERIAL_NUMBER = 1
#FT_OPEN_BY_DESCRIPTION = 2
#FT_OPEN_BY_LOCATION = 4
#FT_BITS_8 = 8
#FT_BITS_7 = 7
#FT_STOP_BITS_1 = 0
#FT_STOP_BITS_2 = 2
#FT_PARITY_NONE = 0
#FT_PARITY_ODD = 1
#FT_PARITY_EVEN = 2
#FT_PARITY_MARK = 3
#FT_PARITY_SPACE = 4
#FT_FLOW_NONE = $0000
#FT_FLOW_RTS_CTS = $0100
#FT_FLOW_DTR_DSR = $0200
#FT_FLOW_XON_XOFF = $0400
#FT_BAUD_9600 = 9600
#FT_BAUD_19200 = 19200
#FT_EVENT_RXCHAR = 1
#FT_EVENT_MODEM_STATUS = 2
If OpenLibrary(0, "FTD2XX.dll")
Debug "dll geladen!"
If #FT_OK = CallFunction(0, "FT_OpenEx", @"RGB LED Matrix Treiber", #FT_OPEN_BY_DESCRIPTION , @hdev)
Debug "FT232RL geöffnet"
If #FT_OK = CallFunction(0, "FT_SetDataCharacteristics", hdev, #FT_BITS_8, #FT_STOP_BITS_1, #FT_PARITY_NONE)
If #FT_OK = CallFunction(0, "FT_SetFlowControl", hdev, #FT_FLOW_NONE, 0, 0)
If #FT_OK = CallFunction(0, "FT_SetBaudRate", hdev, #FT_BAUD_19200)
Debug "FT232RL ist konfiguriert"
dat.c = 123
If #FT_OK = CallFunction(0, "FT_Write", hdev, @dat, 1, @size)
Debug "daten gesendet: "+Str(size)
While rxbyte = 0
If Not #FT_OK = CallFunction(0, "FT_GetStatus", hdev, @rxbyte, @txbyte, @status)
Debug "error beim status anfordern"
EndIf
Wend
size = 0
dat = 0
If #FT_OK = CallFunction(0, "FT_Read", hdev, @dat, 1, @size)
Debug "daten gelesen: "+Str(size)+" daten: "+Str(dat)
Else
Debug "error beim lesen"
EndIf
Else
Debug "Fehler beim senden"
EndIf
Else
Debug "error beim einstellen der baudrate des FT232RL"
EndIf
Else
Debug "error beim einstellen der flow_controle"
EndIf
Else
Debug "error beim einstellen der snittstelle des FT232RL"
EndIf
Else
Debug "error beim öffnen des FT232RL"
EndIf
Else
Debug "dll nicht gefunden!"
EndIf
mfg stalky
Aus großer Kraft folgt große Verantwortung.
hi
die function FT_OpenEx sucht nach ft232 chips die mit dem rechner verbunden sind und die beschreibung (descripion) "RGB LED Matrix Treiber" enthalten ... von anfang an steht da glaubich FT Serial Converter oder sowas drin ... und dann würde er ihn ned finden weil ich ja nach "RGB LED Matrix Treiber" suche ...
wenn man nur einen von den dingern hat dann kann man auch FT_Open verwenden da muss man nen index angeben welchen chip mann öffnen will ... wenn nur einer da ist dann gibt es nur den index 0 aber wenn man mehre hat dann muss man die ja irgenwie ausernander halten ich hab jetzt nur einen aber später vieleicht mal mehrere und dann benutze ich die beschreibung um die controler auseinader zu halten...
zu deiner anderen frage ich programmiere pic controler vom microchip für meine matrix ferwende ich einen 18f452 die µc programmiere ich in c ebenfalls mit der ide von microchip
mfg stalky
das kommt daruf an mit welcher metode man den ft232 öffnet ich öffne ihn nach der beschreibung die ich zufor mit MPROG eingegeben habe.Helmut hat geschrieben: und dann findet das Purebasic ihn erst?
Code: Alles auswählen
CallFunction(0, "FT_OpenEx", @"RGB LED Matrix Treiber", #FT_OPEN_BY_DESCRIPTION , @hdev)
wenn man nur einen von den dingern hat dann kann man auch FT_Open verwenden da muss man nen index angeben welchen chip mann öffnen will ... wenn nur einer da ist dann gibt es nur den index 0 aber wenn man mehre hat dann muss man die ja irgenwie ausernander halten ich hab jetzt nur einen aber später vieleicht mal mehrere und dann benutze ich die beschreibung um die controler auseinader zu halten...
zu deiner anderen frage ich programmiere pic controler vom microchip für meine matrix ferwende ich einen 18f452 die µc programmiere ich in c ebenfalls mit der ide von microchip
mfg stalky
Aus großer Kraft folgt große Verantwortung.