1217(1).pdf

(945 KB) Pobierz
PICkit-2 czy PICkit-3?
SPRZĘT
PICkit-2 czy PICkit-3?
Już dawno zainteresowałem się mikrokontrolerami PIC, jednak
przysłowiowe „postawienie kropki nad i” wymusiły skutki kryzysu,
który dotknął przemysł elektroniczny i  z  którego tak ciężko jest
mu się otrząsnąć. Stale są trudności z  zakupem tych najbardziej
popularnych mikrokontrolerów, a  ich ceny są windowane do
granic możliwości. Być może powinienem pójść z  duchem czasu
i  w  nowoprojektowanych urządzeniach stosować mikrokontrolery
z  rdzeniem ARM, jednak moim zdaniem w  przypadku niektórych
aplikacji jest to wytaczanie armaty na muchę.
Redakcja Elektroniki Praktycznej dziękuje
irmie TME z Łodzi za udostępnienie PICkit-2,
PICkit-3 oraz PICDEM Lab do testów.
wspólne dla wszystkich PICkit’ów ( tabela   1 ).
Programator jest dołączany do komputera PC
za pomocą interfejsu USB. Jego obsługa jest
możliwa z menu MPLAB Studio lub z uży-
ciem dodatkowego, zewnętrznego programu.
PICkit może zasilać programowany mi-
krokontroler. Wielkość napięcia wyjściowe-
go dostępnego pomiędzy wyprowadzeniami
V DD -V SS można regulować w  zakresie
2...5,5 V. W przypadku PICkit-2 żądaną, licz-
bową wartość napięcia wpisuje się w menu
opcji programatora i potwierdza przez naci-
śnięcie klawisza Enter . Na paskach progra-
mów obsługi umieszczono przycisk włącz-
nika napięcia zasilającego. PICkit-2 wyposa-
żono w funkcję detekcji obecności napięcia
zasilającego programowany układ: jeśli jest
go brak, to programator sam automatycznie
podaje napięcie zasilające.
Ciekawą funkcjonalnością PICkit’ów jest
Programmer-To-Go . Gdy korzysta się z  tej
funkcji, w pamięci nieulotnej programatora
za pomocą komputera PC zostaje umieszczo-
ny specjalny obraz służący do zaprogramo-
wania mikrokontrolera lub pamięci EEPROM
w układzie docelowym. Po dołączeniu do
programowanego układu PIC wystarczy
nacisnąć guzik umieszczony na obudowie
Pierwszy kontakt z ofertą mikrokontro-
lerów produkowanych przez Microchip jest
porażający. Otwierająca się w przeglądarce
internetowej lista układów liczy kilkaset po-
zycji, których oznaczenia nie są zbyt czytelne
dla początkującego. Jeśli jeszcze nie podjęli-
śmy decyzji o wyborze jakiegoś konkretne-
go typu mikrokontrolera, to może ją ułatwić
interaktywne narzędzie o  nazwie Selector
Guide ( www.microchip.com/productselector/
MCUProductSelector.html ) . Jednak używając
go miałem wrażenie, że konstruktor musi
dokładnie wiedzieć, jakich zasobów będzie
potrzebowało oprogramowanie mikrokontro-
lera. Być może można wybrać „mocny mikro-
kontroler”, a następnie po napisaniu progra-
mu zmienić go na inny, tańszy i „słabszy”, ale
z doświadczenia z innymi układami wiem, że
przy migracji mogą wystąpić jakieś problemy.
Pewną pomocą przy ocenie zasobów
niezbędnych do realizacji danego zadania są
dostępne na stronie internetowej noty aplika-
cyjne. Na przykład planując komunikowanie
się mikrokontrolera przez interfejs Ethernet
możemy wśród bibliotek odszukać stos TCP/
IP udostępniany przez Microchip, odczytać
z noty aplikacyjnej jego wymagania, oszaco-
wać potrzeby naszej aplikacji, zsumować te
obie zmienne, a następnie zaznaczyć odpo-
wiednie opcje w iltrze Selector Guide’a.
Wybór mikrokontrolera to jednak dopiero
pierwszy krok. Teraz musimy zdecydować się
na zakup programatora lub zestawu ewalu-
acyjnego z programatorem. Aktualnie najbar-
dziej popularne są dwa programatory: starszy
PICkit-2 i nowszy PICkit-3. Który wybrać?
Czy różnią się one w jakiś istotny sposób?
PICkit-2
Pierwszym programatorem przeznaczo-
nym dla produktów Microchip był PICkit-1,
który nie jest już oferowany. Jego następcą
był PICkit-2: łatwe w użyciu, tanie narzędzie
sprzętowe mające szereg bardzo pomocnych
opcji.
Sercem PICkit’a-2 jest mikrokontroler
z rodziny PIC18F. Do połączenia programato-
ra z systemem docelowym służy 6-stykowe,
żeńskie złącze szpilkowe o rastrze 2,54 mm.
Odpowiada ono rozstawem popularnej li-
stwie tzw. goldpinów. Nóżka 1 jest oznaczo-
na niewielkim symbolem trójkąta, a progra-
mator nie ma zabezpieczenia przed odwrot-
nym dołączeniem do programowanego ukła-
du. Rozmieszczenie sygnałów na złączu jest
Tab. 1. Opis wyprowadzeń złącza ICD programatorów PICkit
Numer wyprowadzenia
Sygnał
1
Sygnał zerowania MCLR lub napięcie programujące Vpp
2
Napięcie zasilania układu programowanego V DD
3
Masa układu programowanego V SS
4
Sygnał danych ICSPDAT/PGD
5
Sygnał zegarowy ICSPCLK/PGC
6
Wyprowadzenie LVP (opcja Low Voltage Programming)
61
ELEKTRONIKA PRAKTYCZNA 1/2011
950431749.051.png 950431749.062.png 950431749.073.png 950431749.084.png 950431749.001.png 950431749.002.png 950431749.003.png 950431749.004.png 950431749.005.png 950431749.006.png 950431749.007.png 950431749.008.png 950431749.009.png 950431749.010.png 950431749.011.png 950431749.012.png 950431749.013.png 950431749.014.png 950431749.015.png 950431749.016.png 950431749.017.png 950431749.018.png 950431749.019.png 950431749.020.png 950431749.021.png 950431749.022.png 950431749.023.png 950431749.024.png 950431749.025.png 950431749.026.png 950431749.027.png 950431749.028.png 950431749.029.png 950431749.030.png 950431749.031.png 950431749.032.png
SPRZĘT
PICkit’a, a proces programowania odbędzie
się bez udziału komputera PC. Jest to bardzo
przydatne przy wykonywaniu aktualizacji
oprogramowania lub produkcji małoseryjnej.
Niestety, programator nie może być zasilany
za pośrednictwem złącza programujące-
go, lecz musi mieć doprowadzone napięcie
+5 V do złącza USB. Można w tym celu za-
stosować zasilacz lub dostępny interfejs do-
wolnego hosta USB.
Oprócz funkcji zapisu i odczytu układów
programator może pełnić również funkcję in-
terfejsu debugera. MPLAB Studio umożliwia
śledzenie wykonywania kodu, podgląd za-
wartości rejestrów i pamięci, ustawianie pu-
łapek, pracę krokową programu itp. Niektóre
ze starszych układów mogą w tym celu wy-
magać zastosowania specjalnych przejśció-
wek dostępnych jako akcesorium dodatkowe.
Swoją ogromną popularność PICkit-2
zawdzięcza przede wszystkim prostocie
obsługi. Gdy dołączyłem go do płytki testo-
wej, programator bez problemu wykrył brak
zasilania i podał je na mikrokontroler. Po
przejściu w tryb debugera wykrył złe usta-
wienie bitu MCLRE i wyświetlił komunikat
z pytaniem czy chcę go przeprogramować,
aby umożliwić pracę debugera. Po kliknięciu
klawisza OK mogłem cieszyć się funkcjami
debugera.
Tab. 2. Zestawienie zauważonych różnic pomiędzy programatorami PICkit-2 i PIC-
kit-3
Cecha
PICkit-3
PICkit-2
Czerwona, przeźroczysta z wie-
lokolorowymi diodami Power,
Active, Status sygnalizującymi
stan pracy programatora
Czarna, nieprzeźroczysta
z diodami Power, Target i Busy
sygnalizującymi stan pracy
Obudowa
Obsługa z menu MPLAB Studio,
wersja beta programu PICkit-3
Debug Express
Obsługa z menu MPLAB Studio
lub dodatkowego programu
zewnętrznego
Oprogramowanie
Po wykryciu braku napięcia jest
załączane napięcie charaktery-
styczne dla programowanego
typu układu (wcześniej z menu
należy wybrać typ).
Autodetekcja obecności napięcia
zasilania programowanego
mikrokontrolera
Brak
Dobierany na podstawie typu
programowanego układu,
napięcie regulowane za pomocą
suwaka
Zakres napięcia zasilającego
Wpisywany ręcznie z menu
Obszerna, znacznie większa niż
w PICkit-2
Lista programowanych układów
Mniejsza niż w PICkit-3
Zmieniany przy zmianie typu
programowanego układu; daje
to elastyczność programatora
Firmware
Zapisany na stałe
bug Express. Firma Microchip chyba posta-
wiła na obsługę PICkit’a-3 wyłącznie z menu
MPLAB, jednak napotkała na wyraźny opór
ze strony użytkowników poprzedniej wersji
programatora. Szybko postanowiono więc
zmienić błędną decyzję i uruchomiono pro-
jekt open source . Wokół programu widać
ogromny szum i zainteresowanie, co pozwa-
la mieć nadzieję na szybką dostępność wersji
stabilnej. Szczerze mówiąc, to byłem mile
zaskoczony stosunkiem irmy do użytkow-
ników jej produktów i szybka reakcją na ich
potrzeby. Niektórzy producenci podzespo-
łów i narzędzi dla mikrokontrolerów mogli-
by wiele nauczyć się od Microchip’a.
Czytając artykuły na temat nowego PIC-
kit-3 w Internecie miałem wrażenie, że de-
biut PICkit-3 spotkał się z krytyką. Pojawi-
ły się zdania, że nowy programator oferuje
mniej za wyższą cenę. Nie były to moim zda-
niem słuszne opinie, ponieważ już od same-
go początku nowy programator obsługiwał
znacznie więcej układów, a możliwość wy-
miany irmware umożliwiała irmie szybkie
wprowadzenie poprawek niedogodności za-
uważonych przez użytkowników oraz możli-
wości programowania nowych układów.
W PICkit-3 zrezygnowano z opcji au-
todetekcji obecności napięcia zasilającego.
Teraz, aby załączyć zasilanie zewnętrznego
mikrokontrolera, należy wejść w menu pro-
gramatora i  zezwolić na taką możliwość.
Inaczej niż poprzednio, przy określaniu do-
puszczalnego zakresu wyjściowego napięcia
zasilającego jest brany pod uwagę typ układu
scalonego wskazany przez użytkownika. Za-
kres zmian napięcia pozostał ten sam, jednak
teraz jest ono ustawiane za pomocą suwaka,
a nie wpisywane jako liczba.
Zmieniając napięcie zasilające i dołącza-
jąc programator do różnych płytek zauwa-
żyłem szereg komunikatów instruujących
o konieczności upewnienia się, że na pewno
wybrane przez nas napięcie odpowiada ty-
powi dołączanego mikrokontrolera. Widać,
że użytkownicy PICkit-2 musieli w związku
z tym zgłaszać jakieś zastrzeżenia, skoro kon-
struktorzy PICkit-3 poświęcili aż tak wiele
uwagi tej funkcji programatora. Można się
zastanawiać, dlaczego nie rozwiązano pro-
blemu poprzez odczytanie sygnatury układu,
ale odpowiedź jest oczywista: trudno odczy-
tać sygnaturę mikrokontrolera, gdy ten jesz-
cze nie ma dołączonego zasilania, natomiast
odwrotne podanie napięcia (pamiętajmy, że
złącze PICkit’a nie jest zabezpieczone przed
odwrotnym dołączeniem), zależnie od kon-
strukcji układu (ponieważ „sprytnie” napię-
cie zasilające nie jest podawane na skrajne
styki) może uszkodzić mikrokontroler. Stąd
też zapewne dalece posunięta ostrożność,
która może drażnić nadmiarem okien dialo-
gowych, ale jest konieczna.
PICkit-3
Bazując na doświadczenia z  PICkit-2
irma Microchip postanowiła udoskonalić
swój produkt. Nowy PICkit-3 nie różni się
kształtem obudowy czy złączami od swo-
jego poprzednika, jednak już na pierwszy
rzut oka można zauważyć, że jego obudo-
wa ma czerwony kolor i jest przeźroczysta.
Przy porównaniu obu produktów można za-
uważyć, że zmieniły się opisy przy diodach
LED. Na obudowie PICkit’a-2 były obok nich
umieszczone etykiety: Power , Target Busy .
Na obudowie PICkit’a-3 są to: Power , Active
Status . Nowe etykiety zapewne pojawiły się
w związku z rozszerzeniem sygnalizacji – na
przykład dioda Status teraz jest wielokoloro-
wa.
Co wybrać?
Zestawienie różnic pomiędzy progra-
matorami zawiera tabela   2 . Argumentem
przemawiającym za zakupem i użytkowa-
niem PICkit-3 jest ogromna lista programo-
wanych układów, od pamięci EPROM, po-
przez mikrokontrolery 8-bitowe aż do DSP
PIC i PIC32. Lista ta może być rozszerzana
poprzez wymianę irmware, czego nie umoż-
liwia PICkit-2. Microchip zapowiada też, że
za jakiś czas zaprzestanie wsparcia PICkit-2
na rzecz nowych narzędzi. Jednak zapewne
nie nastąpi to z dnia na dzień i użytkownicy
PICkit-2 (i sic!!! jego klonów) nie powinni
już biec do sklepu po zakup czegoś nowego.
Podczas użytkowania obu programato-
rów miałem wrażenie, że PICkit-3 jeszcze ma
pewne choroby „wieku dziecięcego”. Trosz-
kę irytuje na przykład oczekiwanie na połą-
czenie z programatorem po zmianie rodziny
programowanych układów, jednak w  nor-
malnej sytuacji po wyborze typu mikrokon-
Nowy programator Microchipa ma nieco
inną ilozoię pracy. Jego sercem jest mocniej-
szy mikrokontroler z serii PIC24F, a co za tym
idzie, można się spodziewać rozszerzonej
funkcjonalności. Pierwszymi cechami użyt-
kowymi, które od razu rzucają się w oczy
są brak detekcji obecności napięcia zasila-
nia układu programowanego oraz wymiana
irmware programatora przy każdej zmianie
serii programowanego mikrokontrolera. Na
próżno też poszukiwałem dodatkowej płyty,
która była dostępna w moim zestawie z PIC-
kit-2, a zawierającej program umożliwiający
obsługę PICkit-3 bez uruchamiania MPLAB
IDE. Po krótkim śledztwie okazało się, że
taka aplikacja w wersji beta jest dostępna na
stronie Microchip i nosi nazwę PICkit-3 De-
62
ELEKTRONIKA PRAKTYCZNA 1/2011
950431749.033.png 950431749.034.png 950431749.035.png 950431749.036.png 950431749.037.png 950431749.038.png 950431749.039.png 950431749.040.png 950431749.041.png 950431749.042.png 950431749.043.png 950431749.044.png 950431749.045.png 950431749.046.png 950431749.047.png 950431749.048.png 950431749.049.png 950431749.050.png 950431749.052.png 950431749.053.png 950431749.054.png 950431749.055.png 950431749.056.png 950431749.057.png 950431749.058.png 950431749.059.png 950431749.060.png 950431749.061.png 950431749.063.png 950431749.064.png 950431749.065.png 950431749.066.png 950431749.067.png 950431749.068.png 950431749.069.png 950431749.070.png 950431749.071.png 950431749.072.png 950431749.074.png 950431749.075.png 950431749.076.png 950431749.077.png 950431749.078.png 950431749.079.png 950431749.080.png 950431749.081.png 950431749.082.png 950431749.083.png
 
