Programowanie karty - za pomocą programu FunProm

                                 

         Poniższy opis procedury programowania opracowałem na podstawie podobnego opisu zamieszczonego na stronie http://www.funcard.net/ , głównie wykorzystałem zawarte tam zdjęcia okien programu FunProm.

Uwaga !! Poniższy opis (a szczególnie niektóre zdjęcia) odnosi się do FunProm'a 2.27 oraz do FunSoft SECA beta 1. Dla FunSoft SECA beta 2 trzeba użyć FunProm (2.30/2.32) a dla v. 1.00 stosujemy FunProm (2.33 / 2.38 / 2.42 / 2.44 / 2.47 / 2.49) i tam gdzie to możliwe w poniższym opisie uwzględniono stosowne zmiany.

Przygotowanie karty do procedury programowania.

        Na początku podłączamy programator do portu drukarki LPT1. Jeśli w programatorze masz złącze DB25F to stosujesz kabel jak przedstawiony na stronie a jeśli złącze DB25M to stosujemy normalny kabel DB25F - DB25M. Teraz wkładamy kartę do programatora tą stroną do dołu, gdzie jest 7(8) styków (procesorem w dół). Oczywiście należy się jeszcze zaopatrzyć w ostatnią wersję FunProm'a i oprogramowania FunSoft SECA beta 1 / beta 2 / v. 1.00 - skąd? -> szczegóły podałem na stronie poświęconej budowie karty

Mamy już potrzebne pliki. Po rozpakowaniu archiwum FunProm'a powinno wyglądać tak:

A oprogramowania  "Funseca_b1" tak:

a "Funseca_b2" tak:

- a w nowszych wersjach softu oczywiście pliki mogą być inne i może być ich więcej. 

Polecam teraz przeczytać dokumentację, która jest zawarta z tymi programami, znajdziesz tam wiele odpowiedzi na podstawowe pytania. Po rozpakowaniu FunProm uruchom setup.exe. Program zostanie zainstalowany w katalogu C:\Program Files\WhoCares\FunProm.
Proponuje utworzenie podkatalogu dla oprogramowania FunSoft. C:\Program Files\WhoCares\FunProm\Seca keys.

Teraz należy skopiować oprogramowanie FunSoft b1 / b2/ 1.00 do katalogu  C:\Program Files\WhoCares\FunProm\Seca keys. Dokładnie chodzi o pliki : ee_ext.hex i flash.hex (a w funseca b2 / v. 1.00 dodatkowo plik ee_int.hex). 

Uruchamiamy teraz FunProm'a klikając na Start -> Programy -> FunProm -> FunProm, powinniśmy teraz zobaczyć (dla wersji 2.27):

Gdy wybierzemy zakładkę SECA, powinniśmy zobaczyć cos takiego:

A klikając na zakładce Programmer zobaczymy to:

A na zakładce Download to:

W nowszych wersjach programu ( np. 2.44 ) nie zobaczysz kilku z powyższych zakładek- potrzebne zakładki pojawiają się w razie potrzeby, np. ta do edycji kluczy pojawi się dopiero po otwarciu pliku ext. eeprom. Zakładka do edycji kluczy może się nie pojawić (mimo otwarcia pliku ext. eeprom) wtedy, gdy ten właśnie plik zawiera błędy (ma błędną strukturę).

Przechodzimy teraz do Programowania karty SECA

Klikamy na Flash file, wybieramy plik flash.hex z katalogu C:\Program Files\WhoCares\FunProm\Seca keys.
Klikamy na Ext. eeprom, wybieramy plik ee_ext.hex z katalogu C:\Program Files\WhoCares\FunProm\Seca keys.
Pole Int. eeprom zostawiamy puste ponieważ plik ee_int.hex nie jest dla funseca b1 wymagany. 

Gdy używmy funseca b2 / v. 1.00 to:

Klikamy na Int. eeprom, wybieramy plik ee_int.hex z katalogu C:\Program Files\WhoCares\FunProm\Seca keys.

