Rozšiřující moduly
Last updated
Last updated
Na se připojují v této kapitole rozebrané rozšiřující moduly (shieldy). Smyslem rozšiřujících jednotek je přinést konkrétní funkcionalitu bez nutnosti vyvíjet vlastní hardware. Jedná se o předpřipravené desky, které se pouze připojí na základní jednotky a bez dodatečné kabeléže nebo drátování na nepájivém poli lze vyzkoušet interakci s reálným světem. Dobře slouží pro rychlé vytvoření ukázek na nejčastěji řešené aplikace jako je měření teploty a nebo spínání relé. Lze s nimi rychle bez větší námahy postavit funkční prototyp. Těmto jednotkám se alternativně říká shieldy.
podporující připojení shieldů musí mít integrovaný tzv. (např. ).
Veškeré potřebné informace včetně ukázkového software jsou k jednotlivým modulům dostupné v následujících odkazech:
Kromě vstupně výstupních pinů jsou na konektorech dostupné i napájecí vývody a signály user tlačítka a tlačítka reset. Jmenovitě jde o signály 3V3, USR, GND, VBUS, VBAT a RST (obrázek níže).
3V3 - výstupní napájecí pin s napětím 3.3 V pro napájení externích periferií
USR - signál user tlačítka (emulace user tlačítka z externího zařízení)
GND - nulový potenciál jednotky, referenční nulový potenciál pro všechny ostatní signály
RST - resetovací vstup mikrokontroléru jednotky
Popis jednotlivých vstupů a výstupů je závislý na typu základní jednotky - různé základní jednotky se mohou mírně odlišovat v dostupných pinech/funkcích (tzn. pin X05 může být hardwarově připojen na různý pin mikrokontroléru na různých základních jednotkách). Přesto X konektor definuje např. dostupný UART vždy na pinech X09 a X11 a I2C sběrnici vždy dostupnou na vývodech X06 a X07.
Pin
Funkce
Pin
Funkce
X00
X10
SPI SCK
X01
X11
USART TX
X02
X12
SPI MISO
X03
X13
CAN TX
X04
X14
SPI MOSI
X05
X15
CAN RX
X06
I2C SCL
3V3
X07
I2C SDA
USR
X08
SPI NSS
GND
X09
USART RX
VBUS
Oproti tomu Y konektor není fyzicky vyveden na žádný konektor, ale vývody jsou dostupné pouze na hranách základních jednotek ve frézovaných prokovech. Vývody slouží pro další rozšíření vstupů a výstupů. Rozteč a velikosti prokovů jsou shodné s X konektorem.
#TODO Pro Y konektor platí podobné věci jako výše popsané pro X.
Vlevo je na nákresu vidět umístění X konektoru a dále jsou na shieldech dva resp. čtyři otvory pro M3 šrouby v závislosti na velikosti shieldu.
V případě elektrické kompatibility shieldů je níže dostupná tabulka kompatibility, kde je kompatibilita patrná.
Ke všem rozšiřujícím modulům jsou vytvořeny ukázkové příklady, které je možné nalézt na stránce příslušných modulů. V příkladech je zahrnuto správné mapování jednotlivých vývodů - stačí tedy pouze připojit modul, zkompilovat a nahrát kód do příslušného zařízení.
Fyzicky jsou vstupy a výstupy základních jednotek rozděleny do dvou skupin, tzn. na X konektor a Y konektor. Tyto konektory obsahují vybrané na základní jednotce dostupné periferie (UART, I2C, PWM, ...), napájecí signály a nebo signály pro či reset.
VBUS - napájecí výstup určený pro výstup napájecího napětí ze základní jednotky, více v sekci s napájením pro danou (konkrétně pro IODAG3E v )
VBAT - vstupní napájení do základní jednotky
Základní jednotky podporující připojení shieldů musí mít integrovaný tzv. X konektor (např. ). Jde o standardní 20 pinový header s roztečí 2.54mm a rozložením 2x10 pinů (samice). Do tohoto headeru se shora připojují všechny shieldy. Kromě toho jsou vývody dostupné na hranách základních jednotek ve frézovaných prokovech. Rozteč prokovů je standardních 1.27mm. Rozšiřující moduly mají stejný typ konektoru včetně rozložení vývodů (samec).
V tabulce níže je uveden seznam dostupných periferií na každé bez ohledu na její typ. Ukázka konkrétního zapojení vývodů na mikrokontrolér pro jednotku IODAG3E .
Shieldy existují ve dvou velikostech: plná a poloviční. Shield plné velikost má rozměry totožné jako základní jednotka . Poloviční shield je zcela shodný s plným shieldem pouze s tím rozdílem, že má poloviční délku. Rozměrový nákres je níže (v milimetrech).
Každý z shieldů využivá určité datové piny z a zároveň žádný shield nevyužívá všechny najednou. Je tedy možné použít více shieldů najednou. V tétou sovislosti lze mluvit o kompatibilitě shiledů elektrické a mechanické.
Obecně lze shieldy na sebe skládat jako stavebnici a zapojovat jeden do druhého. Může se však stát, že např. a na sebe dát nejdou. Nejdou na sebe dát z důvodu, že oba shieldy pro svou činnost potřebují volný prostor nad shieldem. Obdobně jiné shieldy mohou mít vysoké svorkovnice, které zabrání dalšímu skládání shieldů na sebe.
Elektrická kompatibilita se odvíjí od sdílení pinů X konektoru mezi jednotlivými shieldy. Jinými slovy jde o to, že jeden pin mohou využívat dva důzné shieldy a takové shieldy nebude možné použít najednou. Teoreticky to možné být může, ale přinese to komplikace ve firmware. Pro jednoduchost však mluvíme o tom, že shieldy není možné použít najednou, tzn. shieldy nejsou spolu kompatibilní.