icprog, IcProg pomoc, Opios programu IcProg


OPIS PROGRAMU IC-Prog

Program IC-Prog (ostatnia wersja 1 .04) autorstwa Bonny Gizjen'a współpracuje min. z programatorami kompatybilnymi z JDM, LUDIPIPO (tylko w wersji z zasilaniem zewnętrznym), z PHOENIX'em oraz z SMOUSE.

0x08 graphic

Przegląd funkcji programu:

0x08 graphic
Menu File

Open File... Ta funkcja ładuje kod programu i dane pamięci z wybranego pliku.

IcProg obsługuje pliki 8 i 16-bit Intel hex, pliki typu object i binarne.

Uwaga: niekiedy zdarza się plik hex z nietypowym rozszerzeniem, aby go załadować należy wybrać polecenie any files.

Save File As... Zapisuje zawartość bufora do pliku hex. Plik zawiera kod programu i dane pamięci, łącznie z zabezpieczeniami (fuses), oraz położeniem ID.

Open Data File... Ładuje jedynie dane pamięci do bufora programu.

Recent Files Znajdziesz tu ostatnio używane pliki.

Print Drukuje bufor kodu programu i danych, poprzedzając go nazwą pliku, typem układu i sumą kontrolną.

0x08 graphic
Menu Edit

Fill Buffer Wypełnia bufor kodu programu pojedynczą wartością , wartość ta może być zdefiniowana dziesiętnie, heksagonalnie, bądź w kodzie ASCI.

Fill Buffer from... Jak wyżej, lecz w przedziale od do zdefiniowanego adresu.

Copy From Buffer Po zaznaczeniu jakiejś wartości kopiuje ją do schowka.

Paste To Buffer Wkleja wartość ze schowka w zaznaczone miejsce.

Cztery powyższe polecenia odnoszą się do okna z kodem programu.

Następne cztery polecenia w tym menu są analogiczne do powyższych, lecz wykonują operacje na danych pamięci.

0x08 graphic
Menu Buffer

Active Buffer Pozwala na przechodzenie pomiędzy buforami (program oferuje pięć buforów).

Compare Porównuje zawartość kodu programu i danych umieszczonych w różnych buforach, wskazując wszelkie niezgodności.

0x08 graphic
Menu Settings

Device Wybór rodzaju i konkretnego symbolu układu. Trzeba przyznać, że obecna wersja (1.04) ma imponująco długą listę obsługiwanych układów, szczególnie mikrokontrolerów rodziny PIC.

0x08 graphic
Recent Devices To lista ostatnio używanych układów.

0x08 graphic
Hardware

Programmer Tu wybieramy programator z jakim ma współpracować program.

Ports Numer portu COM do którego mamy przyłączony programator.

I/O Delay Opóźnienie wejścia/wyjścia (domyślna wartość 10, najczęściej odpowiednia)

Interface Typ interfejsu, Direct I/O- bezpośredni dostęp do portu, dla Win95, Win98/ME, Windows API- Application Programming Interface, dla WinNT/2000.

Communication Pozwala programowo odwrócić wszystkie z sygnałów biegnących do i z programatora (przydatne np. w przypadku współpracy z JDM, gdzie należy odwrócić VCC)

0x08 graphic
Hardware Check

Po zaznaczeniu Enable Data Out powinno zaznaczyć się Data In, jest to potwierdzenie prawidłowej współpracy oprogramowania z programatorem. Pozostałych funkcji używamy w przypadku mierzenia sygnałów w podstawce programatora.

Options Konfiguracja programu, znaczenia zakładek nie będę tu wyjaśniał, gdyż program działa z domyślnymi ustawieniami, a jeśli będziesz chciał coś tu zmienić, zapewne będziesz wiedział co robisz

Nadmienię jedynie, że podczas współpracy z Phoenix'em należy w zakładce Smartcard wybrać port COM, częstotliwość kwarcu (3,58 MHz dla Phoenix'a), oraz rodzaj układu do którego ładujemy plik Loader.hex.

SmartCard (Phoenix) Opcji tej używamy podczas programowania pamięci na kartach GoldCard/WaferCard za pomocą programatora Phoenix.

Clear Settings Przywraca domyślne ustawienia programu.

0x08 graphic
Menu Command

Read All Czytanie zawartości układu. Zabezpieczenia (fuses) zostaną ustawione zgodnie z zapisanymi w układzie. Jeśli układ został zaprogramowany z zabezpieczeniem przed kopiowaniem (CP), bufor wypełni się wartościami nieprawdziwymi, np. dla układu PIC 16C84 okno z danymi pamięci (Eeprom Data) wypełni się wartościami 7F, zawartości innych układów mogą być odczytane jako zera.

Program All Zapisywanie układu zawartością bufora, łącznie z całą konfiguracją widoczną w oknie głównym programu. Bufor może zawierać dane pozyskane z odczytania wcześniej zapisanego układu, bądź dane z pliku (polecenie Open File...).

