Vorteile des Cypress-Chips

Das zentrale Bauelement ist sicherlich der Chip CY8C5888AXI-LP096 von Cypress, der einen 32-bit ARM-Cortex-M3-Core plus DMA-Controller und digitalem Signalprozessor mit einer Taktrate von bis zu 80 MHz beinhaltet. Es handelt sich dabei um den gleichen Core wie beim SAM-Chip von Atmel, der beim Arduino Due zum Einsatz kommt. Gegenüber dem Chip von Atmel bietet das Exemplar von Cypress neben Dem eigentlichen Rechenkern eine Menge integrierter und konfigurierbarer analoger und digitaler Peripherie sowie Speicher. Die leistungsfähigen graphischen Konfigurations-Tools der IDE erlauben per drag & drop die Konfiguration der gut 100 digitalen und analogen Peripheriefunktionen im PSoC-Chip. Alle Verbindungen von Funktionen und I/O-Pins werden per Software vorgenommen. Im Prinzip ist das wie wenn man 100 Peripheriefunktionen auf einem Steckbrett hätte, doch statt der Verkabelung mit Drahtbrücken etc. kann man das dank dem PSoC Creator schön, bequem und übersichtlich in Software erledigen. Die an Signale der Hardware-Einheiten gekoppelten Pin-Namen lassen sich über C-Code ansprechen, der mit dem PSoC Creator entwickelt und debugged wird. Die Hardware ist also komplett rekonfigurierbar und wiederverwendbar. Sodass man andere Applikationen realisieren kann, ohne zuerst mit dem Lötkolben aktiv werden oder Drahtbrücken bzw. Jumper ändern muss.

Das Board ist zudem mit einem weiteren Controller bestückt, der für das Debugging und dem Programmieren des Haupt-Chips via PSoC Creator zuständig ist. Dabei handelt es sich um den Chip CY8C5868LTI LP039 – ebenfalls ein PSoC – doch mit einem kleineren 68-poligen QFN-Gehäuse und dementsprechend weniger I/Os.

Erster Eindruck

Der beste Weg, sich mit einer neuen Entwicklungsumgebung wie dem PSoC Creator anzufreunden, besteht darin, mit einem ausgetesteten Beispielprogramm zu experimentieren. Beim PSoC Creator sind beeindruckend viele Beispiele dabei, man muss nur auf File beim Header-Menü klicken und nach unten bis zum Beispiel WaveDAC8_Example scrollen. Nun ein Klick auf Create Projekt und schon wird das Projekt installiert und man bekommt ein PDF von Cypress mit einer passenden Beschreibung zu sehen. Schließt man das, sieht man das Fenster .cydwr des PSoC Creator, in dem Chip-Layout und Pin-Belegung angezeigt wird. Die Teile-Nummer wird wohl der Controller des Typs CY8C3866AXI sein, der als Standard geladen wird. Nun geht man zu Project im Header-Menü und scrollt runter zu Device Selector und klickt da auf Series um CY8C58LP auszuwählen und den Rest zu deaktivieren. Jetzt scrollt man nochmals runter und wählt den Chip CY8C5888AXI-LP096 aus. Dieser Schritt müsste wieder zurück zum Fenster .cydwr führen, das jetzt die korrekte Bauteilebezeichnung anzeigen sollte. In diesem Beispiel wird nur ein einziger I/O-Pin verwendet. Dieser erscheint rechts in der Liste mit den „port pin allocations“.
Jetzt auf build klicken und das Board programmieren. Wenn dieser Prozess abgeschlossen ist, kann man mit einem Oszilloskop untersuchen, was sich am Ausgangs-Pin P0.[0] so tut.



Nun lohnt sich ein Blick auf das Fenster .cysch, das die verwendeten Komponenten zeigt, die dieses Signal generieren. Man ignoriere das Bild des Oszilloskops, denn es dient nur der Illustration und ist funktionslos. Jetzt kann man die Maus über die Komponenten „hovern“ und auf sie klicken, um dann via Configure… deren Eigenschaften zu inspizieren:

 

Hier kann man Änderungen vornehmen und die neue Schaltung „neu aufbauen“, sodass sich die Hardware dann so verhält, wie man das neu festgelegt hat: