Forum: Mikrocontroller und Digitale Elektronik FT2232 im Modus 232 UART zum Daten senden


von Neuling! (Gast)


Lesenswert?

Hallo,

ich möchte Daten von meinem MC über den FT2232 zu meinem PC senden.

Arbeite dazu im 232 UART Modus. Einstellungen mit Ftprog habe ich 
durchgeführt

Driver: d2xx
Hardware:RS232 Uart

Ich sende jetzt an den RX- Pin Daten. Leider kommt in meinem VB Programm 
keine Daten an. Um auszuschließen das ich etwas am FT232 falsch gemacht 
habe: Ich muß an die anderen PINs z.b. DTR, CTS, RTS....nichts mehr 
schicken?

von Sascha W. (sascha-w)


Lesenswert?

Neuling! schrieb:
> Hallo,
> ...
> Arbeite dazu im 232 UART Modus. Einstellungen mit Ftprog habe ich
> durchgeführt
was hast du eingestellt?

> Ich sende jetzt an den RX- Pin Daten. Leider kommt in meinem VB Programm
> keine Daten an. Um auszuschließen das ich etwas am FT232 falsch gemacht
> habe: Ich muß an die anderen PINs z.b. DTR, CTS, RTS....nichts mehr
> schicken?
DTR, CTS, RTS sind die Leitungen für Hardware Handshake, beim Zurgiff 
mit VB musst du natürlich die Schnittstelle entsprechend initialisieren 
- am besten ohne Handshake. Um deine Hardware zu testen verbinde erst 
mal TX und RX des FT232 und schau mit einem Terminalprogramm ob deine 
Eingaben zurückkommen. Dann prüfe ob die Ausgaben deines µC im Terminal 
ankommen.

Sascha

von Olek (Gast)


Lesenswert?

//-------------- z.B. in Formload --------------

SerialPort1.PortName = "COM4"
SerialPort1.BaudRate = 9600
SerialPort1.Parity = IO.Ports.Parity.None
SerialPort1.DataBits = 8
SerialPort1.StopBits = IO.Ports.StopBits.One
SerialPort1.Handshake = IO.Ports.Handshake.None
SerialPort1.RtsEnable = False


Try
      SerialPort1.Open()

Catch ex As Exception

      MessageBox.Show("konnte Port nicht öffnen")

End Try

Timer1.Interval = 1
Timer1.Enabled = True
Timer1.Start()

//-------------------------------------------------

Private Sub SendSerialData(ByVal data As String)
        Dim enc As Encoding = Encoding.GetEncoding(1252)



        SerialPort1.Encoding = enc

        Try
            SerialPort1.Write(data)
        Catch ex As Exception

        End Try





End Sub


Private Sub SerialPortEinlesen()



        Try

            Label1.Text=SerialPort1.ReadByte()


        Catch ex As Exception

            MessageBox.Show("timeout")

        End Try





End Sub


Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles Timer1.Tick

     SerialPortEinlesen()

End Sub

//-----------------------------------


vielleicht hilft dir das weiter... aber das mit dem terminal ist auch 
gut :)

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
Noch kein Account? Hier anmelden.