ST7: Unterschied zwischen den Versionen

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche
 
(13 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 3: Zeile 3:
===Features===
===Features===


* '''Architektur''': Akkumulatorarchitektur, Gemeinsamter Code/Datenadressraum (Von-Neumann)
* '''Architektur''': Akkumulatorarchitektur, Gemeinsamer Code/Datenadressraum (Von-Neumann)
* '''Busbreite''': Datenbus 8 Bit, Adressbus 16 Bit
* '''Busbreite''': Datenbus 8 Bit, Adressbus 16 Bit
* '''Hauptspeicher''': 128 bis 2048 Bytes SRAM
* '''Hauptspeicher''': 128 bis 2048 Bytes SRAM
Zeile 9: Zeile 9:
* '''Spannungsversorgung''': 2,4 bis 5,5V
* '''Spannungsversorgung''': 2,4 bis 5,5V
* '''Taktfrequenz''': bis 16MHz
* '''Taktfrequenz''': bis 16MHz
* '''Bauformen''': SDIP, SOIC, LQFP, TQFP, QFN
* '''Bauformen''': DIP, SDIP, SOIC, LQFP, TQFP, QFN
* '''Pins''': 8 bis 80
* '''Pins''': 8 bis 80


Zeile 26: Zeile 26:
* '''CAN''': Aktives und passives CAN2.0B
* '''CAN''': Aktives und passives CAN2.0B
* '''Motor Control (MC)''': 3-phasige PWM, Back-EMF-Erkennung und Ansteuereinheit für sensorlose BLDCs.
* '''Motor Control (MC)''': 3-phasige PWM, Back-EMF-Erkennung und Ansteuereinheit für sensorlose BLDCs.
* '''SCR''': Version zur Verwendung in Lesegeräten für intelligente Prozessorkarten (Smartrcards).
* '''SCR''': Version zur Verwendung in Lesegeräten für intelligente Prozessorkarten (Smartcards).


===Interrupts===
===Interrupts===


16 Vektoren, priorisiert.
16 Vektoren, manche Modelle sind in 3 Ebenen priorisierbar.


* '''Externe Interrupts''': Auf steigende oder fallende Flanke eines interruptfähigen Pins.
* '''Externe Interrupts''': Auf steigende oder fallende Flanke eines interruptfähigen Pins.
Zeile 45: Zeile 45:
===Input/Output===
===Input/Output===


Die Ein- und Ausgabpins der Reihe ST7 können einzeln als Push-Pull- oder Open-Drain-Pins konfiguriert werden. Es ist möglich, interne Pull-Up-Widerstände zu aktivieren. High-Current-Pins vorhanden.
Die Ein- und Ausgabpins der Reihe ST7 können einzeln als Push-Pull- oder Open-Drain-Pins konfiguriert werden. Es ist möglich, interne Pull-Up-Widerstände zu aktivieren. High-Current-Pins vorhanden. Die Programmierung der Ein- und Ausgänge erfolgt über die Register Data Direction Register (DDR) und Option Register (OR).  Das DDR entscheidet dabei darüber, ob es sich um einen Ein- oder Ausgang handelt, das OR dient zur Konfiguration von Open Drain, Push-Pull, Pull-Ups, etc.
 
===Programmierung===
 
Die Programmierung der Bausteine erfolgt mittels des offenen ST-Protokolls '''In-Circuit Communication (ICC)'''. Dazu gibt es von Raisonance das Programmier- und Debuggerät '''RLINK''', welches via USB an den Computer angebunden wird. Die Verbindung zum Baustein erfolgt dabei über mindestens vier Signale: Reset, GND, ICCCLK und ICCDATA. Darüber hinaus kann RLINK dem Controller auch Versorgungsspannung und Oszillatortakt bereitstellen. RLINK unterstützt die Programmierung aller ICC-Kompatiblen Bausteine, das sind alle ST7-Familienmitglieder (auch ST7FLITE, ST7FOX, etc.) '''außer''':
 
* ST7x'''C'''xxx - Diese müssen über das ältere ICP-Verfahren programmiert werden.
* ST7x'''T'''xxx - Dies sind die OTP-Typen.
* ST7x'''E'''xxx - Diese Typen besitzen einen UV-löschbaren EPROM.
 
===Verweise===
 
* [http://www.st.com/mcu/inchtml-pages-st7.html ST-Microelectronics: Hauptseite zum ST7]
* [http://www.st.com/stonline/stappl/st/com/selector/index.html#querycriteria=RNP139=109 Parametrische Suche ST7]
* [http://www.st.com/mcdfiles/st7ASMqkref.pdf ST7 Assembler Quick Reference Guide]
* [http://www.st.com/stonline/products/literature/pm/4020.pdf Programming Manual]
* [http://www.raisonance.com/~rlink-standard__microcontrollers__product~product__T017:4co5omvnccj4.html Raisonance: Programmiergerät RLINK]
 
 
[[Kategorie:Mikrocontroller]]

Aktuelle Version vom 21. November 2009, 17:39 Uhr

Bei der Familie ST7 handelt es sich um eine 8-Bit-Controllerlinie von ST Microelectronics. Die Serie ist besonders im industriellen Umfeld und in den Bereichen Radio und TV beliebt. Es handelt sich dabei um eine typische Akkumulator-orientierte Architektur mit einem kleinen aber effektiven Befehlssatz. Ältere Semester erwartet ein modernisiertes 6502-Pendant mit anderen Befehlsbezeichnungen, aber mit Schmankerln wie RSP oder JRF.

Features

  • Architektur: Akkumulatorarchitektur, Gemeinsamer Code/Datenadressraum (Von-Neumann)
  • Busbreite: Datenbus 8 Bit, Adressbus 16 Bit
  • Hauptspeicher: 128 bis 2048 Bytes SRAM
  • Programmspeicher: 1 bis 60 kBytes Flash
  • Spannungsversorgung: 2,4 bis 5,5V
  • Taktfrequenz: bis 16MHz
  • Bauformen: DIP, SDIP, SOIC, LQFP, TQFP, QFN
  • Pins: 8 bis 80

Peripherie

  • Low Voltage Detector (LVD): Löst bei Unterschreitung einer Versorgungsspannungs-Schwelle einen Reset aus.
  • Multi-Oscillator (MO): Erlaubt Taktversorgung durch externen Oszillator, Quarz, externen oder internen RC-Oszillator.
  • Clock Security System (CSS): Filter Taktspitzen und erlaubt die Ausführung von Operationen bei Ausfall des Taktsystems.
  • Watchdog Timer (WDT): Einstellbarer Timer, der einen Reset auslöst, falls er nicht zeitgerecht zurückgesetzt wird.
  • Timer: 16 Bit breit, mit Möglichkeit der PWM-Ausgabe.
  • SPI: Serielle Periphere Schnittstelle, mit Unterstützung aller vier Modi. (CPOL und CPHA frei einstellbar).
  • I²C: Adressierbare serielle Schnittstelle, 400kHz, Master und Slave, Adressen frei programmierbar. Multiple Adressen möglich.
  • ADC: Analog-Digital-Konverter, je nach Ausführung 8 oder 10 Bit Auflösung, mehrere Kanäle, schnelles SAR.
  • USB: Low-, Full- und High-Speed erhältlich.
  • DiSEqC: DiSEqC-Decoder zur Steuerung von TV-Satellitenausrüstung.
  • CAN: Aktives und passives CAN2.0B
  • Motor Control (MC): 3-phasige PWM, Back-EMF-Erkennung und Ansteuereinheit für sensorlose BLDCs.
  • SCR: Version zur Verwendung in Lesegeräten für intelligente Prozessorkarten (Smartcards).

Interrupts

16 Vektoren, manche Modelle sind in 3 Ebenen priorisierbar.

  • Externe Interrupts: Auf steigende oder fallende Flanke eines interruptfähigen Pins.
  • Periphere Interrupts: Timer, CSS, SPI, I²C, etc.
  • Softwareinterrupts.

Power Saving Modes

  • Normaler Modus (RUN): Energiesparfunktion deaktiviert, CPU läuft mit vollem Systemtakt (=f_osc/2).
  • Langsamer Modus (SLOW): Erlaubt Division des Systemtakts durch 2,4,8 oder 16.
  • Warte-Modus (WAIT): Peripherie bleibt aktiv, CPU wartet auf Interrupt oder Reset.
  • Halte-Modus (HALT): Peripherie und Oszillator Deaktiviert, CPU wartet auf Interrupt oder Reset.

Input/Output

Die Ein- und Ausgabpins der Reihe ST7 können einzeln als Push-Pull- oder Open-Drain-Pins konfiguriert werden. Es ist möglich, interne Pull-Up-Widerstände zu aktivieren. High-Current-Pins vorhanden. Die Programmierung der Ein- und Ausgänge erfolgt über die Register Data Direction Register (DDR) und Option Register (OR). Das DDR entscheidet dabei darüber, ob es sich um einen Ein- oder Ausgang handelt, das OR dient zur Konfiguration von Open Drain, Push-Pull, Pull-Ups, etc.

Programmierung

Die Programmierung der Bausteine erfolgt mittels des offenen ST-Protokolls In-Circuit Communication (ICC). Dazu gibt es von Raisonance das Programmier- und Debuggerät RLINK, welches via USB an den Computer angebunden wird. Die Verbindung zum Baustein erfolgt dabei über mindestens vier Signale: Reset, GND, ICCCLK und ICCDATA. Darüber hinaus kann RLINK dem Controller auch Versorgungsspannung und Oszillatortakt bereitstellen. RLINK unterstützt die Programmierung aller ICC-Kompatiblen Bausteine, das sind alle ST7-Familienmitglieder (auch ST7FLITE, ST7FOX, etc.) außer:

  • ST7xCxxx - Diese müssen über das ältere ICP-Verfahren programmiert werden.
  • ST7xTxxx - Dies sind die OTP-Typen.
  • ST7xExxx - Diese Typen besitzen einen UV-löschbaren EPROM.

Verweise