mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Cypress CY7C63001A Treiber Firmware


Autor: Andi B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wer kann mir bei der Erstellung eines Treibers und Firmware zum Cypress
CY7C63001A helfen?
Ich habe den Chip bei ModulBus gekauft und benutze momentan deren
Software und Treiber. Nun möchte ich eigene Firmware auf den Chip
bringen.

Hab zwar bei Beyond Logic noch ein Beispiel zum Cypress USB Starter Kit
gefunden, aber da fehlen einige Header Dateien (z.B. Iso82930.h).
Wer hat sie?
Siehe http://www.beyondlogic.org/usb/cypressdrv.zip

Wie bekommt man eine eigene Firmware auf den Chip?
Die kompilierung mit dem CYASM funktioniert zwar, aber der Treiber hat
keine WriteROM Funtion. Laut Beschreibung muss auch der VPP Pin am Chip
auf + oder GND gesetzt werden.

Bitte keine doofen Ratschläge wie keine Ahnung oder es könnte da oder
dort vielleicht stehen.

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

nur für meine Neugier. Was kann dieser Chip?

Autor: Michi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist ein USB Microcontroller.
http://www.b-kainka.de/usb.htm wird dort für MSR aufgaben genutzt.
Habe auch noch einen, weiss jedoch nichts mit ihm anzufangen da er
bereits programmiert ist. und ich kein Programmierboard für den Chip
habe.

Autor: Michi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Es ist ein USB Microcontroller.

Ok, ok ;-)
Dumme Frage, dumme Antwort.

Das das ein USB-µC ist, war mir dann doch auch schon klar... Daher war
ich eigentlich mehr an den Eigenschaften interessiert. Insbesondere
welchen Geschwindigkeitsmodus der unterstützt.


Naja, Quintessenz ist, ich kenne den nicht, kann dir also leider nicht
helfen...

Autor: Marcus M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

der Chip der Firma AK-Modul-Bus ist leider eine PROM - Version, also
vergiß einfach mal Dein Vorhaben. Besorgen mußt Du Dir dafür einen
Neuen - Sorry

Der CY7C63001A ist ein 8051er, der auf ein USB-Slave-Modul via
Memorymaping zugreift. Der 8051er hat bis zu 8MHz Taktfrequenz und hat
nichts mit dem USB Overhead zu tun! Dafür ist der USB Core zuständig.
Nur die Flags werden vom 8051er via Interrupt abgearbeitet.

Gruß Marcus

PS: Ich hab für das Teil mal einen Linuxtreiber progamiert, der aber im
Moment auf dem 2.6ern etwas viel probleme macht.

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Marcus

vielleicht können wir uns über den Treiber mal austauschen. Ich ärger
mich gerade mit einem EZUSB rum ;-)

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Betr. Treiber bzw. Alternative zu ihrer Programmierung:

http://libusb.sourceforge.net/
"It's [...] a library for use by user level applications to access
USB devices regardless of OS."

Und hier ein Win32-Port:
http://libusb-win32.sourceforge.net/
"Libusb-win32 is a port of the USB library libusb  to the Windows
operating systems (Win98SE, WinME, Win2k, WinXP). The library allows
user space applications to access any USB device on Windows in a
generic way without writing any line of kernel driver code.
Features:

    * Can be used as a filter driver for existing, already installed
devices. This feature allows libusb-win32 to communicate with any
installed USB device.
    * Can be used as a normal device driver for devices for which no
driver exists (self build/developed USB hardware, etc).
    * The two methods described above can used in parallel without any
problems.
    * 100% API and functional compatible with the main libusb project.
    * Supports Bulk and Interrupt transfers.
    * Supports all Standard Device Requests (control messages)
described in chapter 9 of the USB specification.
    * Supports vendor specific control messages."

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Rufus,

ich weiß, ich weiß :)
Leider kann es keine Isochronen Transfer, was wohl an der Tatsache,
dass es im Userspace läuft mit liegen mag.

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Thomas: Verrätst Du uns, was Du interessantes baust, daß Du isochrone
Übertragung benötigst?

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Rufus,

na klar :)
Am USB sollen einige DA-Wandler betrieben werden, bei denen es wichtig
ist, dass die Ausgaben in gleichen zeitlichen Abständen kommen, deshalb
isochron ;-)

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm. Wie wär's, statt dessen die Daten mit Zeitstempeln auszuliefern?
So könnten auch mehrere Werte en bloc gesendet werden; der die
D/A-Wandler ansprechende µC muss dann halt die Zeitstempel auswerten.

Wenns nur genau zwei D/A-Wandler sind, könnte man sich auch dadurch
behelfen, daß ein Standard-USB-Audiodevice implementiert wird, dafür
muss man dann keinen Treiber schreiben ...

Autor: Thomas Burkhardt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

die Daten werden ohnehin Frameweise en bloc verschickt. Das ist
prinzipbedingt. Der Vorteil des isochronen Transfers ist, dass die
Bandbreite garantiert ist. Beim Bulk-Transfer kann es eben passieren,
dass Pakete auch mal ein Frame ausgesetzt werden. Die Auswertung von
Zeitstempeln wird daran scheitern, dass das ganze ohnehin bis an die
Grenzen des µC ausgereizt ist.

Es sind genau zwei Wandler, allerdings mit 6 Kanälen. Mag sein, dass es
5+1 Treiber für Audiogeräte gibt :) aber wo ist da der Spass?

Autor: Andi B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wahrscheinlich hat Marcus M recht mit dem PROM, sonst hät ich da ja
schon was gefunden.

Aber mit welchem IC geht sowas dann??? Wer verkauft sowas günstig und
hat noch XP Treiber dazu?

Die ModulBus Version ist für mein Vorhaben fasch programmiert und viel
viel zu langsam. Ich sende über 3 Kanäle serielle Daten an einen
Schieberegister IC (CD 4094). Data Clock Strobe. Da hängen dann LEDs
oder Relais dran. Die billigste Hardware die es gibt!

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.