Zwei Motoren mit einem Chip steuern

Mit dem Mikrocontroller SH7285 von Renesas können zwei Antriebe gleichzeitig gesteuert werden. Der Chip eignet sich für Servomotoren oder Frequenzumrichter.

Der Controller hat 768 Kbyte Flash-Speicher und ist mit 100 MHz getaktet. Als Basis dient der SH-2A-Core.

Der SH7285 hat eine superskalare Architektur und besitzt zwei Pipeline-Blöcke zur Befehlsausführung. Damit können die Codes in bis zu doppelter Taktfrequenz der CPU verarbeitet werden. Durch die Harvard-Architektur kommt es außerdem nicht zu Konflikten zwischen den Bussen. Optional gibt es eine Floating Point Unit (FPU), mit der zusätzlich zu den beiden Pipeline-Blöcken auch Gleitkommaberechnungen separat verarbeitet werden können.

Die 19 Register der CPU werden im Falle eines Interrupts nicht auf dem Stack gespeichert. Sie sind in Form von 15 festen Registersätzen vorhanden. Dadurch kann eine Interrupt-Subroutine auf einen zweiten Registersatz zurückzugreifen und die bisherigen Register so belassen, dass sie nach dem Ende der Interrupt-Subroutine umgehend zur Verfügung stehen. Die Registerinhalte müssen nicht auf den Stack gelegt und von dort zurückgeholt werden, was den Ein- und Rücksprung aus der Interrupt-Subroutine beschleunigt. Die Antwortzeit auf eine Unterbrechungsanforderung (Interrupt Request – IRQ) ist dadurch genauso schnell wie eine einfache Verzweigung.

Der SH7285 hat außerdem eine MTU2-Timer-Unit mit sechs 16-bit-Timer-Kanälen und einer Dreiphasen-PWM-Funktionalität zur Motoransteuerung.

Der SH7285 hat außerdem zwei A/D-Wandler mit vier Kanälen, einer Auflösung von 12 bit und einer Umwandlungszeit von 1 µs. Jeder A/D-Wandler kann mit der MTU2 mit einer zusätzlich definierten Verzögerungszeit getriggert werden.

Als Peripheriefunktionen bietet der SH7285 ein USB 2.0-Modul, fünf SCI-Kanäle, einen SSU-Kanal (Synchronous Serial Communication Unit) und einen IIC-Kanal.

Den SH7285 gibt es in einer Version mit 32 Kbyte oder 24 Kbyte RAM. Er  kann mit 5 V oder 3,3 V betrieben werden.