USB an PIC18 mit FT232

Gast #1559204
Hallo zusammen.
Ich versuch seit ein paar Tagen meine Platine in Betrieb zu nehmen und 
es funzt einfach nicht.
Hatte vor, mit dem UART meines PIC18F4550 über einen FT232BL (FT232RL 
auch schon versucht) Daten an den PC zu senden und es geht einfach 
nicht. Register des USART sollten richtig gesetzt sein (mehrfach von 
verschiedenen Leuten überprüft). Ich bekommen trotzdem in meinen 
Terminalprogrammen immer nur kryptische Zeichen angezeigt.

Bitte um Hilfe, was ich noch alles versuchen kann!!! Bin mit meinem 
Latein am Ende.

mfg
ElSchlicko
Gast
Öhm...ja...schön...ich hab auch Probleme, kann mir jemand helfen?

Was ich damit sagen will: Bitte viel mehr Infos, das bisherige ist viel 
zu wenig. Schaltpläne, Programme oder zumindest Ausschnitte davon werden 
unbedingt nötig sein.
Gast
FT232 hab ich für dieses Projekt nehmen MÜSSEN (war Teil der 
Aufgabenstellung).
Platine vom FT232 hab ich von Prof bekommen, gehe vom PIC nur mit TX und 
RX drauf (funktioniert lt seiner Aussage). Andere Schaltpläne sind im 
Moment nich greifbar.
Am PIC hab ich nenn 20MHz Quarz hängen.

Programmierung:

TRISCbits.TRISC6 = OUTPUT;
TRISCbits.TRISC7 = INPUT;
OpenUSART(  USART_TX_INT_OFF &
        USART_RX_INT_OFF &
        USART_ASYNCH_MODE &
        USART_EIGHT_BIT &
        USART_CONT_RX &
        USART_BRGH_LOW, 31);   //sollten 9600 Baud sein

:
:
WriteUSART('Z');
:
Die üblichen Verdächtigen:


- Baudrate stimmt? "kryptische Zeichen" bekommt man gern, wenn die 
Baudrate daneben ist

Edit:
> //sollten 9600 Baud sein
Na, ein wenig sicherer solltest du dir schon sein

> Am PIC hab ich nenn 20MHz Quarz hängen.
Kenn das nur vom AVR: Baudrate nicht genau genug wegen dem Quartz?

> gehe vom PIC nur mit TX und RX drauf
Und GND hoffe ich

- RX und TX "über kreuz" angeschlossen? also der "tx" am FTDI ist ein 
Ausgang "vom Computer", der "rx" ein Eingang "zum Computer"

- Störungen in deiner Schaltung, speziell spikes auf vcc und RX/TX?


Ansonsten bietet sich der loopback-Test an: verbinde mal RX und TX vom 
ftdi (aber nicht mit dem Rest der Schaltung)

Dann starte HyperTerminal. Alle Zeichen die du sendest müssen so wieder 
reinkommen. Wenn du RX und TX wieder auseinander machst, dürfen die 
Zeichen nicht wieder reinkommen.
Gast
lt Datenblatt sind es bei diesen Einstellungen 9600Baud @ Fosc=20MHz
Mit dem Quarz das sollte funktionieren, wurde in anderen Projekten auch 
ohne Probleme verwendet.
LoopBack Test hat funktioniert; schickt mir alles gleich retour
Gast
Hab da eine Verständnisfrage: Mein FOSC, mit dem ich Laut Datenblatt 
meine Baudrate berechne, muss schon die Frequenz meines Quarzes sein, 
oder? (X = ((FOSC/Desired Baud Rate)/64) – 1 und daraus aus errechneter 
Baudrate Fehler berechnen)

Mein Gedankengang sieht so aus: Ich schicke asynchron beliebig die Daten 
bei der PIC TX Leitung raus und der FT232 schickt selbstständig die 
Daten rauf. D.h. eigentlich muss ich nur noch die Baudrate am PC 
einstellen und im Terminalprogramm zeigt er mir mein Zeichen an.

Sind meine Gedanken so richtig?!
hast du den PLL für den chip-takt aktiviert?
all unsere fragerei könntest du von anfang an beheben, indem du die 
relevanten teile des sourcecodes veröffentlichst, wie bereits 6 beiträge 
weiter oben vorgeschlagen aber noch immer nicht gemacht...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.