AT89C51CC03 mit USB Schnittstelle für Kommunikation

OP #1011423
Lesenswert?

Hi Forum,

wir müssen bei unserem Projekt den oben genannten Controller für ein 
TraningBoard benutzen. Aufgabenstellung ist es ein Board zu entwickeln 
dass über ISP programmierbar ist. Die Kommunikation soll über eine RS232 
oder eine USB-Schnittstelle stattfinden. (Einstellbar über eine 8 Tasten 
Tastatur)
Mit der RS232 hab ich keine Probleme.
Meine Frage an euch. Was für einen USB-Anschluss würdet Ihr mit 
empfehlen und welche PINS vom Controller muss ich dazu verwenden?
Ich vermute mal dass das die selben sind wie bei der RS232 
Schnittstelle.
Danke schon mal für euer Antworten.
Falls Fragen noch offen sind - nur her damit.
OP #1011444
Lesenswert?

Wir müssen den oben genannten Controller benutzten. Die 
CAN-Schnittstelle wird auch verwendet. Hab ich vorher vergessen zu 
erwähnen. Haben außerdem noch eine SPI-Schnittstelle mit der wir Daten 
zu einem LCD-Display schicken.
Mal ne Frage - ist es mit dem von uns verwendeten Controller überhaupt 
möglich eine USB-Schnittstelle zu realisieren?
#1011466
Lesenswert?

Ich gehe mal davon aus, daß der Controller vorgegeben ist für das 
Projekt. Ich würde dir dann zu dem FT232RL als USB Chip raten.

Ich habe diesen Chip in letzter Zeit des öfteren schon verbaut und er 
funktioniert sehr problemlos. Er wird am den Controller an die RXD und 
TXD Pins angeschlossen und richtet auf dem Hostrechner (PC, Mac, etc) 
eine virtuelle serielle Schnittstelle ein. Dadurch erfolgt die 
Kommunikation für den Controller völlig transparent weiterhin über die 
serielle Schnittstelle und du brauchst dich nicht um den USB Kram zu 
kümmern.

Falls du ISP mit einem selbst geschriebenen Bootloader machen willst 
dürftest du auch keine weitere Hardware-Logik benötigen. Falls der 
Controller einen eingebauten Bootloader enthält der per Hardware 
aktiviert werden muß, kannst du diverse Steuersignale der RS232 
(respektive des USB-RS232 Chips) dafür zur Hilfestellung benutzen.

Der FT232RL ist z.B. bei Reichelt für 4,35€ zu bekommen und lässt sich 
mit einem Windows Tool (MProg) teilweise für die eigenen Gegebenheiten 
umprogrammieren.

Ciao,
     Rainer
OP #1011644
Lesenswert?

Danke für den Tipp.
Wenn ich dass dann richtig verstanden habe sendet dann die RS232 
Schnittstelle genau die gleichen Signale wie die USB-Schnittstelle, da 
beide Schnittstellen zur gleichen Zeit dann auch mit den gleichen 
Signalen von TxD und RxD gespeist werden.
Der Unterschied besteht eben darin, dass der USB-Chip das ankommende 
Signal von TxD und RxD in ein USB konformes Signal umwandelt und dann 
weiter zum Rechner schickt.
Das RS232 Signal wird ja sozusagen auch in einem Treiberbaustein 
umgewandelt um mit anderen PCs oder so zu kommunizieren.
#1011681
Lesenswert?

Genau richtig.
Für die richtige RS232 benutzt man ja z.B. den MAX232 um den Signalpegel 
anzupassen und einfach ausgedrückt macht der FT232 das gleiche für die 
USB Schnittstelle.
Wenn du natürlich über die reale RS232 und die virtuelle USB-RS232 
getrennt Daten übertragen willst, brauchst du zwei getrennte serielle 
Schnittstellen am Controller. Oder Alternativ schaltest du per externer 
Logik die Pins um zwischen den beiden Schnittstellen, wobei dann aber 
nicht beide gleichzeitig genutzt werden können.

Ciao,
     Rainer

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren