Platforma uruchomieniowa Curiosity Nano od Microchip

W ostatnich latach rosnącą popularnością cieszą się zintegrowane platformy wyposażone w mikrokontrolery (najlepiej znaną marką jest tu najprawdopodobniej Arduino). Dzięki powszechnej dostępności oraz szerokiemu wsparciu ze strony producentów i społeczności użytkowników, stanowią łatwe do opanowania, wszechstronne narzędzi rozwojowe. Jednak w warunkach profesjonalnych, np. w procesie prototypowania urządzeń mobilnych, wadą takich produktów jest ograniczona liczba obsługiwanych układów. Dlatego podczas prac laboratoryjnych, na etapie projektowania, najpewniejszym rozwiązaniem pozostają platformy rozwojowe przygotowane przez samych producentów układów. Należy w tym miejscu podkreślić, że ich uwadze nie uszły zalety popularnych rozwiązań z segmentu konsumenckiego: łatwość ich adaptacji i przystępność. Dziś na rynku dostępne są proste w obsłudze płytki uruchomieniowe przygotowane przez czołowych wytwórców mikrokontrolerów – przede wszystkim firmę Microchip, do której portfolio należą układy z rodzin PIC® i AVR®. Poniżej przedstawiamy jedno z rozwiązań prototypowych tego właśnie producenta,z serii Curiosity Nano

Produkty serii Curiosity Nano

Przykład płytki MC Nano wykorzystującej 32-bitowy układ serii PIC32CM.

Microchip Curiosity Nano (lub MC Nano) to platforma uruchomieniowa dedykowana przede wszystkim 8-bitowym mikrokontrolerom PIC® oraz AVR®. Za ich pomocą można również rozwijać aplikacje wyposażone w niektóre 32-bitowe produkty z rodzin PIC32 oraz SAM o architekturze ARM® Cortex®. W ofercie TME dostępnych jest 15 płyt uruchomieniowych w obrębie tej platformy oraz 2 płyty bazowe. Niezależnie od zastosowanego układu platforma Curiosity Nano została przygotowana, aby maksymalnie przyspieszyć projektowanie nowych aplikacji i w efekcie skrócić czas między etapem prototypowania a wdrożeniem do masowej produkcji. Przykład wykorzystania rozwiązań MC Nano w procesie dynamicznego rozwoju projektu przedstawiono w poniższym materiale wideo.



 

Kluczowe cechy platformy MC Nano

Płyty uruchomieniowe wchodzące w skład platformy występują w wielu rozmiarach (długościach), zależnie od wielkości zastosowanego w nich mikrokontrolera. Najmniejsze z płyt dedykowane są układom z 20 wyprowadzeniami (w tym 16 pinów GPIO), podczas gdy największe zawierają MCU w obudowie posiadającej 48 wyprowadzeń, co przekłada się na 40 pinów wejścia/wyjścia. Niezależnie od długości, produkty wchodzące w skład platformy współdzielą kluczowe cechy fizyczne (m.in. szerokość płyty,raster wyprowadzeń, obecność gniazda MicroUSB służącego do zasilania, komunikacji i programowania) oraz techniczne, pozwalając na bezproblemową migrację pomiędzy poszczególnymi modelami. Ponadto producent zapowiada, że platforma będzie rozwijana wraz z ofertą mikrokontrolerów. Można oczekiwać, że nowo wprowadzane układy Microchip pojawią się na płytach z rodziny Curiosity Nano, zapewniając projektantom komfort pracy z najnowocześniejszymi rozwiązaniami w sprawdzonym i znanym środowisku.

Zawartość opakowania

Odpowiednio zaprojektowane otwory eliminują konieczność lutowania złączy.

Do MC Nano dołączone są dwa złącza kołkowe. Już na pierwszy rzut oka dostrzec można interesujące rozwiązanie projektowe zastosowane przez Microchip. Pola GPIO, rozmieszczone na PCB w rastrze 2,54mm, zawierają zarówno złącza krawędziowe, jak i otwory . W obydwu przypadkach są to przelotki metalizowane, przystosowane do montażu złączy kołkowych. Dzięki niewielkiemu, poprzecznemu przesunięciu otworów względem siebie zapewniono ciasne pasowanie złącz kołkowych i optymalne parametry połączenia oraz praktycznie wyeliminowano potrzebę ich lutowania (chociaż jest to rekomendowane). Po ich instalacji, PCB można zamontować w większej płycie stykowej, dedykowanej płycie bazowej lub adapterze (dostępne i kompatybilne produkty opisano w dalszej części artykułu). 

