wtorek, 30 października 2018

Jak wyświetlić kolorowy obrazek na wyświetlaczu 1.8 TFT ILI9163.

Ponieważ udało mi się opanować konwersję kolorów z RGB888 do RGB565  i jej adaptację na wyświetlaczu ILI9193. Niniejszym czynię wpis, w którym pokażę drogę jaką trzeba przebyć od pobrania dowolnego obrazka z internetu do jego wyświetlenia na kolorowym wyświetlaczu TFT. Motywem przewodnim , który zostanie wyświetlony będzie zamieszczony obok komiksowy obrazek z dwoma znanymi Herosami. Zobaczymy jak nasz wyświetlacz poradzi sobie z tym obrazkiem i paletą barw. Czy choć trochę wyświetlony obrazek będzie przypominał pierwowzór ?? Zapraszam do zabawy.

niedziela, 28 października 2018

Praca z rejestrami w MCU firmy Silicon Labs - EFM32TG11

W tym krótkim artykule zerkniemy jak wyglądają podstawowe operacje na rejestrach czyli ustawianie i zerowanie bitów/pól bitowych. W tym zakresie posłużymy się  dokumentem przygotowanym przez  Silicon Labs UM002 .Dokument ten to krótka retrospektywa języka C. Zachęcam aby zapoznać się z nim.. Zagadnienia , które poruszymy w artykule będą dotyczyć tzw "natywnego" programowania MCU z rdzeniem ARM czyli w oparciu o zapis bezpośredni do rejestrów.

Simplicity Studio 4 firmy Silicon Labs - Import projektu

Ponieważ eksportowanie i importowanie projektów w środowisku Simplicity Studio 4 firmy Silicon Labs jest w/g mnie trochę ułomne i można tutaj napotkać delikatne problemy. Dlatego pokażę prostą i skuteczną metodę archiwizowania projektów i potem importowania do środowiska.






piątek, 26 października 2018

ILI9163 = ST7735 kolorowy wyświetlacz LCD - biblioteka dla EFM32TG11 firmy Silicon Labs

Na mojej płytce developerskiej dla 32-bitowego MCU z rdzeniem Cortex M0+ EFM32TG11 firmy Silicon Labs, osadzony jest kolorowy wyświetlacz LCD o rozdzielczości 128x160 i przekątnej ekranu 1,8" z gniazdem SD ,oparty na sterowniku ILI9163 Tajwańskiej firmy ILITEK. Krótkiego wpisu dokonałem o nim w tym artykule : artykuł Dysponujemy w związku z tym  gotową biblioteką, którą trzeba tylko przerobić dla naszego sympatycznego Cortexika . Konwersja z PIC32MM Microchipa do EFM32TG11 Silicon Labs to była czysta przyjemność. Zdecydowanie prościej jest przenosić biblioteki z PIC32 do jakiegokolwiek ARM-a niż odwrotnie.

niedziela, 21 października 2018

EFM32TG11B120F128GQ48 ARM Cortex-M0+ od Silicon Labs - SPI

W artykule przyjrzymy się  peryferium SPI w naszym procku. Przyda się nam ta wiedza m.in do uruchomienia wyświetlacza LCD opartego na ILI9163 i znajdującego się na mojej płytce developerskiej dla Silicona. Peryferium SPI ukryte jest w module USART (Universal Synchronous Asynchronous Receiver/Transmitter). Do dyspozycji mamy cztery moduły USART zatem i cztery SPI. W modułach tych znajdziemy również UART .


czwartek, 18 października 2018

EFM32TG11B120F128GQ48 ARM Cortex-M0+ od Silicon Labs - mruganie LED-em w środowisku Simplicity Studio 4

W artykule zapoznamy się z dwoma nurtami programowania ARM-a . Z nurtem "natywnym" czyli programowaniem w oparciu o rejestry i pliki nagłówkowe mikrokontrolera oraz z nurtem programowania za pomocą biblioteki typu HAL(Hardware Abstraction Layer) W przypadku Silicon Labs jest to biblioteka emlib. O ile praca i nauka z biblioteką emlib jest lekka łatwa i przyjemna o tyle praca z rejestrami to już inna bajka ale ta bajka gwarantuje  więcej satysfakcji. Z rejestrami najlepiej się poczują odbiorcy , którzy poprzednio działali na AVR-ach lub PIC-ach. Część łatwa , lekka i przyjemna z biblioteką emlib dedykowana jest dla osób przechodzących z Arduino. Czyli każdy znajdzie coś dla siebie. Spróbujmy zatem zamigać diodą LED za pomocą dwóch nurtów programowania MCU z rdzeniem ARM.......