Dla FunS**A Beta1 Fun-o-matic / Beta 2 plik dla zew. eeproma (Ext. eeprom) bierzemy z Seca soft for the Funcard, beta 2 - nie jest tu wymagany plik dla wew. eeproma  (Int. eeprom) - to pole zostawiamy puste !!!

 
          Przed zaprogramowaniem karty możemy jeszcze coś skontrolować, mianowicie to co mamy włączone o co nie na karcie (mam na myśli LEDy i ewentualnie dodatkowy wyświetlacz LCD) - zapewnia nam to nowa wersja softu FunSoft S**A v1.00. Kontrolę tę sprawujemy przez pozycję w menu "Edit SECA -> Config" w programie FunProm (2.33 lub nowszym). Więcej szczegółów na temat wyświetlacza LCD napisałem na stronie poświęconej wyświetlaczowi LCD.

        Sprawdzamy czy został wybrany prawidłowy port LPT – zakładka Programmer -> Parallell Port: – w większości przypadków będzie to jedyny możliwy o adresie 0x0378 – w komputerach z większą ilością portów równoległych należy wybrać adres właściwego (do którego podłączony jest programator). W tej samej zakładce upewniamy się także, czy wybrany Processor: to AT90S8515 i Eeprom type: 2464/2465.

        Upewniamy się teraz, czy karta jest włożona do programatora w sposób jak opisałem powyżej, następnie naciskamy przycisk "Program". Powinna się zapalić dioda LED na programatorze, oznacza to otwarcie portu. Teraz powinien zostać zidentyfikowany typ procesora AVR, następnie zostanie załadowany do karty tzw. loader. Loader ten zostaje teraz uruchomiony - dzięki niemu jest możliwe programowanie eeproma przez procesor (najdłuższa czynność w całym procesie programowania karty). W trakcie programowania eepromu powinna zapalić się czerwona i żółta dioda na karcie (dla przypomnienia: podczas odczytu czerwona + zielona). Teraz zaprogramuje się właściwy układ: AT90S8515. Gdy zgaśnie dioda na programatorze (następuje zamknięcie portu LPT ) i pojawi się komunikat: Device programmed - możemy wyjąc kartę i włożyć ją do ... każdy już będzie wiedział co zrobić dalej :-).  Jeśli proces programowania zatrzymuje się na eepromie z komunikatem błędu weryfikacji (Verification error at adress 00:00 ... ) to tą weryfikację przed procedurą programowania należy wyłączyć - program przy pierwszym uruchomieniu się o to powinien spytać. Przypadek "zawieszenia" się procedury programowania też na etapie eeproma opisałem w opisie budowy karty.

Można także zaprogramować samego Atmela - wtedy z powyższych operacji pomijamy wybór pliku dla Ext. eeprom. Układ można zaprogramować oprócz na karcie także bezpośrednio w podstawce programatora (jeśli taka oczywiście istnieje). W tedy wciskamy lekko procesor do podstawki (należy zwrócić uwagę aby wycięcie w podstawce było po tej samej stronie co wycięcie w procesorze).

Edycja kluczy SECA

        Gdy załadujesz pliki SECA z C:\Program Files\WhoCares\FunProm\Seca keys powinieneś zobaczyć poniższy ekran.

Po prawej stronie okna widzisz następujące wpisy::
Key #00 -P oznacza klucz Primary
Key #00 -S oznacza klucz Secondary
Key #01 -P
oznacza klucz Primary
Key #01 -S
oznacza klucz Secondary i tak aż do końca ….

Klucze management to zazwyczaj #01 -P lub S do #03 -P lub S (mogą być oba) a klucze operacyjne to #0A do #0F.

Aby wyedytować klucz (0C, 0D, 0E), kliknij dwukrotnie na danym kluczu, to samo dotyczy MK1 -> w Key #01 -P .

Jeśli podwójnie klikniemy na nazwie provider'a to możemy wyedytować UA (Unique Address), ma on znaczenie tylko dla providera nr. 0 (SECA) - jest to po prostu zwracany numer seryjny karty gdy żąda tego dekoder. SA (Shared Address) i CUSTWP (Customer Word Pointer) to PPUA (Programs Providers User Address). Pierwsze 3 bajty wpisujemy do SA a ostatni w CUSTWP. "Provider matrix:" to po prostu PBM (Package Bitmap) -> ośmio bajtowe słowo (0-7) które określa nasz stan abonamentu na danego providera. "Subscrition ends:" -> data w formacie rok_miesiąc_dzień.

Należy jeszcze dodać, że obecnie Aston SECA CI v1.03 może obsłużyć tylko 8 lub 9 provider'ów. Tego problemu nie ma z nowszymi wersjami Astona.

Pamiętajmy, żeby zapisać plik po edycji i przed programowaniem.

Otrzymałem jeszcze informacje o tym że FunProm może działać nieprawidłowo na komputerze z procesorem AMD Duron.

To już praktycznie koniec. Ten opis zamieściłem głównie dla osób które słabo znają język angielski i trudno jest im czytać podobny opis na stronie: FunProm - chociaż praktycznie można się połapać po samych zdjęciach okienek programu.

Ostatnia aktualizacja: 28.10.2001

Wróć