Układy w obwodzie PCB

Platforma Microchip Curiosity Nano posiada szereg nadrzędnych cech współdzielonych przez wszystkie modele serii. W centralnej części płyty znajduje się mikrokontroler (C), którego piny połączone są z polami na krawędziach PCB (F), oraz rezonator kwarcowy (D). Do celów prostego prototypowania na płycie zainstalowano przycisk (A) i diodę LED (B). W przeciwieństwie do platformy Arduino, przełącznik nie pełni funkcji resetu, jest podpięty do pinu wejścia/wyjścia mikrokontrolera (adres dedykowanego wyprowadzenia oznaczono na PCB, różni się między modelami serii). Do komunikacji oraz zasilania układu służy gniazdo USB Micro (G)


Transmisja danych między MC Nano a komputerem (systemem, oprogramowaniem IDE, terminalem komunikacyjnym itd.) odbywa się za pomocą wirtualnego portu COM. Większość omawianych płyt po podłączeniu do PC zostanie rozpoznana przez system operacyjny jako dysk zewnętrzny o etykiecie „CURIOSITY”. Wystarczy skopiować na to urządzenie plik .hex – a programowanie mikrokontrolera odbędzie się automatycznie. Taka funkcjonalność jest możliwa, ponieważ płyty MC Nano posiadają wbudowany układ nEDBG, czyli debugger/programator (E). Jego obecność umożliwia obsługę omawianych produktów bez stosowania dodatkowych urządzeń. Ponadto, dzięki niemu mikrokontroler nie jest obciążony obsługą bootloadera, co przyspiesza wykonywanie docelowego programu i zwalnia pamięć

Dodatkowo, w obwodach MC Nano zastosowano programowalny regulator napięcia. Pozwala on zdefiniować zakres napięcia pracy oraz zasilania mikrokontrolera w przedziale od 1,8V do 5V DC.

Standaryzacja wyprowadzeń

Jednym z atutów platformy Microchip jest standaryzacja wyprowadzeń. Niezależnie od wybranego modelu płyty i zainstalowanego nań mikrokontrolera, umieszczone na brzegach PCB pola podłączone są do pinów programatora, debuggera i układu centralnego o tej samej funkcjonalności. A zatem: kolejności złączy na płytce nie pokrywa się z numeracją wyprowadzeń mikrokontrolera – jest natomiast niezmienna dla całej serii MC Nano. Standard ten dotyczy pierwszych (licząc od strony złącza USB) 28 pinów. 

Wyprowadzenia dzielą się na kilka sekcji. Pierwsza w nich określona została jako DEBUG (grupa połączeń systemowych). Piny te służą do komunikacji z obwodem nEDBG. Tutaj znajdują się również wejścia zasilające (VBUS, regulowany VTG), masa GND oraz pin VOFF sterujący pracą wbudowanego regulatora napięcia. Możliwe jest nawet jego wyłączenie, o ile zachodzi taka potrzeba. Użytkownik ma również do dyspozycji linie komunikacji szeregowej (Virtual COM Port): CDC RX/TX. Kolejne 4 piny DBG1-DBG4 należą do interfejsu debuggera. To, który interfejs jest obsługiwany przez dany model płyty, zależy od rodzaju mikrokontrolera. Dla układów PIC będzie to interfejs ICSP™ i MCLR, dla AVR interfejs UPDI, podczas gdy dla ARM® – interfejs SWD.

Urządzenia MC Nano zawierają pamięć masową z wgraną, cyfrową dokumentacją.

