..:: Serious Magazine ::..
wydanie 14

  Wstępniak
  Fairy Castle czyli Zaklęty Zamek
  Piano v1.0
  Prezentacja Fairy Castle, Piano
  Klimat...
  Profesor
  Nowoczesne zakupy...
  Postać Atari - Nir Dary
  List do mnie i o mnie - Jabol
  Teraz ja!
  Dekoder
  Humor w Serious'ie
  Recenzja, polemika: Numen
  Nowy
  K.S.O. 2T06 TURBO
  Notka - TURBO 2T06
  Moja przygoda z Atari...
  Zabobony
  Sidcar
  Design Master
  Próbnik - trzecie oko elektronika
  Sterowanie biologiczne
  Jak się pozbyć...
  Grzebanie w popiele
  Nakładka
  Kontroler obrazu
  Jaka dokładność?
  Atari w Internecie
  LCD
  Gadżet
  Gadżet - demo
  Zestaw kilku prac

  Wyjście
Gadżet
do programatora ATMEL 89C2051


      W magazynie Serious #13 opisałem sposób wykonania programatora ATMEL'i 89C2051 (89C4051). Obiecałem że skonstruuję jakiś gadżet prosty w montażu, a obrazujący poprawne działanie programatora. Silić się na jakieś super konstrukcje nie mam zamiaru, bo każdy wymyśli sobie własne rozwiązania. 89C2051 jest na tyle elastyczny że pozwala na wiele bez zbytniego angażowania szarych komórek.

Wspomniany gadżet to nic innego jak prosty wyświetlacz siedmiosegmentowy sterowany właśnie ATMELem. Po zapoznaniu się z projektem niejeden padnie pewnie ze śmiechu, ale nie o to chodzi. Chodzi o ideę i zobrazowanie sposobu - jak to się robi. Tak na dobrą sprawę to gadżet nieco rozbudowany, zaopatrzony w powiedzmy dwa do czterech przycisków pozwoli wybrać jeden z wielu programów do uruchomienia. Wtedy... Jesteś na dyskotece, załączasz program -A- Coś zaczyna migać, bo rozumiem że masz to zawieszone na plecach. Bywalcy aż puchną z zazdrości. A cóż to takiego? A Ty spokojnym głosem... (tu powiesz co chcesz, tekst wymyślisz sobie sam). Jak w pobliżu będzie jakaś miła i urodziwa panienka, załączysz program -B- a wtedy... (no, za dużo chcielibyście wiedzieć :) ).

Schemat


Kompletujemy części
  • Procesor 89C2051 - 1szt
  • Wyświetlacz siedmiosegmentowy WA - 1szt
  • Dioda Zenera 3V3 - 1szt
  • Kondensatory 33pF - 2szt
  • Kondensator 1 F- 1szt (elektrolit)
Składamy całość w/g schematu, programujemy procesor 89C2051, przekładamy go do gadżetu. Zasilanie, wiadomo +5V i uruchamiamy.

Chodzi? Łoł! Ale efekt :)

Teraz co nieco o programie który należy władować do pamięci procesora. Pisany jest w assemblerze, obok są kody szesnastkowe, a poniżej te same kody w postaci dziesiętnej, łatwiej przyswajalne ludzkim zmysłom. Do dzieła, będzie to jeden program, program-demo. Migająca kreseczka na przemian zaświeca segmenty "a" i "b" wyświetlacza. Na podstawie zamieszczonego przykładu można samemu (kto zna assembler) rozbudować "miganie" i wzbogacić całość o efektowniejsze "demo" np. "kreseczka" płynie po całym wyświetlaczu, lub dwie kreseczki biegają tu i tam. Efekt powalający :)

Gdyby tak jeszcze dźwięk? Możliwe, ale nie tu i teraz. Na dodatek - STEREO - To nie przechwałki. Adres startu to oczywiście 0000.

      org 0

 ;program główny

 74 FE   start: mov a,#11111110    bin
 F5 90          mov p1,a
 11 0F          acall slow

 74 FD          mov a,#11111101    bin
 F5 90          mov p1,a
 11 0F          acall slow

 02 00 00       ljmp start

 ;podprogram spowalniający "bieganie"

 78 FF   slow:  mov r0,#FF
 79 FF          mov r1,#FF
 D9 FE   czek:  djnz r1,czek
 D8 FC          djnz r0,czek
 22             ret
                end
Kody DEC: 116,254,245,144,17,15,116,253,245,144,17,15,2,0,0,120,255,121,255,217,254,216,252,34

Do dzieła!

Programator do gniazda cartridża, do podstawki oczywiście procesor 89C2051. Włączamy komp i ładuje się program obsługujący programator (Serious #13). Po uruchomieniu programu należy do zmiennej A$ wpisać kody, np. tak:
  1. Klawiszem BREAK przerwij działanie programu
  2. Wpisz poniższą procedurę:
    
        11000 FOR I=1 TO 24
        11010 INPUT A
        11020 A$(I,I)=CHR$(A)
        11030 NEXT I
        11040 GO TO 50
    
  3. W trybie bezpośrednim wydaj polecenie: GO TO 11000 /RETURN
  4. Uruchomiona procedura oczekuje na wprowadzenie kodów, więc to zrób: 116, 254, 245... itd.
  5. Po wprowadzeniu, wybierz z MENU opcję -6- nastąpi zaprogramowanie pamięci FEEPROM procesora 89C20151
  6. Jeszcze tylko weryfikacja, opcja 7
  7. Przełożyć procesor do gadżetu, podpiąć zasilanie +5V
  8. Miga? Powinno. Mnie miga.
Ale się narobiło, i po co to komu. Hm... To tylko mała demonstracja co Atari TEŻ MOŻE! Ale by to było dobrze mieć jeszcze assembler obsługujący ATMEL'e :) Kto ma PC, może popróbować jak się to tam robi. Tak czy owak, programator też potrzebny, tyle że inny, PCtowski.

Swoje "wybryki" kodersko-elektroniczne opisał...

Zenon/DIAL


Następny artykuł Do góry Poprzedni artykuł