PICkit-2 czy PICkit-3?
złotych użytkownik zyskuje rozszerzenie
listy programowanych układów o  co naj-
mniej kilkadziesiąt pozycji. Czy będzie tego
używał? Trudno powiedzieć. Ja ostatecznie
zdecydowałem się na zakup PICkit-3, a to
ze względu na jego elastyczność i obietnicę
wsparcia ze strony Microchip.
Wyposażenie dodatkowe
Programatory PICkit są oferowane rów-
nież w zestawach PICkit Debug Express lub
Starter Kit z  dodatkowym wyposażeniem.
Za niewielką dopłatą w stosunku do ceny
samego programatora, można nabyć go z nie-
skomplikowaną płytką startową. Oprócz
mikrokontrolera, są na niej dostępne diody
LED, przycisk, potencjometr, punkty lutow-
nicze itp. Korzystając z tej płytki i lekcji do-
stępnych na dodatkowej płycie CD lub stro-
nie internetowej Microchipa można szybko
zapoznać się z  podstawowymi cechami
funkcjonalnymi oraz metodami programo-
wania mikrokontrolerów PIC. Jeśli układ jest
w podstawce, to dodatkową płytkę można też
zastosować jako rodzaj adaptera dla progra-
mowanych układów.
Aktualnie PICkit-2 Starter Kit jest ofero-
wany z płytką zawierającą PIC16F690 ( foto-
graia   1 ), natomiast PICkit-3 Debug Express
z PIC18F45K20 ( fotograia   2 ). Obie płytki
mają skromne wyposażenie ograniczające
się do podstawowych komponentów. Jeśli
jednak będzie to za mało, to można nabyć
rozbudowaną płytkę demonstracyjną PIC-
DEM Lab Development Board ( fotograia   3 ),
za pomocą której można już wykonać szereg
układów prototypowych. Wydaje się ona być
produktem, którym szczególnie mogą być
zainteresowane szkoły mające w programach
zajęć programowanie mikrokontrolerów. Do-
stępne pole kontaktowe umożliwia bowiem
szybkie wykonanie lub zmianę połączeń
i wielokrotne użycie płytki.
Jacek Bogusz, EP
jacek.bogusz@ep.com.pl
Fotograia 1. Płytka z mikrokontrolerem PIC16F690 z zestawu PICkit-2 Starter Kit
(DV164120)
Fotograia 2. Płytka z mikrokontrolerem PIC18F45K20 z zestawu PICkit-3 Debug
Express (DV164131)
trolera zapewne nie zmieniałbym go przez
co najmniej kilka tygodni. Gdy używałem
PICkit-2, to ten również szybciej „domyślił
się”, które bity wymagają przeprogramowa-
nia. W przypadku PICkit-3 musiałem tę (co
prawda niezbyt skomplikowaną) pracę wy-
konać samodzielnie.
Porównanie szybkości zapisu pamięci
mikrokontrolerów nie wykazuje istotnych
różnic. Co ciekawe, niektóre z nich PICkit-2
wydaje się zapisywać wolniej, a  niektóre
szybciej. Jednak różnice są niewielkie i oscy-
lują w okolicach pojedynczych sekund i tak
naprawdę przy pracy nad prototypem nie
będą miały żadnego znaczenia.
Nieco drażnił mnie sposób sygnalizacji
za pomocą diod LED. Używając PICkit-3, gdy
leżał nieco dalej i pod niekorzystnym kątem,
zawsze miałem wątpliwości czy dioda LED
świeci się swoim światłem, czy też światłem
sąsiedniej diody. Zapewne jest temu winna
przeźroczysta obudowa, ponieważ w PIC-
kit-2 nie dostrzegłem tego problemu. Pro-
blem rozwiązywało ustawienie programato-
ra pod odpowiednim kątem lub zbliżenie go. Fotograia 3. Zestaw ewaluacyjny PICDEM Lab Development Board (DM163035)
Jest to jednak wada kosmetyczna, która nie
wpływa istotnie na walory użytkowe.
Cena detaliczna oryginalnego PICkit-3
waha się około 200 złotych, natomiast PIC-
kit-2 około 130 złotych (ceny brutto) i może
zależeć od kursu dolara. Za dodatkowe 70
63
ELEKTRONIKA PRAKTYCZNA 1/2011
950431749.085.png
Zgłoś jeśli naruszono regulamin