Dalsza część wyprowadzeń to sekcje komunikacyjna (COM) i analogowa (ANALOG). One również stanowią cechę wspólną serii MC Nano. Sekcja COM grupuje wyprowadzenia służące komunikacji poprzez: UART, magistralę I2C oraz SPI. Na przeciwległej krawędzi PCB umieszczono wejścia analogowe, tj. wyprowadzenia wbudowanych w mikrokontroler przetworników analogowo-cyfrowych. Najczęściej mogą one również pełnić rolę wyjścia dla liczników (timerów) i generatorów sygnału PWM. Oczywiście, wyprowadzenia te nie mogą być mapowane programowo, na dowolnym pinie mikrokontrolera (jak ma to miejsce w przypadku wejść/wyjść cyfrowych). Ustandaryzowanie ich położenia na płycie przekłada się na wygodę użytkowania i migracji między poszczególnymi modelami płyt uruchomieniowych. Jeżeli zainstalowany na płycie mikrokontroler posiada więcej wejść ADC czy wyjść PWM, są one dostępne w następnej sekcji: GPIO. Tutaj mapowanie jest bardziej dowolne, ponieważ liczba i możliwości portów wejścia/wyjścia są ściśle uzależnione od funkcjonalności układu centralnego. Dokładne informacje na temat tego, który fizyczny pin został przypisany do danego złącza, można znaleźć w dokumentacji. Jest dostępna po podłączeniu płyty NC Nano do portu USB komputera. Urządzenie pamięci masowej (które zostanie wykryte przez system i przedstawione jako dysk o etykiecie „CURIOSITY”) zawiera plik KIT-INFO.HTM – a w nim szczegółowe informacje o funkcjonalności każdego wyprowadzenia obecnego na danym modelu płyty.

 

Funkcjonalność wbudowanego debuggera

Wbudowany w płytę Microchip Curiosity Nano debugger (zwany PKOB nano, nEDBG lub nano debugger) posiada podstawową funkcjonalność, tj.: sterowanie przebiegiem wykonania programu (flow control – start, stop, wyzwalanie krokowe, reset); odczyt i zapis zawartości nieulotnej pamięci mikrokontrolera; obsługa pułapek (breakpoint) w liczbie zależnej od typu układu. 

Firmware wbudowanego debuggera można zaktualizować za pośrednictwem środowiska programistycznego MPLAB® IDE albo Microchip Studio. PKOB nano jest nieco wolniejszy od analogicznych rozwiązań w rodzaju programatora PICkit™ 4. Posiada też pewne ograniczenia, np. w postaci braku możliwości zapisu pewnych obszarów pamięci flash mikrokontrolera. Z drugiej strony: zabezpiecza to przed przypadkowym nadpisaniem obszarów pamięci odpowiedzialnych za sam proces debuggowania lub niepożądaną zmianą wartości fuse bitów w przypadku mikrokontrolerów AVR®. Po stronie zalet jest też fakt, że dzięki obecności PKOB nano płyta zostaje automatycznie rozpoznawana w środowiskach programistycznych MPLAB IDE i Microchip Studio. Po podłączeniu płyty użytkownik od razu uzyskuje dostęp do przykładowych programów, dokumentacji, schematu elektrycznego, schematu wyprowadzeń, karty katalogowej mikrokontrolera itd.

Na końcu niniejszego artykułu znaleźć można materiały wideo przedstawiające przykłady i podstawy programowania płyt Curiosity Nano.

Płyty bazowe i kompatybilne moduły

W ofercie TME (zobacz) znaleźć można także szereg akcesoriów i uzupełniających produktów, które ułatwią pierwsze kroki z platformą MC Nano, jak również usprawnią same prace prototypowe. Opisana wyżej standaryzacja wyprowadzeń serii produktów od Microchip pozwala na stosowanie z nimi adapterów, płyt rozszerzających i cyfrowych modułów: czujników, sterowników, interfejsów etc. 

Płyty rozwojowe i adaptery

Za pomocą złączy kołkowych każdy model MC Nano można umieścić w płycie bazowej. W ofercie TME znajdują się dwa modele takich produktów: AC164162 wyposażono w złącza kompatybilne m.in. z modułami firm Mikroelektronika i Microchip. Drugim rozwiązaniem jest ewaluacyjny zestaw AC80T88A, do którego można podłączyć artykuły z rodziny Xplained Pro. W obydwu przypadkach użytkownik ma do dyspozycji osobny włącznik zasilania i niezależne wyprowadzenia wszystkich portów – zyskuje także wygodną, stabilną podstawę poprawiającą komfort pracy. Niewątpliwym atutem modelu AC164162 jest wbudowany kontroler ładowania akumulatorów. Usprawnia to prototypowanie urządzeń mobilnych – aplikacji, którym dedykowane jest wiele mikrokontrolerów Microchip. 

 

