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.
Blog jest formą pamiętnika technicznego, upamiętniający moją przygodę z mikrokontrolerami PIC firmy Microchip. "Per aspera ad astra..."
wtorek, 2 października 2018
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
ś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.
Subskrybuj:
Posty (Atom)











