ARM STM8S103F3P6 Vývojová deska

Návod jak programovat mikrokontrolery STM8S v Arduino IDE
ARM_STM8S103F3P6_Vyvojova_deska

V našem článku se naučíš programovat mikrokontrolery ARM od STMicroelectronics z rodiny STM8S ve vývojovém prostředí Arduino IDE. Jedná se o 8bit mikrokontrolery s integrovanou EEPROM pamětí pro ukládání uživatelských dat. Jsou levnější variantou k rodině STM32.

Příprava vývojové desky

K programování desky budeš potřebovat některý z programátorů ST-Link.
Z naší nabídky například tento: ST-Link V2

Zjistili jsme, že dodávané desky mají od výrobce nahraný demo software, který po zapnutí napájení bliká integrovanou LEDkou. Bohužel výrobce přitom uzamkl mikrokontroler pro čtení a zápis. Jako první tedy bude nutné mikrokontroler odemknout.

K tomu bude potřeba nainstalovat software od STMicroelectronics – ST Visual Programmer. Stáhnout ho můžeš ze stránek výrobce: https://www.st.com/en/development-tools/stvp-stm8.html. Po stažení ho rozbal a spusť instalační soubor sttoolset_pack42.exe.

Na prvním okně klepni na tlačítko Next>.

Na dalším okně je potřeba odsouhlasit licenci. Zatrhni volbu: I accept the terms of the agreement a klepni na tlačítko Next>.

Na dalším okně není potřeba nic měnit a tudíž stačí, když klepneš na tlačítko Next>.

Jako další si můžeš vybrat, kam se software nainstaluje. Ve většině případů není potřeba měnit a tak opět stačí klepnout na tlačítko Next>.

Dále si můžeš vybrat, jestli ti má instalátor vytvořit zástupce na ploše. Přednastavená volba bude opět stačit. Klepni na tlačítko Next>.

Teď bude probíhat instalace a v průběhu bude potřeba povolit i instalaci několika ovladačů. Na všech výzvách o instalaci ovladače klepni na tlačítko Instalovat.

Po nainstalování všech potřebných komponent na posledním okně instalace klepni na tlačítko Finish.

Tím je instalace ST Visual Programmeru hotova a na ploše by se měly objevit dvě ikonky:

Nyní propoj programátor s deskou:

ProgramátorDeska
3.3V3V3
SWIMSWIM
GNDGND
RSTNRST

Zapoj programátor do USB počítače, měla by se rozsvítit LEDka PWR na desce. LEDka TEST začne blikat. Nyní můžeš spustit program ST Visual Programmer.

Na prvním okně vyber typ programátoru, programovací mód a typ mikrokontroleru. V našem případě to bude ST-LINK, SWIM a STM8S103F3. Klepni na tlačítko OK.

Nyní můžeš vyzkoušet, zda vše funguje. Klepni na ikonu Read:

Při prvním spuštění se může objevit toto chybové hlášení. Klepni na tlačítko OK, zmáčkni tlačítko RST na desce a zkus to znovu.

Objeví-li se toto okno, programátor komunikuje s mikrokontrolerem, ale mikrokontroler je uzamčen pro čtení.

Tím máš komunikaci programátoru s mikrokontrolerem otestovanou a můžeš přikročit k odemknutí mikrokontroleru.

Klepni na záložku OPTION BYTE:

Zkontroluj že je vybrána položka Read Out Protection OFF v poli ROP:

Klepni na tlačítko Program:

Tím došlo k odemknutí mikrokontroleru pro čtení a zápis.

Opět můžeš pro kontrolu načíst paměť mikrokontroleru klepnutím na tlačíko Read. Vše by mělo proběhnout bez chybového hlášení.

Tím máš vývojou desku připravenu a můžeš do ni nahrát svůj první program. ST Visual Programmer můžeš zavřít, teď ho již používat nebudeš.

Podpora mikrokontroleru v Arduino IDE

Pokud ještě nemáš nainstalováno vývojové prostředí Arduino IDE, můžeš si přečíst náš článek, jak s tímto prostředím začít: Začínáme s Arduinem

Pro instalaci podpory těchto mikrokontrolerů budeš potřebovat nainstalovat knihovnu Sduino.

Spusť Arduino IDE a v menu Soubor – Vlastnosti do seznamu Správce dalších desek URL přidej nový řádek: https://github.com/tenbaht/sduino/raw/master/package_sduino_stm8_index.json

Potom v menu Nástroje – Vývojová deska – Manažér desek zadej do horního vyhledávacího políčka stm8 a klepni na tlačítko Instalace.

Po nainstalování v menu Nástroje – Vývojová deska vyber desku STM8S103F3P6 Brakout Board.

Jako poslední je potřeba vybrat typ programátoru. V menu Nástroje – Programátor vyber ST-Link/V2.

Test funkčnosti

Tím je příprava hotová, nyní můžeš vyzkoušet, že vše funguje. K tomu účelu použij jednoduchý program, který rozbliká LED diodu na desce.

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  int i;

  for(i=0; i < 3; i++) {
    digitalWrite(LED_BUILTIN, HIGH);
    delay(100);

    digitalWrite(LED_BUILTIN, LOW);
    delay(100);
  }
  
  delay(500);
  
  for(i=0; i < 2; i++) {
    digitalWrite(LED_BUILTIN, HIGH);
    delay(500);

    digitalWrite(LED_BUILTIN, LOW);
    delay(500);
  }
}

Nahraj program do desky tlačítkem Nahrát . Po úspěšném nahrání programu do desky se program automaticky spustí a LEDka začne blikat.

To je vše! Nyní se můžeš pustit do vývoje vlastní aplikace!

Share on facebook
Facebook
Share on google
Google+
Share on twitter
Twitter
Share on linkedin
LinkedIn
Share on pinterest
Pinterest

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Nejčtenější články

Akční nabídka

Arduino UNO R3

ATmega328P, Klon

160 Kč

RobotDyn 4×3

Maticová analogová klávesnice

91,10 Kč

Arduino Gamepad

Joystick Shield

146,90 Kč