niedziela, 23 grudnia 2018

RADOSNYCH ŚWIĄT BOŻEGO NARODZENIA

ABYŚMY SPOKOJNIE. PATRZYLI  JAK ROSNĄ NASZE DZIECI . ABY SĄSIAD BYŁ NASZYM PRZYJACIELEM A CZŁOWIEK CZŁOWIEKOWI BRATEM. ŻEBY NIKOMU NIE ZABRAKŁO JEDZENIA NA TALERZU. NIECH POKÓJ NA ZIEMI KWITNIE A MIŁOŚĆ ZABARWIA NASZE ŻYCIE.

ZDROWYCH , SPOKOJNYCH , RODZINNYCH ŚWIĄT BOŻEGO NARODZENIA ..... I ZAPACHU PIERNIKÓW W DOMU :)   Życzy PICmajster.

środa, 19 grudnia 2018

Jak wyświelić kolorowy obrazek na wyświetlaczu TFT ILI9163 1.8" zapisany na karcie SD.

Zbliżają się narodziny Pana Jezusa. To piękne święto bo m.in tuż przed, czyli w dzień Wigilijny wszyscy się obdarowują prezentami. Taki symboliczny wyraz miłości do drugiego człowieka. Na okoliczność tego radosnego święta rozpracowałem zagadnienie związane z wyświetlaniem dowolnego obrazka z karty SD. Wykorzystałem możliwości biblioteki FatFs i biblioteki dla kolorowego wyświetlacza ILI9163 1.8 " z czytnikiem SD. Pan Jezus może mi wybaczy , że przed jego urodzinami zajmuję się takimi głupotami, zamiast Żonie pomóc lepić pierogi :) No ale co ja poradzę, że lepić pierogów nie lubię a grzebać w kodzie tak.

sobota, 8 grudnia 2018

FatFs - implementacja biblioteki dla PIC32MM

W artykule zajmiemy się implementacją znanej biblioteki FatFS dla PIC32MM. Inspiracją do zajęcia się tym zagadnieniem był fakt posiadania czytnika kart SD w wyświetlaczu ILI9163 do którego tworzyliśmy bibliotekę jakiś czas temu.
Szkoda aby czytnik marnował się w wyświetlaczu nie używany. Tym bardziej , że wyświetlacz ten znajdziemy w  moim najnowszym projekcie płytki developerskiej dla PIC32MM. Zatem bierzemy się niezwłocznie do roboty. Na początek należy zdobyć  kartę SD. Fajnie abyśmy mieli dostęp do czytnika w PC, mnie udało się taki znaleźć w moim  laptopie. Trzeba było go tylko uaktywnić w BIOS-ie.

sobota, 10 listopada 2018

ATSAML21 - budujemy płytkę developerską dla Legendy z rdzeniem Cortex M0+.

Ponieważ ATSAM-y są mało znane na naszym rynku a stanowią kawałek historii rozwoju nurtu ARM-owego i są spuścizną po firmie ATMEL. Postanowiłem pochylić się nad nimi i spróbować je bliżej poznać. Dodatkowym pretekstem było pojawienie się bardzo ciekawego środowiska firmy SEGGER, które wspiera wszystkie popularne serie ATSAM-ów. Środowisko to jest dostępne dla systemu Linux, mojego bazowego systemu. Aby rozpocząć przygodę z ATSAM-ami potrzebuję płytkę developerską. Zatem radośnie przystępuję do jej tworzenia. Tym razem przybliżę w jaki sposób i jakimi narzędziami tworzę takie projekty. Jestem zdania , że robienie własnych płytek jest nie tylko świetną i twórczą zabawą ale przybliża nas znacząco do poznania danego mikrokontrolera. Precz z lenistwem i kupowaniem gotowych płytek :)

czwartek, 8 listopada 2018

Rewolucyjne środowisko firmy SEGGER do programowania m.in mikrokontrolerów serii SAM firmy Microchip.

Na rynku pojawiło się nowe środowisko do programowania MCU z rdzeniem ARM od firmy Segger. Nie byłoby w tym nic ciekawego gdyby nie fakt , że nie jest to kolejna edycja Eclipsowych tworów oraz to, że zaprogramujemy tutaj m.in mikrokontrolery z oferty firmy Microchip. Moją uwagę przykuła   jedna rewolucyjna/rewelacyjna możliwość. Mianowicie IDE SEGGERA wspiera mikrokontrolery SAM firmy Microchip. A to oznacza, że wreszcie możemy programować te wspaniałe MCU w środowisku LINUX. Dotychczas możliwe to było tylko w ATMEL STUDIO , KEIL i IAR ale tylko pod Windą. Microchip co prawda przenosi produkty byłej firmy ATMEL do swojego środowiska MPLABX-IDE ale zanim to zostanie dobrze zrobione to jeszcze może trochę wody w Wiśle upłynie. Obecnie mamy tu i teraz doskonale działające  środowisko SEGGER-a , które jest niezwykle wydajne , szybkie i wspiera  MCU SAM.

