Forum: Mikrocontroller und Digitale Elektronik LPC2294 & ISP1161


von Michael B. (m_blum)


Lesenswert?

Hallo an alle,

möchte für ein größeres Projekt den USB- Controller mit dem externen
Bus des LPC verknüpfen. Nach den Datenblättern müsste dies möglich
sein, nun habe ich aber den EMC des LPC noch nicht bis ins kleinste
detail gemessen, um eine konkrete Aussage treffen zu können. Deshalb
wollte ich wissen ob sich mit jemand mit dieser Konstellation
beschäftigt hat oder alternativ jemand Erfahrungen mit dem ISP
gesammelt hat.

Danke für jede Info

Michael

von MmVisual (Gast)


Lesenswert?

Hallo,

Ich habe den ISP1583 an einen M16C bereits erfolgreich verwendet. Ich
habe alle 16 Bit Busbreite genutzt. Der LPC unterstützt auch direkt 16
Bit Bus. Verwende dazu am besten ein CS Signal com LPC und stelle
dieses auf 16 Bit Busbreite ein. (Anschluss A1..A8, D0..15 vom LPC auf
AD0..AD7, DATA0..15 des ISP)
Dann schreibst Du Dir eine Header Datei in der die IOs mit
Registerbezeichnungen und Adressen vergibst, dann kannst Du darauf in
deinem Programm direkt zugreifen. Schaue noch das Timing an wie schnell
der ISP tatsächlich die IOs austauschen kann, demenstsprechend musst du
im LPC waits einstellen.
Dann gehts schon los mit der USB Programmierung...
Ach ja, Verwende den Interrupt-Ausgang des ISP um schneller und
einfacher die USB-Ansteuerung machen zu können.

Ich habe den ISP1583 gewählt da er Hi-Speed kann und ich die
Hub-Funktion nicht brauche. Der Buffert bis zu 8KB und kann diese mit
einem einzigen Frame an den PC übertragen. (USB 2.0 Hi Speed geht erst
ab WinXP mit SP2! Bei SP1 laufen die Geräte nur mit FullSpeed).
Ich bin vom ISP1583 begeistert und werde den in meinem nächsten Projekt
wieder verwenden.
Unterschätzen Sie den Aufwand nicht, der für den Aufbau der
Kommunikation mit USB nötig ist. Gibt man Windows eine falsche Antwort,
dann wird das Gerät nicht angemeldet und der Geräte-Treiber nicht
geladen. Die Dokumentation von www.usb.org ist lebenswichtig. Alle
Telegramme sind da sehr gut beschrieben. Wie jedoch der Anmeldezyklus
abläuft ist darin nicht beschrieben, zumindest habe ich es nicht
gefunden.

MfG M.Müller

PS: In der Header definition hatte ich einen kleinen fehler drin, der
kostete mich 3 Tage Fehlersuchen, also lieber diese Register 2 mal
kontrollieren. Der ISB1583 hat ein 16 Bit Register das zur freien
Verwendung genutzt werden kann, damit kannst Du was reinschreiben und
wieder lesen, nur so zum Test.

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.