Moduły serii Click®

Moduł komunikacyjny WiFi z serii Click.

Dzięki unormowaniu w ramach serii MC Nano wyprowadzeń komunikacyjnych, produkty te można szybko połączyć z wieloma zestandaryzowanymi modułami – przede wszystkim serią Click® od producenta Mikroelektronika. Jest to obecnie najliczniejsza rodzina uniwersalnych rozszerzeń dla mikrokontrolerów. Do transmisji danych wykorzystuje standard MikroBUS (łączący kilka metod komunikacji). Obecnie w ofercie TME jest dostępnych ponad 1000 artykułów z rodziny Click® Board. Są to liczne układy komunikacyjne (RF, WiFi, Bluetooth, ZigBee, GSM), czujniki, mierniki (amperomierze, woltomierze), przydatne akcesoria w postaci czytników kart pamięci i RFID, odbiorniki GPS, jak również elementy interfejsowe (przyciski, klawiatury, kontrolki) oraz liczne mniej typowe obwody, np. mieszane (tunery FM i AM), wzmacniacze audio.

 

Porównanie produktów MC Nano

Jedną z największych zalet serii MC Nano jest szeroki wybór instalowanych na tej platformie mikrokontrolerów. W poniższej tabeli widoczne są układy obecnie dostępne bezpośrednio z katalogu TME, jednak oferta ta z pewnością będzie się zwiększać.

 

 Już na przykładzie obecnego asortymentu widać, jak szerokie spektrum obejmują płyty prototypowe z rodziny Microchip Curiosity Nano. W przypadku prostych mobilnych, aplikacji, w których kluczowym czynnikiem będzie energooszczędność, najlepszym wyborem będą płyty wyposażone w układy ATTINY (doskonałym przykładem takiego produktu jest zestaw DM080104 ): przystosowane do projektów o niskim poborze mocy, znakomicie sprawdzające się w roli sterowników, np. w elektronice AGD czy branży motoryzacyjnej. Tryby bardzo oszczędnego zasilania (eXtreme Low-Power) posiadają także mikrokontrolery PIC16, posiadające peryferia typu CIP, tj. Core Independent Peripherals . Są to zintegrowane układy, które mogą działać niezależnie od rdzenia, a nawet wybudzać mikrokontroler ze stanu uśpienia, generując przerwanie uwarunkowane programowalnym parametrem (np. przekroczenie zadanego napięcia na wejściu przetwornika A/C). 

W przypadku bardziej złożonych aplikacji, wymagających obliczeń i reakcji w czasie rzeczywistym, a także współpracujących z licznymi czujnikami, warto zwrócić uwagę na produkty z rodziny PIC18, jak np. zestaw EV26Q64A. Mikrokontrolery w tej grupie artykułów wyposażono w liczne interfejsy, przetworniki A/C, jak również C/A (tj. DAC), wbudowany wzmacniacz operacyjny, generatory sygnałów PWM o 16-bitowej rozdzielczości, a także pamięci przystosowane do szybkiej i niezawodnej akwizycji danych.

Przykłady aplikacji i programowania

Dla użytkowników stawiających pierwsze kroki w środowiskach MPLAB IDE czy Microchip Studio producent przygotował wiele materiałów pomocniczych. Można je znaleźć zarówno na stronie Microchip, jak i platformie YouTube. Z ich pomocą stworzenie pierwszego projektu i obsługa IDE nie sprawi trudności.

Poniższy materiał ilustruje, w jaki sposób zaimportować  i zmodyfikować przykładową aplikację demonstrującą funkcjonalność jednej z płyt MC Nano: 

Wygodną formą zapoznania się z kolejnymi cechami platformy Microchip Curiosity Nano jest udział w zajęciach w ramach programu Microchip Univerisity.

Tekst opracowany przez Transfer Multisort Elektronik Sp. z o.o.

 

Oryginalne źródło: https://www.tme.eu/pl/news/library-articles/page/45286/platforma-uruchomieniowa-curiosity-nano-od-microchip/