środa, 31 października 2018

Jak wyświetlić kolorowy obrazek na wyświetlaczu 1.8 TFT ILI9163 - aktualizacja biblioteki dla PIC32MM.

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.

wtorek, 2 października 2018

dsPIC33CK - nowa seria 16-bitowa z zegarem 100MHz.

Firma Microchip rozbudowywuje swój potencjał w zakresie MCU 16-bitowych dodając nową serię dsPIC33CK. Mikrokontrolery te zadziwiają potężnie rozbudowanymi peryferiami i dużym potencjałem obliczeniowym w zakresie przetwarzania sygnałów cyfrowych. Zegar 100MHz  i 100 MIPS-ów czynią te serię  najszybszą obecnie na rynku w całym ekosystemie 16-bitowym. W sumie jest to ciekawy ruch, w otoczeniu innych producentów, którzy prześcigają się w tworzeniu coraz bardziej podrasowanych MCU z rdzeniem Cortex M7 nie zauważając , że jest to już pole dla mikroprocesorów , które mogą być tańsze i bardziej elastyczniejsze w docelowych aplikacjach. Microchip przyjął tutaj jak widzę odmienną strategię tzw chodzenia bliżej ziemi, rozwijając serie 8-bitowców i 16-bitowców , obudowując je coraz bardziej wymyślnymi peryferiami i czyniąc je bardziej wydajnymi. Historia osądzi, która strategia była lepsza.

niedziela, 30 września 2018

Płytka developerska PIC32MM dla Kowalskiego.

Postanowiłem dokonać modyfikacji mojego projektu płytki developerskiej dla PIC32MM - mikrokontrolera 32-bitowego firmy Microchip. Podstawową zmianą będzie zastosowanie wyświetlacza graficznego TFT z kartą SD. Zmiany dotyczą również zasilania, płytka będzie zasilana ze złącza Micro USB. Postaram się również zmniejszyć wymiary płytki. Sumarycznie koszt wykonania projektu ulegnie znaczącej obniżce m.in przez zastosowanie tańszego wyświetlacza, przez co płytka wraz z osprzętem stanie się bardziej przyjazna dla kieszeni przeciętnego Kowalskiego. 

wtorek, 25 września 2018

MCCP i SCCP w PIC32MM - kopalnia skarbów

Moduł xCCP (Compare/Capture/PWM) jak określił  Paweł Borkowski w książce "Mikrokontrolery PIC w praktycznych zastosowaniach" to programistyczna kopalnią skarbów. Moduł występuje w dwóch odmianach SCCP(Single) i MCCP(Multi). Różnica sprowadza się do ilości sterowanych pinów i dodatkowych możliwości. W module Single możemy działać tylko na jednym wybranym pinie a w Multi na grupie pinów (maksymalnie do 6) i tutaj mamy dostępne dodatkowo, bardziej rozbudowane możliwości, od których może głowa rozboleć.

piątek, 21 września 2018

PIC32MM i piny alternatywne dla I2C1 - odkrywamy najskrytsze tajemnice :)

Interfejs I2C1 w PIC32MM nie możemy przyporządkować do innych pinów niż wymusza to producent firma Microchip. Standardowo mamy tutaj przyporządkowane następujące piny RB9 -> SDA1 i RB8 -> SCK1 . Z tabelki z opisem pinów MCU wynika jednak , że jest dostępna alternatywa. Ponieważ sam się drapałem w głowę przez chwilę nad tym zagadnieniem. Dlatego czynię niniejszy wpis przy okazji przywołujący mi skojarzenie ze słynnym serialem Stanisława Bareji - Alternatwy 4.

poniedziałek, 10 września 2018

Input Change Notification (ICN) w PIC32MM