Program Config Zapisuje do chipa samą konfigurację widoczną w prawej części okna programu.

Erase All Kasuje zawartość układu.

Blank Check To polecenie czyta zawartość układu i potwierdza (lub nie) czy układ jest czysty (niezapisany żadnymi danymi).

Uwaga: Układ zapisany zerami nie jest niezapisany

Verify Sprawdza zgodność zawartości układu z danymi w buforze programu.

Uwaga: Polecenie to nie sprawdza zgodności zabezpieczeń (Fuses), a jedynie kod i dane.

Smartcard Wizard Jest to kreator programowania pamięci na kartach goldkard/waferkard, gdzie pamięć nie jest połączona fizycznie ze stykami karty, a jedynie poprzez mikrokontroler.

Zaprogramowanie takiej pamięci wymaga zapisania PIC'a odpowiednim kodem (np. loader.hex) umożliwiającym dostęp do zawartości eepromu.

Tok postępowania:

  1. Ustaw w zakładce Settings-Options-Smartkard nr portu COM do którego zamierzasz podłączyć programator Phoenix, ustaw również typ układu na 16F84, a częstotliwość oscylatora na 3,58MHz

  2. Uruchom Smartcard Wizard, podłącz programator układów PIC (nie Phoenix, a np. JDM, lub Ludipipo) i włóż uprzednio wyjęty z karty układ PIC 16F84 do podstawki programatora, jeśli posiadasz programator PIC'ów ze złączem smartcard nie musisz wyjmować układu, a jedynie włożyć kartę.

  3. Teraz PIC zostanie zaprogramowany kodem umożliwiającym późniejszą modyfikację eepromu

  4. Włóż układ do karty, a kartę do Phoenix'a którego należy podłączyć do wcześniej wybranego portu COM.

  5. Teraz eeprom karty zostanie zapisany wybranym plikiem hex lub bin.

  6. Włóż ponownie PIC'a w dedykowany mu programator i zapisz go wybranym przez siebie plikiem.

Menu Tools

CRD Upload Pozwala na edycję eepromu karty programatorem Phoenix przy użyciu plików *.crd.

Pliki takie mogą przykładowo usuwać pin karty, zawierać aktualizację kluczy dla danego operatora, zmieniać datę uprawnień.

0x08 graphic
Menu View

Assembler Podgląd zawartości bufora w Asemblerze, niestety, w tym widoku polecenie Compare nie wskazuje różnic między zawartością buforów.

Hex View Standardowy, hexagonalny sposób wyświetlania kodu i danych.

Device Position Pokazuje jak umieścić układ w podstawce zależnie od rodzaju programatora wybranego w zakładce Hardware, jak i typu układu wybranego w zakładce Device.

Device Information Wyświetla informacje o układzie; nazwę, typ, rozmiar i strukturę pamięci, oraz ile nóżek posiada.

Refresh Odświeża zawartość okna programu.

W SKRÓCIE DLA PIC 16F84

Na początku konfigurujemy program Settings - Hardware tak, aby współpracował z programatorem:

Dla programatora JDM należy zaznaczyć opcję „Invert VCC”, a w przypadku

programatora ludipipo lub multipipo wszystkie pola powinny być odznaczone.

Teraz sprawdzamy poprawność naszej konfiguracji; Settings - Hardware Check, po zaznaczeniu Enable Data Out powinno zaznaczyć się Data In, jest to potwierdzenie prawidłowej współpracy oprogramowania z programatorem

Wybieramy rodzaj programowanego układu Settings - Device.

Teraz ładujemy plik przeznaczony do zaprogramowania układu, File - Open file.

Niżej opisane opcje dostępne są w prawej części głównego okna programu, należy je ustawić po załadowaniu odpowiedniego pliku *.hex, lub *.bin, gdyż w innym przypadku ulegną zmianie.

Wybór oscylatora:

Zgodnie ze specyfikacją producenta PIC 16x84 programuje się przy oscylatorze XT.

Bezpieczniki (Fuses):

WDT - (Watchdog timer) - do naszych zastosowań zawsze wyłączony

PWRT - (Power on reset)

Włączyć dla układu 16C84

Wyłączyć dla układu 16F84

CP - Code protect, proponuję pozostawić wyłączone, co umożliwi weryfikację prawidłowości programowania.

Jeśli programujemy mikrokontroler PIC który był wcześniej zaprogramowany z użyciem Code protect należy najpierw skasować jego zawartość poleceniem Erase All.

Układ programujemy poleceniem Program All.

IcProg na domyślnych ustawieniach zweryfikuje nam poprawność zaprogramowania, w przypadku zgodności proces zakończy się komunikatem Device successfully verified!

Powyższa instrukcja powstała w oparciu o oryginalny Help for IC-Prog, oraz

doświadczenia autora nabyte podczas pracy z programem.

marekbialy@wp.pl

0x01 graphic



Wyszukiwarka