STM32 Nucleo-32

Vývojové desky Nucleo se dělí do několika kategorií, podle počtu vývodů. Nejmenšími z nich jsou Nucleo-32 osazené čipy v pouzdrech se 32 vývody. Celá nucleo deska je univerzální pro různé čipy (F031K6, F042K6, F303K8, L011K4, L031K6, L432KC). Všechny odlišnosti se realizují pomocí jumperů (propojek) a kvůli tomu je jich na desce víc než je pro daný čip potřeba. Další zmatky při orientaci na desce vznikají kvůli Arduino značení vývodů (A0 až A7 a D0 až D13). Situaci zachraňuje kartička z tvrdého papíru na níž je natištěn rozpis vývodů se správným označením (PA0, PB1 atd.). Nevím zda ST počítalo, že drtivá většina uživatelů budou arduinisté, ale z mého pohledu je značení desky naprostý propadák. Což ale nijak nesnižuje její další kvality. Tou nejzajímavější je ST-LINK/V2-1, ten se od ST-LINKu/V2 (nacházejícím se na Discovery kitech) liší v tom, že obsahuje VCP (Virtual Com Port) a umožňuje vám tak snadné spojení cílového čipu s PC skrze USB (prostě nemusíte připojovat externí USB-UART převodník). Tak jako Discovery boardy, umožňuje deska měřit spotřebu cílového čipu (skrze miniaturní jumper na spodní straně). Navíc je vybavena 5V stabilizátorem a po vhodných úpravách jumperů snese napájení až 12V. Méně obratné bastlíře také potěší zabudovaný proudový "limiter", který chrání USB rozhraní počítače proti zkratům.


Nucleo-32 F031K6

Seznam kapitol

Past !

Považuji za nutné vás hned na začátku seznámit se zákeřnou pastičkou v podobě jumperů SB16 a SB18. Nemám vůbec představu co se mohlo návrhářům honit hlavou, když se rozhodli spojovat pomocí jumperů piny STMka. Takže kit tak jak přijde z fabriky má spojené PB6 s PA6 a PB7 s PA5. Předpokládám, že něco takového nikdo z vás nepředpokládá a zvlášť když má každý z těchto čtyř pin svůj vlastní samostatný vývod na vnějším konektoru. Takže pokud si jako já, zapojíte na PA6 potenciometr a PB7 s PB6 využijete jako I2C tak se nestačíte divit. "WTF" to vystihuje asi dokonale. Takže jakmile vám kit přijde, vyhoďte tyto dvě propojky.


Past na Nuclo kitu, propojení PB6 s PA6 a PB7 s PA5 !


Odpájet SB16 a SB18 (foto z kitu STM32F303K8)

Připojení 8MHz MCO z ST-LINKu

V datasheetu k Nucleo-32 F031K6 se dočteme, že bez úprav jumperů lze jako zdroj hodin používat pouze HSI. Jinak řečeno není osazen ani externí krystal a ani není k čipu přiveden 8MHz signál z MCO vývodu ST-LINKu. Taková konfigurace najde opodstatnění v situacích kdy uzpůsobíte desku k připojení vnějšího napájení a ST-LINK necháte bez šťávy. Dokud budete kit používat výhradně s USB napájením (tedy řekněme k výukovým a testovacím účelům), vyplatí se připojit si MCO z ST-LINKu. ST-LINK totiž běží z krystalu a tudíž je 8MHz MCO kvalitním zdrojem pro časování. Jak na to napoví následující schéma (z datasheetu).


Část schematu cílového čipu (STM32F031K6)

Všimněte si že MCO lze přivést pomocí propojek SB4 a SB17 na dva rozdílné piny mikrokontroléru. Když drobně zatápete v paměti nebo prohlídnete datasheet bude vám jasné že u F031 bychom měli clock přivést na PF0. Možnost přivedení na PA0 je tu kvůli čipům řady "L". Stačí tedy propojku SB4 spojit a můžeme čip provozovat z přesného 8MHz clocku. Nezapomeňte, že propojka SB6 je spojená a tudíž je 8MHz clock přítomný i na vnějším konektoru desky. Dále si ve schematu můžete všimnou sekce s krystalem (X1, C12 a C13). Ta je na naší desce neosazená a propojky SB5 a SB7 odpojené. Nezapomínejte tedy na to že pokud to bude potřeba, máte možnost si krystal osadit. Což oceníte opět v situaci, kdy má deska běžet bez ST-LINKu.


Pro připojení MCO z ST-LINKu na kitu s F031K6 stačí propojit SB4

Externí napájení kitu

Kit je z výroby uzpůsoben k napájení z USB. Navržen je ale tak aby po jednoduché úpravě umožňoval napájení z externích zdrojů (schema). K napájení vnějším napětím slouží pin VIN, který je přiveden na stabilizátor LD1117S50. Letmým pohledem do datasheetu zjistíme, že snese maximálně napětí 15V a dropout se pohybuje okolo 1V. Prakticky to tedy znamená, že skrze VIN můžete kit napájet napětím 6-12V (a přirozeně nesmíte překročit proudový ani výkonový limit stabilizátoru). Mějte ale na paměti, že výstup 5V stabilizátoru je do kitu přiváděn přes diodu D3. Ta chrání stabilizátor před záporným předpětím v případě že se rozhodnete přivést na pin +5V vlastní napájení. Její existence vám bude komplikovat práci, úbytek na této diodě (závislý na odběru) sníží "5V" napětí. Tím odpadá možnost připojovat k 5V například DAC převodníky jejichž reference je opřená o napájení a podobně. Kdo by chtěl 5V stabilizátor využít, může diodu přemostit propojkou. Stejná situace s "nekvalitní" 5V hladinou nastane i při napájení z USB. To je také vedeno přes diodu (D3). Ta slouží k tomu aby se 5V napětí z externího zdroje nedostávalo zpět do USB. Obě diody jsou schottkyho, takže úbytky nejsou tak smrtící (typicky okolo 0.2V).

Napájení kitu lze přivést přímo na pin +5V. To je vedeno na stabilizátor LD39050PU33. Díky jeho nízkému úbytku (typicky 50mV při 0.1A), máte vcelku slušný rozsah 3.35 až 5.5V při němž je zajištěna jistá stabilita 3.3V napětí pro čip (a tedy i AD a DA převodník). Můžete tedy připojit kit třeba přímo k lithiovému akumulátoru a počítat s tím, že po většinu jeho provozního cyklu budete mít k dispozici stabilní napětí. Na pin +3V3 by jste žádné napájení přivádět neměli, neboť dle datasheetu 3V stabilizátor nesnese záporné předpětí z výstupu na vstup. Pokud i přes to budete mít potřebu napájet čip vlastním napětím (například kvůli testům provozu na 2.5V), využijte jumper pro měření proudu (JP1).

Každopádně při jakémkoli externím napájení bude ST-LINK bez energie (je napájen jen z USB). ST-LINK je připojen na reset našeho čipu a udržuje ho v resetu ! Je tedy nutné reset od ST-LINKu odpojit odpájení SB9 (viz obrázek výše).


Při externím napájení odpojte reset od ST-LINKu. Pro stabilních 5V zvažte přemostění diody D3.

Odkazy a reference

Home
V1.00 2015
By Michal Dudka (m.dudka@seznam.cz)