W mikrokontrolerach 32-bitowych firmy Microchip serii PIC32MM mamy do dyspozycji dodatkową funkcjonalność na portach I/O nazwaną Input Change Notification. Funkcjonalność polega na tym, że każdy praktycznie pin I/O może spełniać rolę przerwania zewnętrznego INT. Dowolny pin I/O skonfigurowany jako wejście jest w stanie wykryć nam zmianę sygnału podanego na wejście i wygenerować przerwanie.   W sumie jest to bardzo ciekawa funkcjonalność i przydatna w praktyce. Możemy ustawić dowolny pin I/O tak aby generował przerwanie po nadejściu zbocza narastającego lub/i opadającego. W artykule pokażę jak ustawić tę funkcjonalność i zdefiniować przerwanie. Moim bazowym mikrokontrolerem jest PIC32MM0256GPM048 i do niego odnoszę ten wpis, aczkolwiek wszystko co piszę tutaj odnosi się do całej rodziny PIC32MM.

sobota, 11 sierpnia 2018

MCP2517FD/MCP2518FD - genialny kontroler CAN FD i współpraca z PIC32MM

O tym cudnym i zjawiskowym kontrolerze CAN FD zrobiłem wpis przy okazji zabaw z PIC24HJ - artykuł Teraz przyszła wiekopomna chwila aby ponownie się nim zająć tym razem z perspektywy 32-bitowego MCU PIC32MM firmy Microchip. Kontroler CAN FD MCP2517FD(obecnie zastąpiony przez MCP2518FD) oferowany przez Microchipa jest wybitnym w swojej klasie urządzeniem. Był to pierwszy na rynku taki kontroler w wydaniu zewnętrznym i nawet obecnie trudno znaleźć konkurenta dla niego. Warto wspomnieć, że kontroler jest sprzętowo przygotowany do pracy w sieci z protokołem DeviceNet. Jest to amerykański standard sieciowy wykorzystywany w automatyce przemysłowej. Dodatkowo znajdziemy tu unikalną funkcjonalność w postaci znaczników czasu dodawanych do ramek CAN. Układ ten od początku zetknięcia się z nim bardzo intryguje. Nie dość , że reprezentuje nową technologię w CAN i zwiększa możliwości tej sieci to jeszcze bardzo ciekawie wygląda od strony całej filozofii/koncepcji przepływu i konfiguracji danych opartych o jeden ciągły obszar pamięci RAM . Takie rozwiązanie odbiega od tradycyjnego podejścia w którym poszczególne komponenty ramki CAN umieszcza się w dedykowanych rejestrach. Przy pierwszym zetknięciu z MCP2517FD, onieśmiela ilość rejestrów konfiguracyjnych a jest ich całkiem sporo ale świadczy to o wyjątkowości tego kontrolera i drzemiących w nim potężnych możliwościach. Powiem szczerze jeśli poobcujemy z tym układem i zaprzyjaźnimy się z nim to nie będziemy chcieli spojrzeć na jakikolwiek inny kontroler CAN.

środa, 1 sierpnia 2018

MPLABX-IDE ver 5 - programowanie MCU byłej firmy ATMEL w środowisku Microchipa.

Nadchodzi rewolucja w świecie Microchipa i środowiska IDE do programowania MCU z oferty tej firmy. Mamy do czynienia z ciekawym ruchem. Dotychczas był podział na IDE do programowania MCU serii PIC 8/16/32 bit - MPLABX-IDE i IDE do programowania MCU przejętej firmy ATMEL - ATMEL STUDIO. Od wersji MPLABX-IDE ver 5 dodano możliwość pisania programów  i debugowania 8-bitowych MCU byłej firmy ATMEL. Na razie jest mowa o 20 rodzinach MCU 8-bitowych ale jest to zapowiedź prawdopodobnie o odejściu od ATMEL STUDIO i zunifikowaniu platformy dla wszystkich produktów firmy Microchip w tym MCU AVR, SAM, Attiny etc.

piątek, 27 lipca 2018

PIC32MM i rejestr ANSELx - błąd Microchipa

Jeśli w PIC32MM w obudowie 48pin zapragniemy sterować cyfrowo pinami RB13,RB14,RB15 lub RA6 to możemy zderzyć się z problemem konfiguracyjnym dla tych pinów. Analizując informację z datasheet dla PIC32MM dochodzimy do wniosku, że w rejestrze ANSELx te bity nie są obsługiwane. Jedna z błędnych informacji brzmi "The ANSB<13:11> and ANSB6 bits are not available on 48, 36 or 28-pin devices.. Niestety jest to błędna informacja w części dotyczącej ANSB<13:11> i bitu nr 13, która może przysporzyć zaczynającym przygodę z PIC32MM bólu głowy. Przyjrzyjmy się zatem istocie problemu i jak sobie z nim poradzić.

środa, 18 lipca 2018

ILI9163 = ST7735 kolorowy wyświetlacz LCD - biblioteka dla PIC32MM.

 Tym razem bierzemy na widelec kolorowy wyświetlacz LCD o rozdzielczości 128x160 i przekątnej ekranu 1,8" oparty na sterowniku ILI9163 Tajwańskiej firmy ILITEK. Inspiracją do zainteresowania się tym wyświetlaczem  była prośba czytelnika bloga o pomoc w konwersji biblioteki dla 32-bitowego MCU PIC32MM firmy Microchip. Wyświetlacz do testów zakupiłem w  cenie ok 25 zł . Trudno się dopatrzyć producenta , ktoś się boi sygnować gotowy produkt swoim logo z tego względu do poważniejszych projektów taki produkt raczej nie ale dla hobbysty czemu nie . Wygląda schludnie zobaczymy jak sobie radzi z wyświetlaniem.

niedziela, 8 lipca 2018

dsPIC33CH Dual Core Family - nowa rodzina dwurdzeniowych MCU w 16 bitach.

Microchip nie przestaje mnie zaskakiwać. Ledwo co rozpakowałem się z wyprawy pod namiot a tutaj ogromna rewolucja w świecie 16-bitów. Do sprzedaży trafiła unikatowa konstrukcja MCU 16-bitowego z dwoma rdzeniami na pokładzie w architekturze Master-Slave. Dwa niezależne rdzenie na jednym chipie potrafiące ze sobą współpracować i pędzone 200 i 180 MHz zegarem !!!!. Co ciekawe jest to pierwszy MCU z serii 16-bitowej wyposażone w przemysłowy standard CAN-FD. Powiem nawet , że jestem trochę oszołomiony tym news-em. Prawdopodobnie musiała powstać wśród dużych klientów Microchipa , potrzeba zaistnienia takiej konstrukcji.

sobota, 30 czerwca 2018

Chwila przerwy na wyprawę pod namiot.....kierunek Szczytno i okolice.

Ponieważ nie zaplanowałem sobie w tym roku urlopu. Dlatego jestem zmuszony improwizować na pełnym spontanie. W biegu podjęta decyzja aby wypocząć jak najbliżej natury czyli pod gołą chmurką. Namiot zakupiony dokładnie ten co na zdjęciu Coleman Darwin 4+ lubię przestrzeń dlatego nie oszczędzam na niej :) . Kilka niezbędnych do życia gadżetów takich jak mata samopompująca, jakiś czajnik z gwizdkiem, worek świeżej lawendy przeciw komarom etc. W sumie co do sprzętu to wydatek jednorazowy . Jako miejsce lotnej dyslokacji wybrałem okolice Szczytna. Szkoła Policyjna w pobliżu , więc założyłem , że będzie bezpiecznie :)

poniedziałek, 11 czerwca 2018

SI4432 moduł RF firmy Silicon Labs - zajęcia praktyczne.


Wreszcie znalazłem chwilę czasu aby przetestować moduły radiowe RF oparte na chipsecie SI4432 firmy Silicon Labs. Pomimo , że chipset ten nie jest już rekomendowany przez producenta i zaleca się go zastąpić nowszymi wersjami takimi jak np SI446x to jest on nadal bardzo łatwo dostępny i tani. Kompletne moduły można nabyć poniżej 2 USD. Warto zauważyć , że inny popularny u nas moduł radiowy RFM22 firmy Hoperf został zbudowany na bazie  SI4432. Opinie o modułach SI4432 w necie są bardzo pozytywne, jako podstawowe zalety wymienia się niezawodność transmisji i duże zasięgi. No ale najlepszą metodą zweryfikowania opinii innych osób jest wyrobienie jej sobie samemu, najlepiej przez poznanie modułu w praktyce. Co niniejszym czynię.

czwartek, 31 maja 2018

PIC32MM - SPI + DMA zajęcia praktyczne.


Poprzednia randka z SPI i 32-bitowym mikrokontrolerem firmy Microchip PIC32MM została zrealizowana przy wykorzystaniu funkcji wygenerowanych przez wtyczkę do MPLABX-IDE , MCC (MPLAB Code Configuration).  Jakość kodu generowanego przez tę wtyczkę bije na głowę podobne rozwiązania u innych producentów. Wiem, że zaczynam się powtarzać :) ale pracę programistów Microchipa należy docenić, ponieważ dzięki ich trudowi , życie hobbysty jest prostsze :). W artykule pokażę, jak w prosty sposób użyć DMA do transferu danych po SPI oraz inne przydatne rzeczy takie jak np. konfiguracja pinów do współpracy z peryferium sprzętowym.

wtorek, 29 maja 2018

Wyświetlacz OLED 1.3" na sterowniku SH1106 - biblioteka dla PIC32MM

