-
        

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 25

Thema: Keine Daten vom FT232BL

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    04.11.2005
    Ort
    Hamburg
    Alter
    32
    Beiträge
    42

    Keine Daten vom FT232BL

    Anzeige

    Ich wollte mir mit nem FT232BL ein Datenkabel von einem Atmega8 zum PC bauen. Nu hab ich das Problem, das am PC keine Daten ankommen.
    Der Mega sendet ununterbrochen "Hallo" aber ankommen tut nix...
    Hat vielleicht jemand Zeit, um sich das mal anzusehen?

    Schaltplan: Hier
    Layout: Hier

    Code:
    #include <stdio.h>
    #include <windows.h>
    #include "FTD2XX.H"
    
    void main(void)
    {
    	FT_HANDLE ftHandle;
    	FT_STATUS ftStatus;
    	DWORD EventDWord;
    	DWORD TxBytes=0;
    	DWORD RxBytes=0;
    	DWORD BytesReceived;
    	char RxBuffer[256];
    
    	for(int i=0;i<256;i++)
    		RxBuffer[0] = ' ';
    
    	ftStatus = FT_Open(0, &ftHandle);
    	if(ftStatus != FT_OK) {
    		printf("Open failed\n");
    		return;
    	}
    	
    	ftStatus = FT_ResetDevice(ftHandle);
    	if(ftStatus != FT_OK)
    	{
    		printf("Reset failed\n");
    		return;
    	}
    
    	ftStatus=FT_SetBaudRate(ftHandle,19200);
    	if(ftStatus!=FT_OK)
    	{
    		printf("SetBaudRate failed\n");
    		return;
    	}
    	ftStatus = FT_SetDataCharacteristics(ftHandle,FT_BITS_8,FT_STOP_BITS_1,FT_PARITY_NONE);
    	if(ftStatus != FT_OK)
    	{
    		printf("SetDataCharacteristics failed\n");
    		return;
    	}
    	ftStatus = FT_SetTimeouts(ftHandle,1000,0);
    	if(ftStatus !=FT_OK)
    	{
    		printf("SetTimeouts failed\n");
    		return;
    	}
    
    
    
    
    
    
    	while(RxBytes==0)
    		FT_GetStatus(ftHandle,&RxBytes,&TxBytes,&EventDWord);
    
    		printf("%d - %d - %x\n",TxBytes,RxBytes,EventDWord);
    	if (RxBytes > 0) {
    		ftStatus = FT_Read(ftHandle,RxBuffer,RxBytes,&BytesReceived);
    		if (ftStatus == FT_OK) {
    		// FT_Read OK
    			printf("Read ok,%d - %s\n",BytesReceived,RxBuffer);
    		}
    		else {
    		// FT_Read Failed
    			printf("Read failed");
    		}
    	}
    	else
    		printf("Nothing\n");
    	
    
    
    	FT_Close(ftHandle);
    }
    PS: Das Programmiern des EEProms funktioniert, also wird die Schaltung wohl in Ordnung sein, oder?!

  2. #2
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    17.02.2005
    Ort
    NRW-Bergisches Land
    Beiträge
    311
    Ich habe mich noch nicht so richtig mit dem FT232BL befasst.
    Habe grad in einer Schaltung von ELV geschaut.

    http://www.elv-downloads.de/service/...6_FM3TX_km.pdf

    Die verwenden den FT232BM.
    Was mir auffält: dein RESET hängt ein wenig undefiniert mit den Rs.
    Bei ELV ist der direkt auf 5V gelegt und der PWRCTL Pin ist auf GND gelegt.

    Vergleich doch selbst mal
    Gruß RePi!


    *** Holzhacken ist deshalb so beliebt, weil man bei dieser Tätigkeit den Erfolg sofort sieht. ***
    *** (Albert Einstein) ***

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    04.11.2005
    Ort
    Hamburg
    Alter
    32
    Beiträge
    42
    Der PWRCTL Pin gibt nur an woher das IC seinen Saft bekommt. Wenn es auf GND liegt vom USB-Port, wenn es auf 5V liegt von einer externen Quelle, so wie es bei mir der Fall ist.
    Das mit dem RESET hab ich mir auch schon überlegt, aber da liegen bei angeschlossenem USB-Kabel ca. 4V dran, was ja eigentlich reichen sollte.
    Zudem ist das mit den Widerständen im Datenblatt so abgebildetet.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    04.11.2005
    Ort
    Hamburg
    Alter
    32
    Beiträge
    42
    Keiner da, der mir helfen kann?

    Was ich bei der ELV Schaltung nicht verstehe ist, warum sie den /CTS Eingang auf High legen?! Der is doch Low-Active und was heißt "Clear To Send Control Input"? Heißt das, dass alles im Buffer gelöscht wird, oder das die Daten gesendet werden sollen?

    Hier ist mal das Datenblatt des FT232BL:
    http://www.ftdichip.com/Documents/Da.../ds232bl18.pdf

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Hallo Cyclon,
    Ich habe mehrere Schaltungen mit FT232BM aufgebaut und nie Probleme damit gehabt.
    Den CTS lass ich unbeschaltet, versuch mal den Reset direkt an 5V .
    Was sag die RX Led? Blinkt die, wenn der Megfa was sendet ?

    Gruß Sebastian
    Software is like s e x: its better when its free.
    Linus Torvald

  6. #6
    Benutzer Stammmitglied
    Registriert seit
    04.11.2005
    Ort
    Hamburg
    Alter
    32
    Beiträge
    42
    Nö, die LEDs leuchten überhaupt nicht

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Dann mal ganz langsam,
    Wenn Du den USB Stecker einsteckst, wird ein USB<->RS232 Konverter erkannt ?
    Software is like s e x: its better when its free.
    Linus Torvald

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    04.11.2005
    Ort
    Hamburg
    Alter
    32
    Beiträge
    42
    Ja, der wird als "FTDI FT..irgendwas.. Device" erkannt.
    Als Treiber hab ich den D2XX-Treiber installiert.

  9. #9
    Erfahrener Benutzer Roboter Genie Avatar von darwin.nuernberg
    Registriert seit
    08.08.2004
    Ort
    A, A
    Alter
    53
    Beiträge
    1.305
    Blog-Einträge
    1
    Hast Du den Pin "TEST" auf Masse (GND) ?
    da hatte ich anfangs auch probleme damit.
    EDIT: ja ich sehe gerade ist dran.

    EDIT: dann kann es eigentlich nur noch das EEPROM sein:
    Hast Du ein EEPROM dran, falls ja weg damit, die entspr. Pins offen lassen.

    Wenn der FT ein EEPROM findet, dann muss auch was schlüssiges drin stehen,
    falls nicht arbeitet er im, ich sag jetzt mal "OEM-Modus".


    Schau doch mal mein Schaltbild & Doku an: http://www.roboternetz.de/phpBB2/dlo...le&file_id=327
    Gruss
    Darwin (meine Projekte sind auf meiner Pinnwand zu finden)

  10. #10
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    45
    Beiträge
    2.236
    Als Treiber hab ich den D2XX-Treiber installiert.
    Hust, jetzt bewege ich mich auf dünnem Eis, weil ich von Win keine Ahnung habe, ABER :
    Ich habe gelesen, daß D2XX Direkttreiber u.a. zum EEprom programmieren gedacht sind, und nachdem man das erledigt hat soll er deinstalliert werden und dafür der VCP- Virtual COM Port Treiber benutzt werden sollte...

    Hm, sollte ich da falsch liegen bitte nicht schlagen, versuche nur zu helfen ...


    Probier das mal, vielleicht klappt es dann

    Gruß Sebastian

    EDIT:

    Hast Du ein EEPROM dran, falls ja weg damit
    Warum das denn ?
    Software is like s e x: its better when its free.
    Linus Torvald

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •