Uruchamiamy CA80-mini. Część druga.

  Ostatnio uruchamialiśmy płytkę CA80-mini z monitorem w pamięci stałej. A co zrobić, gdy tej pamięci nie mamy?

CA80 bootloader
Różne wersje płytki CA80-boot.


Za pomocą płytki "CA80 - boot", która nosiła różne robocze nazwy (np. "CA80 bez ROM" lub "CA80 without ROM..."), możemy tę pamięć zastąpić. Jednak wcześniej trzeba ją zmontować i uruchomić. Nie musimy lutować wszystkich elementów, bo nie zawsze są one potrzebne. Na początku wystarczy ATmega32A, kwarc z kondensatorami 22p i kilka kondensatorów odsprzęgających (C1, C3 i C6) oraz rezystory podciągające SPI.  Jeżeli nie mamy możliwości wcześniejszego zaprogramowania mikrokontrolera, potrzebne będzie też złącze SD-MOD i goldpiny do zworki PROG/SD oraz złącze Serial. Złącze SD-MOD później posłuży do podłączenia modułu z gniazdem karty SD, więc warto przemyśleć sposób jego montażu, żeby nie było konieczności poprawek. Na płytce czeka nas też "pułapka" w postaci odwrotnie umieszczonego U32. Z kolei U31 występuje w różnych wersjach - potrzebna jest szersza (SO16W).  Proszę uważnie przyjrzeć się płytce przed lutowaniem.

Arduino as programer
Z tego zestawu wystarczy nam Arduino i płytka stykowa.


Do programowania użyjemy Arduino IDE rozszerzone o "MightyCore", bo podstawowa wersja nie obsługuje naszego mikrokontrolera. Jak dodać rozszerzenie? Jest wiele poradników nawet po polsku. Najpierw wgrywamy bootloader. Do tego wygodne jest podłączenie SD-MOD, bo tam jest interfejs SPI. Na piny PROG/SD zakładamy zworkę w pozycji "PROG" (zamiast CS - RESET). Jako programatora użyjemy dowolne Arduino np. Uno, do którego wgrywamy "Arduino as ISP". Podłączenie jest bardzo proste - tylko sześć przewodów, które po "wypaleniu" bootloadera nie będzie więcej potrzebne.

CA80 - boot
Okno "Serial monitor" należy zamknąć przed wypalaniem.

CA80 - boot ready to use.
Pomarańczowy komunikat oznaczający sukces.


Kolejnym krokiem będzie wgranie właściwego programu. Jak zwykle polecam metodę małych kroków, więc najlepiej użyć wersję ładującą monitor z flash (bez SD). Programujemy za pomocą modułu FTDI232 poprzez złącze Serial bez podłączania CA80-mini.

Old version CA80 BOOT
Jeszcze starsza wersja płytki.

 

        Po przesłaniu programu od razu na złączu ZS pojawią się sygnały na pinach RESET, CLK, D0..D7, a po kilku sekundach również NMI. Najlepiej obejrzeć je analizatorem logicznym, ale wystarczy multimetr z częstościomierzem.

 

 

CA80 CLK
CA80 CLK w okienku analizatora logicznego.

 

 

CA80 NMI
NMI.
 


NMI CA80
NMI CA80 zmierzony multimetrem.


 

        Na pinie CLK powinno ustalić się 4 MHz, a NMI 500 Hz. W tym samym czasie przez UART (Serial) są wysyłane komunikaty o przebiegu pracy programu.

CA80 without ROM
Monitor CA80 gotowy do załadowania.

 

        Jeżeli wszystko się powiedzie, jesteśmy gotowi do połączenia płytek ze sobą, jednak nie każdy procesor będzie współpracował z bootloaderem. W przykładzie z części pierwszej widać stary Z8400AB1 (STM), który jest odpowiednikiem Z0840004PSC. Niestety trzeba go zastąpić np. Z84C0004PEC (trzy ostatnie litery nie mają znaczenia - oznaczają rodzaj obudowy). Dwie cyfry poprzedzające te litery określają maksymalną częstotliwość taktowania w MHz. (04 to 4MHz, można spotkać 06, 08, 10 a nawet 20). Najważniejsza jest litera C, bo potrzebujemy wersję CMOS. Na dziś wystarczy... 😎



Komentarze

Popularne posty z tego bloga

Uruchamiamy CA80 na RCbus.

Magnetofon CA80.