Ponieważ tak się złożyło, że jeden z czytelników mojego bloga, który chce poznać w praktyce PIC32MM, zwrócił się do mnie z prośbą o pomoc w pozyskaniu biblioteki do obsługi wyświetlacza OLED 1.3 opartego na sterowniku SH1106. Biblioteka taka powstała na bazie biblioteki zamieszczonej w zasobach LibStock.
Ja tylko zrobiłem pełną konwersję tej biblioteki do współpracy z 32-bitowym mikrokontrolerem PIC32MM firmy Microchip.
Co ciekawe działanie biblioteki sprawdzane było po stronie czytelnika bo ja takiego wyświetlacza akurat nie posiadałem :) Dzięki temu zadaniu poznałem potęgę GitHuba i jego superancką implementację w MPLABX-IDE. Upewniło mnie to w przekonaniu , że środowisko Microchipa jest bardzo wygodne i przyjemnie się w nim programuje.  Wyświetlacz jak wyświetlacz jest OLED-owy i jest chiński ,co nie gwarantuje , że w kolejnych partiach rzucanych na rynek nie zmieni się np. ilość pinów czy ich funkcjonalność. Nie mniej podstawową zaletą jest tutaj cena i jak na razie łatwa dostępność.

wtorek, 22 maja 2018

MPLABX-IDE współpraca ze zdalnym repozytorium na GitHub.

W tym krótkim artykule zapoznamy się z możliwością współpracy ze zdalnym repozytorium na GitHub-ie. Funkcjonalność taka jest zaimplementowana w MPLAB-X IDE czyli w podstawowym środowisku do programowania MCU PIC firmy Microchip. Nie widzę powodu abyśmy z tej funkcjonalności nie skorzystali a w zasadzie z tego dobrodziejstwa.
Tym bardziej , że jest to bardzo fajne narzędzie i sympatycznie się z niego korzysta. Co to jest GitHub ? w sumie to już nawet nie wypada nie wiedzieć :)
W artykule pokażę jak  podpiąć dowolny projekt w MPLABX-IDE do zdalnego repozytorium, jak zatwierdzać zmiany i wysyłać je. Czyli takie podstawowe rzeczy na dobry początek.

sobota, 19 maja 2018

PIC32MM - SPI zajęcia praktyczne

W tym artykule spróbujemy wykorzystać nabytą wiedzę o SPI w PIC32MM. W szczególności wykorzystamy wygenerowane przez MCC funkcje do obsługi SPI, o których wspominałem w artykule poprzednim. Naszym celem będzie wymiana danych pomiędzy dwoma MCU PIC32MM. Jeden będzie skonfigurowany jako Master a drugi jako Slave czyli klasyczny układ .
Aby zajęcia sprawnie przeprowadzić wykorzystam dwie płytki developerskie PIC32MM mojego autorstwa.  Praktyczna wiedza o SPI przyda nam się w następnym zagadnieniu. Zaczynamy zatem przedstawienie :)

środa, 16 maja 2018

PIC32MM - SPI , szybka konfiguracja za pomocą MCC

W MCU PIC32MM mamy do dyspozycji 3 x SPI, które mają trzy wyróżniające cechy : powiązany interfejs I2S co umożliwa np. przesyłanie muzyki z kodowaniem PCM, zmienną szerokość danych 8,16 i 32 bity oraz bufory FIFO niezależne dla RX i TX. Szybkość do 25 Mbps czyli szybko.W celu zapoznania się z konfiguracją SPI posłużymy się wtyczką do MPLABX-IDE - MCC (MPLAB Code Configurator). Microchip może być dumny z tego narzędzia bo jakość i opis generowanego kodu deklasuje podobne rozwiązania stosowane  u innych producentów MCU.

czwartek, 10 maja 2018

Mikrokontrolery PIC - kilka przydatnych makr oraz jak po swojemu zbudować dostęp do dowolnego rejestru MCU.

Pomimo , że rejestry w mikrokontrolerach PIC są bardzo dobrze opisane przyjaznymi strukturami co znacznie ułatwia programowanie ich , to czasami jednak zachodzi potrzeba zrobienia czegoś po swojemu .....

niedziela, 6 maja 2018

MCP9808 - cyfrowy czujnik temperatury, zajęcia praktyczne .

