STM8

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

Beim STM8 handelt es sich um die neueste 8-Bit-Controllerlinie von ST Microelectronics. Sie zeichnet sich durch schnelle Ausführungszeiten (durchschnittlich 1,6 Takte per Instruktion), 16 MByte linearem Adressraum, umfangreichen Peripherieoptionen (wie integriertem CAN-Controller) und integriertem echtem EEPROM aus.

Übersicht

  • Architektur: Akkumulatorbasierte, modifizierte Harvard-Architektur mit gemeinsamen Adressraum
  • Busbreite: Datenbus Flash 32 Bit / RAM,EEPROM 8 Bit, Adressbus 24 Bit
  • Hauptspeicher: 512 Bytes bis 6 kBytes SRAM
  • Programmspeicher: 4 bis 128 kBytes Flash
  • EEPROM: 128 Bytes bis 2 kBytes
  • Spannungsversorgung: 1,65 bis 3V (STM8L) bzw. 2,95 bis 5,5V
  • Taktfrequenz: bis 16 MHz ohne Wartezyklus (intern) bzw. bis 24 MHz mit Wartezyklus (externer Quartz)
  • Bauformen: SDIP, SOIC, TSSOP, LQFP, QFN, UQFPN, WLCSP, Unsawn Wafer.
  • Pins: 8 bis 80

Familien

  • STM8S: Standardversion
  • STM8L: Low-Power-Version
  • STM8A: Automotive Grade
  • STM8T: Touch-Sensing

Register

  • Akkumulator (A): 8 Bit, Allgemeines Arbeitsregister für logische und mathematische Operationen.
  • X Indexregister (X): 16 Bit, z.B. nutzbar als Speicheroffset oder für 16 Bit Arihmetik. Enthält bei 16/8- und bei 16/16-Division den Dividenden.
  • Y Indexregister (Y): 16 Bit, nutzbar wie X-Indexregister. Divisor bei 16/16-Division.
  • Program Counter (PC): 24 Bit, enthält Adresse des nächsten auszuführenden Befehls.
  • Stack Pointer (SP): 16 Bit, zeigt auf nächsten freien Speicherplatz im Kellerspeicher.
  • Condition Code (CC): 8 Bit, enthält die üblichen Flags (Carry, Zero, etc.) und die Interrupt Level Flags.

Peripherie

  • Clock System: Takterzeugung aus externem Quarz oder Oszillator, interner 16MHz/128kHz-RC-Oszillator.
  • Power Management: Warte-Modus, Aktiver Wartemodus mit aktiviertem internem Spannungsregler, Wartemodus mit deaktiviertem Regler, Halt-Modus.
  • Watchdog: Konfigurierbarer "Windowed-Watchdog" und vom Taktsystem unabhängiger "Independent Watchdog".
  • Timer: Flexible Timeroptionen: 8 Bit mit Prescaler, 16 Bit Capture/Compare, PWM, Komplementärausgabe,
  • ADC: Je nach Familie 10 (STM8S, STM8A) oder 12 (STM8L) Bit Auflösung, SAR, bis zu 25 Kanäle.
  • DAC: 12 Bit Auflösung, mit Output Buffer.
  • Comparator: Rail-to-Rail, interne oder externe Referenzspannung möglich.
  • I2C: Adressierbare serielle Schnittstelle mit bis zu 400kHz Geschwindigkeit, Master-, Slave- und Multimaster-fähig, unterstützt PMBus und SMBus, Hardware-CRC vorhanden.
  • SPI: Serielles Peripherie-Interface, bis zu 10 MBit/s, Polarität und Phase frei einstellbar, Hardware-CRC vorhanden.
  • U(S)ART: Full featured UART, unterstützt zusätzlich LIN 2.1 als Master und Slave, IrDA-Emulation und Smartcard-Modus
  • High Current Ports: Belastbarkeit bis zu 20mA/Pin
  • DMA: Erlaubt UART, SPI, I2C, ADC, DAC und Timern direkten Speicherzugriff
  • CAN: Geschwindigkeit bis zu 1 MBit/s, unterstützt beCAN 2.0B
  • Beeper: Ausgabe eines Buzzer-Signals mit einstellbarer Frequenz von 1, 2 oder 4 kHz.
  • LCD: Controller für LCDs mit einer Größe von bis zu 4x28 Pixel, Integrierter Stepup-Converter für Kontrastspannung.
  • UID: 96-bittige, eindeutige Identifikationsnummer
  • SWIM: Single-Wire Interface Module, erlaubt Programmierung über Eindraht-Schnittstelle.

Evaluation-Board

Weblinks