poniedziałek, 15 października 2018

Programator dla MCU ARM firmy Silicon Labs

Mikrokontrolery firmy Silicon Labs bardzo lubią programatory serii J-Link firmy Seeger. Nabyłem takowy na naszym rynku w wersji J-Link Edu mini. Koszt ok 80 zł plus dodatkowo trzeba nabyć specjalny kabel za ok 30 zł. Programatorem J-Link zawalczymy praktycznie z każdym Cortexem M dowolnego producenta.
Na pokładzie mamy JTAG i SWD. Środowisko Simplicity Studio 4 do programowania MCU Silicona natywnie wspiera programatory J-Link, nie trzeba instalować żadnych driverów. Co bardzo cieszy. Programator jest bardzo mikraśny.

niedziela, 14 października 2018

EFM32TG11B120F128GQ48 ARM Cortex-M0+ od Silicon Labs - ustawienie zegara w środowisku Simplicity Studio 4

Moją standardową procedurą w rozpoznaniu nowego MCU jest poznanie na początku aspektów dotyczących zegara. Na warsztat biorę MCU z nowej serii Tiny Gecko 11 firmy Silicon Labs w obudowie TQFP 48 pin 7x7 mm. Tak jakoś polubiłem ten format obudowy, który zajmuje znacznie mniej miejsca niż obudowa 64 pinowa. MCU Silicona zaciekawiły mnie m.in z racji ciekawych peryferiów , ceny  oraz z uwagi na zarąbiste logo na MCU :).


sobota, 13 października 2018

EFM32TG11 Silicon Labs ARM Cortex M0+ budujemy płytkę developerską .

W ramach poszerzenia horyzontów hobbystycznych postanowiłem zapoznać się z  mikrokontrolerem opartym o rdzeń z architekturą ARM Cortex M0+. Za cel obrałem sobie amerykańską firmę Silicon Labs i jej bardzo intrygujący produkt EFM32 Tiny Gecko 11. Jest to mikrokontroler 32-bitowy z rdzeniem ARM Cortex M0+ o  ciekawej specyfikacji. Jakiś czas temu dokonałem o nim krótki wpis : artykuł. Aby należycie zająć się tematem potrzebuję płytki. Silicon Labs ma w ofercie bardzo ładne i funkcjonalne płytki developerskie dla swoich MCU, to nie są jakieś badziewiaste Nucleo ale dopracowany i przemyślany w każdym szczególe produkt. Najprościej byłoby taką płytkę kupić ale jej cena w przypadku nowej serii Tiny Gecko 11 na poziomie 89 USD jest dla polskiego hobbysty trochę surrealistyczna. Zakasamy zatem rękawy i budujemy własną płytkę za ułamek ceny producenta. Nie będzie może tak piękna jak na zdjęciu ale będzie nasza i nie zaboli nas kieszeń :)

Simplicity Studio 4 firmy Silicon Labs - IDE dla MCU Silicona z rdzeniem ARM - instalacja LINUX.

Do programowania MCU firmy Silicon Labs mamy do dyspozycji przygotowane przez producenta bezpłatne środowisko Simplicity Studio 4 (SS4). Jeśli ktoś posiada komercyjne IDE takie jak IAR czy KEIL-a uVison to również nimi zaprogramuje MCU Silicona. Pakiet instalacyjny SS4 jest przygotowany dla Windows, Linux, Mac. Środowisko SS4 oparte jest o Eclipsa ma to swoje wady i zalety. Nie mniej warto tu nadmienić , że najlepszym na rynku środowiskiem (m.in najlepsze kompilatory) do programowania MCU ARM-a jest IDE Keila, komercyjna wersja bez żadnych ograniczeń  potrafi kosztować 30 tys złotych !!!! Alleluja.

Tiny Gecko 11 - perełka z rdzeniem ARM Cortex M0+ od firmy Silicon Labs


Silicon Labs mało znana u nas firma , która porusza się w segmencie IoT. Mało znana przeciętnemu zjadaczowi chleba ale prężna z bardzo ciekawą holistyczną filozofią podejścia do zagadnień IoT. Firma ma bogate i ciekawe portfolio przejęć na które składa się m.in największy w branży dostawca układów SoC i oprogramowania ZigBee i Z-wave. Co mnie zaciekawiło w portfolio tej firmy dowiemy się z artykułu poniżej ...