Biblioteka I2C do PIC32MM przygotowana. Jesteśmy zatem gotowi do poznania od strony praktycznej milutkiego cyfrowego czujnika temperatury MCP9808.
Czujnik ten ma sporo funkcjonalności jak na takie maleństwo i jest bardzo prosty w implementacji. Nie sprawił mi żadnych problemów przy uruchomieniu. Wszystko zaskoczyło od przysłowiowego pierwszego strzała. W sumie sam byłem zdziwiony , że tak łatwo poszło. Do uruchomienia czujnika MCP9808 posłużyłem się moją autorską płytką developerską dla PIC32MM.
Czujnik został osadzony na mini płytce-rozszerzeniu wpiętej w złącze PICbus, w które jest wyposażona moja płytka developerska . Mamy zatem kompletny modularny system do badania różnych komponentów z udziałem uroczego 32-bitowego MCU PIC32MM firmy Microchip.

poniedziałek, 30 kwietnia 2018

PIC32MM 32bity od Microchipa - I2C budujemy bibliotekę.

Część sprzętową czyli budowę własnej płytki developerskiej dla PIC32MM mam za sobą. Płytka umożliwia mi w mega wygodny sposób podjęcie wyzwania poznania tego słodkiego MCU 32 bitowego. Ponieważ w kolejce czeka również do rozpoznania czujnik temperatury Microchipa MCP9808 dlatego potrzebujemy biblioteki I2C do zagadania z tym czujnikiem. Z przyjemnością zabieram się do roboty. Ostatni raz z I2C spotkałem się przy okazji poznawania serii 16 bitowej MCU PIC24HJ. Poczyniłem wówczas artykuł o I2C ,przytoczyłem w nim trochę niezbyt ciężkiej teorii o I2C.

środa, 25 kwietnia 2018

ATMEGA4809 - 8-bitów w popularnym opakowaniu od Microchipa.

Microchip śmiało rozwija swoją ofertę MCU 8 bitowych w oparciu o wydajne rdzenie przejętej firmy ATMEL. Tym razem mamy serię wypuszczoną w jednym formacie obudowy 48-pin. Swoją drogą jest to mój ulubiony format i jak widzę dookoła u różnych producentów bardzo popularny ostatnio. Przyjrzyjmy się zatem co nowe 8-bitowce mają na pokładzie .

czwartek, 19 kwietnia 2018

MCP9808 - cyfrowy czujnik temperatury od Microchipa

Firma Microchipa ma w swoim portfolio kilka sprytnych czujników temperatury. Mnie zainteresował model MCP9808. Jest to swoistego rodzaju kombajn do "zarządzania" temperaturą.Mamy tutaj rozbudowane opcje eventów sygnalizujących różne zdarzenia takie jak np krytyczne poziomy temperatury czy możliwość definiowania okna temperaturowego (histerezy) etc.
Czujnik dostępny jest w bardzo mikraśnych obudowach typu MSOP i DFN. Jest tak mały, że praktycznie niezauważalny :)



środa, 18 kwietnia 2018

Si4432 moduł radiowy do płytki developerskiej dla PIC32MM

Kolejnym małym projekcikiem będzie przygotowanie modułu radiowego opartego o chipset Silion Labs Si4432, który bedziemy mogli wpiąć w płytkę developerską dla PIC32MM. Posiadam zarówno gołe chipsety Si4432 jak i gotowe płytki aplikacyjne z anteną w komplecie. Na razie skorzystam z gotowców, czyli z płytek aplikacyjnych, które osadzę w module zapinanym na złącze PICbus w płytce developerskiej. Projektowany moduł umożliwi mi w wygodny dla mnie sposób przetestowanie transciverów od Silicona, co do których mam pewne plany na przyszłość.

czwartek, 12 kwietnia 2018

MCP2517FD/MCP2518FD kontroler CAN FD - moduł do płytki developerskiej dla PIC32MM

Mamy własnej produkcji płytkę developerską dla PIC32MM, teraz kolej na mini-płytki rozszerzające do złącza PICbus (moja autorska nazwa) na tej płytce. Mini-płytki umożliwią mi nie tylko testowanie poszczególnych komponentów osadzonych na nich ale również w elastyczny sposób tworzenie , nawet "docelowych" urządzeń. Na pierwszy ogień do osadzenia na mini-płytce PICbus idzie m.in kontroler CAN FD MCP2517FD (obecnie zastąpiony przez MCP2518FD).

sobota, 7 kwietnia 2018

Si4432 firmy Silicon Labs - moduł radiowy skrojony na miarę.

W nieustającym poszukiwaniu modułów radiowych, które mógłbym wykorzystać w domowym  IoT natrafiłem na ciekawy chipset Si4432 a w zasadzie całą rodzinę chipsetów Si4xxx produkowanych przez firmę Silicon Labs. Firma ta jest silnie związana z ekosystemem IoT i ma bardzo ciekawe i rozbudowane portfolio m.in w zakresie  MCU zintegrowanych z torem radiowym i stosem komunikacyjnym.

