Bezdrátový přenos s IQRF: přizpůsobení chování transceiveru

Ivona Spurná 1. 6. 2016

Transceivery IQRF zajišťují základní funkčnost samy o sobě již s vlastní programovou výbavou. Pokud je třeba více přizpůsobit jejich funkčnost, lze k tomu použít Custom DPA Handler.

Custom DPA Handler je volitelná programová nadstavba, pomocí které lze efektivně upravit chování transceiveru. V tomto dílu si ukážeme první z mnoha případů využití.

Custom DPA Handler

Jestliže je potřeba přizpůsobit chování a funkčnost transceiveru nad rámec, který poskytuje HWP (hardware profile) spolu s operačním systémem, je možno k tomuto účelu použít Custom DPA Handler. Jedná se o programovou nadstavbu psanou v jazyce C. Vytvořený program se následně kompiluje (vytvoří se HEX soubor) a nahraje obvyklým způsobem do transceiveru.

Custom DPA Handler umožňuje přistupovat k nestandardním periferiím nebo přizpůsobit chování standardních perfiferií. Tímto způsobem můžete například generovat PWM, odečítat hodnoty z externích čidel nebo ADC. Využití se najde mnoho a vycházejí z potřeb, požadavků a kreativy tvůrce.

K dispozici je poměrně velká sada již vytvořených programů Custom DPA Handler. Najdete je na webu technologie IQRF. Lze je buď rovnou využít nebo podle potřeby upravit.

Ukázka generování PWM

Co je PWM

Zjednodušeně řečeno – PWM je pulsně šířková modulace analogového signálu pomocí dvouhodnotového signálu, k čemuž může sloužit např. napětí, proud nebo světelné pulsy. Signál je zakódován pomocí stavů zapnuto a vypnuto. Poměr mezi těmito stavy se nazývá střída. Může nabývat hodnot mezi 0 % – 100 %, kde 0 % znamená vypnuto a 100 % znamená zapnuto. Pomocí PWM je možno řídit například otáčky stejnosměrného motoru nebo jas světla.

Jak generovat PWM

Pro jednoduchost – ať už z pohledu pořízeného hardware, tak i z pohledu zapojení – bylo v této ukázce zvoleno řídit pomocí PWM jas LED. Pro vyzkoušení je potřeba mít k dispozici funkční síť IQRF, tj. mít v ní jeden Koordinátor a aspoň jeden Nod, v němž bude generování PWM probíhat. K tomuto Nodu bude připojeno zařízení, v němž se bude pomocí PWM něco řídit (zde bude pomocí PWM měněn jas LED).

Pozn.: O tom, jak z transceiveru udělat Koordinátor nebo Nod, bylo už pojednáno v minulých dílech, stejně tak jako o vytvoření funkční sítě a jejím otestování.

Pro generování PWM pracujte se souborem CustomDpaHandler-UserPeripheral-PWM.c, který najdete v balíčku Startup package. Tento soubor v aplikaci IQRF IDE importujte do sekce Source. Můžete v něm provést případné změny a následně jej zkompilujte do HEX souboru. Tím si připravíte soubor vhodný pro nahrání do Nodu. Pokud nechcete žádné programové úpravy dělat, můžete rovnou využít již připravený zkompilovaný HEX soubor, ten importovat do sekce Output HEX a následně nahrát do Nodu. Zdrojové soubory i jejich kompilované varianty najdete v balíčku Startup Package připravené.

V konfiguraci Nodu je nutné povolit použití Custom DPA Handleru (záložka HWP). Jinak by k jeho využití i přes jeho přítomnost v Nodu nedocházelo.

Proto, aby příslušný transceiver generoval PWM, je třeba mu zaslat na příslušnou periferii potřebná data. Protože generování PWM zajišťuje příslušný Custom DPA Handler, je potřeba v souladu s kódem volit a zasílat správná data.

