STM8

L'STM8 è un microcontroller a 8-bit prodotto da STMicroelectronics.

Caratteristiche

[modifica | modifica wikitesto]

Gli STM8 sono microcontroller a 8-bit con architettura Harvard e pipeline a più stadi, dotati delle periferiche di base per la comunicazione seriale (I²C, SPI, UART), supporto agli interrupt annidati, convertitori A/D, timer a 8 e 16-bit. L'STM8S003F3 ad esempio dispone di tutte le suddette periferiche ed è caratterizzato da 8KB di flash, 1KB di RAM e 128 byte di EEPROM[1].

Quasi tutti i microcontroller della linea STM8 dispongono di meno di 64KB di flash (indirizzarne di più, per quanto possibile, risulta complesso e richiede l'utilizzo di speciali istruzioni).

L'STM8 ha alcune somiglianze al precedente ST7, ma è più idoneo ad essere programmato in C grazie alla possibilità di indirizzare in maniera relativa lo stack pointer. Vi è inoltre un accumulatore a 8-bit (A) e dei registri indice a 16-bit (X e Y).

Gli STM8 sono disponibili in numerose fasce, sia di prezzo (es. "Value Line") che di caratteristiche:

  • STM8S, famiglia mainstream (ossia standard, per applicazioni generiche)
  • STM8L, a basso consumo
  • STM8AF, per il mercato automotive
  • STM8AL, per il mercato automotive, a basso consumo
  • STM8T, per interfacce touch
  • STLUX, specifica per il controllo dell'illuminazione (LUX, appunto)
  • STNRG, specifica per il controllo PWM in applicazioni di potenza
  • SPLNB, specifica per il controllo degli LNB sulle parabole satellitari[2]

Le famiglie per applicazioni specifiche, come quelle per l'automotive o per il controllo di potenza, sono in genere elaborazioni della famiglia di base con l'aggiunta di periferiche specifiche (es. rivelatori di zero-crossing per la corrente alternata, macchine a stati per la gestione dell'illuminazione tramite protocollo DALI, etc...)

L'STM8 è supportato da una vasta serie di IDE e compilatori commerciali (IAR, Cosmic, Raisonance, STVD) disponibili solitamente in versioni a pagamento o gratuite ma con limite sulla dimensione del codice[3]. Vi è inoltre supporto da parte del compilatore open-source SDCC.

Altri progetti

[modifica | modifica wikitesto]

Collegamenti esterni

[modifica | modifica wikitesto]
  1. ^ Datasheet dell'STM8S003F3 (PDF), su st.com.
  2. ^ STM8SPLNB1 DiSEqC slave microcontroller for SaTCR based LNBs and switchers - STMicroelectronics, su st.com. URL consultato il 28 aprile 2016.
  3. ^ STM8 Software Development Tools - STMicroelectronics, su st.com. URL consultato il 28 aprile 2016.