niedziela, 1 kwietnia 2018

PIC32MM - dostęp ATOMOWY do rejestrów peryferyjnych .


W ramach poszerzenia horyzontów poznawczych mikrokontrolera PIC32MM, przyjrzymy się jak została zaimplementowana w nim obsługa operacji atomowych . Operacje atomowe szczególnie nabierają znaczenia tam gdzie występują przerwania , które mogą nadpisać nam przerwane operacje na np rejestrach peryferyjnych .
Najmniej elegancką metodą pozbycia się tego problemu jest wyłączenie przerwań na czas modyfikacji i zapisu do rejestrów peryferyjnych ale rdzeń PIC32MM został wyposażony w bardziej elegancki mechanizm.

czwartek, 22 marca 2018

PIC32MM - I/O podstawy.

W artykule opiszę podstawy sterowania pinami w mikrokontrolerach 32-bitowych firmy Microchip . W szczególności skupię się na PC32MM0256GPM048 czyli moim ulubionym obecnie mikrokontrolerem 32-bitowym. Opisywałem już te zagadnienia przy okazji zabaw z PIC24 , wiele rzeczy będzie wspólnych. Migracja z 8 czy 16 bitów na 32-bity w produktach Microchipa jest bardzo płynna i to jest ogromna zaleta ekosystemu PIC. Stanowi to bardzo duże ułatwienie w szczególności dla hobbystów. Mikrokontrolery PIC32 są znacznie prostsze w poznaniu niż np. ARM-y.

poniedziałek, 19 marca 2018

EA DOGM162-A - LCD 2x16 firmy Electronic Assembly

Przyszedł czas na rozpracowanie wyświetlacza LCD jaki wybrałem do mojej płytki developerskiej dla PIC32MM. Od samego początku wiedziałem , że będzie to wyświetlacz firmy EA. Miałem wcześniej kontakt z LCD 4x20 (DOGM204-A) tej firmy i byłem zauroczony szybkością działania, subtelnością wyglądu i pięknym podświetleniem. Ponieważ na płytce dla PIC32MM nie chciałem zajmować dużo miejsca wyświetlaczem, dlatego mój wybór padł na małego słodziaczka DOGM162W-A z bursztynowym podświetleniem. Ło matko jaki on piękny :) Słodziaczek został oparty o sterownik ST7036 i możemy z nim zagadać po 4 / 8 bitach i po SPI jak dla mnie fajnie.


niedziela, 18 marca 2018

PIC32MM - Delay wanted alive or dead


Dla mikrokontrolerów 32-bitowych nie ma dedykowanych bibliotek w których znajdziemy funkcję opóźniające czyli delay-e. W przypadku 8-bitowców i 16-bitowców takie biblioteki znajdziemy bez trudu. Ktoś wyszedł z zalożenia , że takiego sprintera 32-bitowego nie wypada łapać za portki aby go spowolinić, tym bardziej , że życie wewnętrzne w rdzeniach 32-bitowych jest na tyle bogate, że przy delayach o standardowej konstrukcji coś tam może się odbić czkawką. Na potrzebę użycia delay-i natknąłem się bardzo szybko przy okazji pisaniu softu dla wyświetlacza DOGM162. Więc chcąc nie chcąc musiałem je mieć.

sobota, 10 marca 2018

PIC32MM - szykujemy środowisko i ustawiamy zegar - instrukcja dla przedszkolaka.

Moja świeżo wypieczona płytka "developerska" dedykowana 32-bitowemu mikrokontrolerowi firmy Microchip - PIC32MM0256GPM048 jest gotowa do testów. Nie ukrywam , że projekt ten sprawił mi dużo satysfakcji. Artykuł będzie mini-tutorialem od zainstalowania środowiska po zaprogramowanie zegara i ustawienie zmiennych niezbędnych do prawidłowego startu naszego MCU. Wszystkie opisywane czynności robię krok po kroku w realu, więc nie wkradnie się żaden błąd możliwy do popełnienia gdybym opisywał to z głowy.

środa, 28 lutego 2018

PICkit4 - nowy programator/debugger od Microchipa

Microchip wprowadził do sprzedaży nowej generacji programator/debugger PICkit4. Zaprogramujemy nim wszystkie serie mikrokontrolerów PIC oraz dodatkowo rodzinę CEC1702, specjalnych mikrokontrolerów Microchipa opartych o Cortexa M4 dedykowanych do zastosowań kryptograficznych m.in w chmurze Azure.
Na pokładzie mamy m.in JTAG-a i SWD.