Ve zdrojového kódu se lze dočíst, že očekávaná data je třeba zasílat na první uživatelskou periferii (PNUM 0×20) a příkaz příslušející této periferii musí být nastaven na 0×00 (PCMD 0×00). Dále jsou očekávána data ovlivňující nastavení tří parametrů – předřadič (prescaler), frekvence (period), a střída (duty). Při testování aplikace můžete zadat tato data v terminálu do políčka PDATA (např. PDATA 0×00.FF.80). Poslední hodnota v rozsahu 0×00 až 0×FF mění hodnotu střídy a s tím i hodnotu jasu připojené LED. Při zaslané hodnotě střídy 0×00 nebude LED svítit, naopak při zaslané hodnotě 0×FF bude svítit naplno.

Pokud tedy chcete zaslat data na Nod s logickou adresou 0×0001, bude zpráva vypadat následovně: 00.01.20.00.FF.FF.00.FF.80.

Při vývoji aplikace je často potřeba prostudovat elektrotechnická schémata všech komponent, které se při daném příkladu používají. Obvykle zde najdete popsánu kompletní funkčnost daného zařízení, vstupy, výstupy, označení…

V tomto příkladu je využit transceiver, jehož podrobný popis najdete v jeho datasheetu a dále zařízení DK-EVAL-04, jehož popis je dostupný na IQRF.org.

PWM výstup je na transceiveru propojen s pinem C5, a v zařízení DK-EVAL-04, do kterého je transceiver zapojen, je tento pin vyveden do zdířky označené C5. Pokud pomocí PWM řídíme jas LED, zapojíme jeden konektor LED do zdířky označené C5 a druhý konektor do zdířky GND (ground, uzemnění).

widgety

Pro zjednodušení orientace, kam piny na vývojovém vybavení vedou, existují připravené popisky a polepky, můžete je najít buď přímo v technických dokumentech daného zařízení na webu technologie www.iqrf.org nebo se o nich zmiňují i vývojáři publikující na webu doitwireless.com.

V příštím díle si ukážeme, jakým způsobem lze číst data z externího teplotního čidla Dallas, hodnoty z externího čidla osvitu (fotorezistor) či hodnoty napětí pomocí potenciometru.

Našli jste v článku chybu?
Lupa.cz: Patička e-mailu závazná jako vlastnoruční podpis?

Patička e-mailu závazná jako vlastnoruční podpis?

120na80.cz: Co je padesátkrát sladší než cukr?

Co je padesátkrát sladší než cukr?

Root.cz: Hořící telefon Samsung Note 7 zapálil auto

Hořící telefon Samsung Note 7 zapálil auto

Vitalia.cz: Test dětských svačinek: Tyhle ne!

Test dětských svačinek: Tyhle ne!

DigiZone.cz: Rapl: seriál, který vás smíří s ČT

Rapl: seriál, který vás smíří s ČT

Vitalia.cz: 5 chyb, které děláme při skladování potravin

5 chyb, které děláme při skladování potravin

Podnikatel.cz: Nemá dluhy? Zjistíte to na poště

Nemá dluhy? Zjistíte to na poště

DigiZone.cz: Parlamentní listy: kde končí PR...

Parlamentní listy: kde končí PR...

Vitalia.cz: Tohle jsou nejlepší česká piva podle odborníků

Tohle jsou nejlepší česká piva podle odborníků

Vitalia.cz: dTest odhalil ten nejlepší kečup

dTest odhalil ten nejlepší kečup

Lupa.cz: Proč jsou firemní počítače pomalé?

Proč jsou firemní počítače pomalé?

Vitalia.cz: Muž, který miluje příliš. Ženám neimponuje

Muž, který miluje příliš. Ženám neimponuje

Vitalia.cz: Tesco nabízí desítky tun jídla zdarma

Tesco nabízí desítky tun jídla zdarma

Podnikatel.cz: Letáky? Lidi zuří, ale ony stále fungují

Letáky? Lidi zuří, ale ony stále fungují

DigiZone.cz: Digi Slovakia zařazuje stanice SPI

Digi Slovakia zařazuje stanice SPI

Lupa.cz: Jak se prodává firma za miliardu?

Jak se prodává firma za miliardu?

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Lupa.cz: Jak levné procesory změnily svět?

Jak levné procesory změnily svět?

Podnikatel.cz: ČSSZ posílá přehled o důchodovém kontě

ČSSZ posílá přehled o důchodovém kontě

DigiZone.cz: Technisat připravuje trojici DAB

Technisat připravuje trojici DAB