niedziela, 18 lutego 2018

PIC32MK1024MCF064 - wypasiony 32 bitowiec od Microchipa , dedykowany do zastosowań w przemyśle.

Era wypasionych mikrokontrolerów powoli dobiega końca. W ich miejsce coraz częściej wchodzą mikroprocesory na których możemy odpalić pełnoprawny system operacyjny zamiast RTOS-a.
Na dowód tej tezy niech będzie wysyp na naszym rynku nowych konstrukcji np. SOM (System on Module), również naszych krajowych. 
Konstrukcje tego typu np.o wymiarach 4x4 cm  mają wszystko czego trzeba aby uruchomić system operacyjny np. Linuxa.
Taki trend wymusza nie tylko coraz większe oczekiwania odbiorców technologii i wymagań aplikacji ale również ceny mikroprocesorów , które są coraz bardziej konkurencyjne w stosunku do mikrokontrolerów.

wtorek, 13 lutego 2018

MongoDB - nierelacyjna baza danych w chmurze za 0 zł.

MongoDB to baza danych w której nie ma tabelek a wszystko opiera się na dokumentach i kolekcjach :) Dane składujemy w dokumentach w formacie binarnym JSON, który z kolei jest naturalnym wyborem dla obiektowych języków programowania takich jak np. JavaScript. Wszystko tutaj dzieje się o wiele prościej i sympatyczniej niż w relacyjnych bazach danych. Jest to bardzo dobry wybór do zastosowań w obszarze np. IoT.





sobota, 3 lutego 2018

MRAA - biblioteka od Intela dla inteligentnych zastosowań w kurniku.



Szperając w śmietniku natchnąłem się na kawałek ciekawego softu. Autorem softu jest nie byle kto tylko firma Intel a w szczególności pewnie jakiś zapaleniec pracujący dla Intela.
Mowa o bibliotece MRAA, która może nam się przydać w kombinacjach z inteligentnymi technologiami w domu i zagrodzie.


poniedziałek, 29 stycznia 2018

Zdalny wyświetlacz dla mikrokontrolera - zajawka pomysłu

Przy okazji projektowania płyteczki "developerskiej" do PIC32MM, stanąłem przed dylematem jaki wyświetlacz zaaplikować , LCD, OLED, TFT ? . W najprostszym przypadku zdecydowałem się na LCD 2x16 znaków. Ale tak sobie pomyślałem a co by było gdyby tak w jednym urządzeniu mieć te wszytkie wyświetlacze na raz :)
i to bez angażowania znacznej liczby pinów mikrokontrolera ? Skojarzenie nasuwa się samo - Smartfon hmm...



czwartek, 18 stycznia 2018

MRF89XAM8A - radio transceiver ze stosem sieciowym MiWi w pakiecie.


Moduł transceivera MRF89XAM8A jest ciekawą alternatywą dla ZigBee. Pracuje w zakresie 868 MHz i za jego pomocą możemy zbudować m.in sieć czujników/sterowników w naszym domu w konstelacji Mesh, gwiazdy, P2P . Moduł pracuje w oparciu o autorski standard Microchipa - MiWi
Maksymalne zasięgi modułu to 750 m w terenie otwartym i 80 m w budynku.


czwartek, 4 stycznia 2018

PIC32MM - prace nad płytką "developerską" zakończone.

Ponieważ stałem  się szczęśliwym posiadaczem mikrokontrolerów PIC32MM w obudowach 48 pin (TQFP) i 28 pin (SOIC 208mils). Stąd myśl aby zaprojektować do nich słodkie płyteczki "developerskie", tym bardziej, że na rynku dostępna jest tylko płytka od Microchipa z "kobyłą" 64 pin, którą już nabyłem do kolekcji. Mam zamiar w 2018 r bliżej się przyjrzeć tej serii mikrokontrolerów.

Analizator stanów logicznych dla hobbysty.

Prędzej czy później staniemy przed potrzebą analizy przebiegów cyfrowych generowanych przez MCU i układów peryferyjnych. W szczególności kiedy zajdzie  konieczność w rozpoznaniu poprawności transmisji pomiędzy MCU a innym urządzeniem czy układem. Analizator stanów logicznych jest również doskonałym wsparciem dla debugera sprzętowego.
Otwiera nam nowe możliwości w działaniu z MCU i jego peryferiami.
Kiedy odczujemy potrzebę posiadania analizatora stanów logicznych ?, na pewno każdy w innym momencie