Programator równoległy procesorów jednoukładowych AT89C2051

Opis schematu ideowego:
Na układzie 74138 zbudowany jest dekoder adresowy. Rejestr sprzętowy $D500 do zapisu
i odczytu, to układy: 74574 i 74245. Do tego rejestru wpisuje się daną do zaprogramowania. W czasie weryfikacji, lub
odczytu danych z pamięci FEEPROM procesora ATMEL, rejestr ten jest w stanie wysokiej impedancji. Dane wystawiane przez
procesor AT, przez jego PORT1, są poprzez bramę 74245 odczytywane przez procedury programatora.
Rejestr sprzętowy zbudowany na układzie 74273 dostępny jest pod adresem: $D501. Jest
to rejestr tylko do zapisu Jest rejestrem sterującym programtor. Wszelkie operacje wymagają odpowiedniego sterowania
nim.
Rejestr sterujący $D501 włączeniu zasilania, jest automatycznie zerowany. Programator jest tym samym ustawiany w
stan Odczyt. Celowo dobrane są odpowiednie bity do sterowania procesem programowania, by zgodne były z pinami
PORTU3 ATMEL'a. Tablica opisująca sygnały podawane na wejścia PORTU3 opisane są w osobnej części niniejszej instrukcji.
Działanie bitów rejestru $D501:
- bit0, bit1 - ustawianie napięcia programującego doprowadzonego do pinu1 ATMEL'a
| bit1 | bit0 | napięcie |
| 0 | 0 | 0V |
| 0 | 1 | +5V |
| 1 | 0 | 0V |
| 1 | 1 | +12V |
- bit2 - generacja impulsu programującego. Powolność wykonywania instrukcji przez Basic jest gwarantem, że kolejne
impulsy programujące pojawiają się w odstępach conajmniej 10-cio milisekundowych
- bit3, bit4, bit5, bit7 - kod wykonywanej operacji
| bit7 | bit5 | bit4 | bit3 | operacja |
| 1 | 1 | 1 | 1 | zapis danych |
| 1 | 1 | 0 | 0 | odczyt danych |
| 1 | 1 | 1 | 1 | protect bit1 |
| 0 | 0 | 1 | 1 | protect bit2 |
| 0 | 0 | 0 | 1 | kasowanie |
| 0 | 0 | 0 | 0 | odczyt sygnatury |
- bit6 - generacja impulsu dla wewnętrznego licznika adresów komórek FEEPROM. Dostęp do komórek jest szeregowy, więc w
zasadzie przed każdym uruchomieniem procesu programowania lub weryfikacji należy wykonać reset procesora ATMEL.
Na bramkach A,B, trzech tranzystorach diodach Zenera, opornikach, zbudowany jest
przełącznik, doprowadzający odpowiednie napięcie do pinu1 procesora.
Działanie przełącznika:
| bit1 | bit0 | ($D501) |
| 0 | 0 | Otwarte tranzystory T1,T2. T1 zwiera do masy bazę T3. Napięcie w punkcie X=0V |
| 0 | 1 | Tranzystor T1 zatkany, tranzystor T2 otwartu. Do bazy T3 podłączona dioda Zenera C5V6. Napięcie w punkcie X=5V |
| 1 | 0 | Tranzystor T1 otwarty, tranzystor T2 zatkany. T1 zwiera do masy bazę T3. Napięcie w punkcie X=0V |
| 1 | 1 | Tranzysory T1, T2 są zatkane Dioda Zenera C12V + dowolna dioda krzemowa podłączone do bazy T3 powodują że w punkcie X napięcia = 12V |
Spis elementów elektronicznych
- 7404 - 1szt
- 74138 - 1szt
- 74245 - 1szt
- 74273 - 1szt
- 74574 - 1szt
- BC548 - 3szt
- R 3kohm -
4szt
- C 1uF - 1szt
- C5V6 - 1szt
- C12V - 1szt
- 1N... - 1szt
- podstawki pod układy scalone
- podstawka
(uniwersalna) dla AT89C2051 płytka uniwersalna
- zasilacz +15V/0.1A
Na schemacie ideowym nie zaznaczono doprowadzenia napięcia zasilającego +5V do układów scalonych! Dla AT89C2051 pin10=GND pin20=+5V dla pozostałych w/g katalogu.
Programator zbudowany jest jako kartridż. Wkłada się go do komputera ATARI w gniazdo
kartridża. Napięcie zasilające całość +5V pobierane jest z komputera. Napięcie +15V należy doprowadzić z oddzielnego
zasilacza, lub... zbudować przetwornicę, wtedy programator obejdzie się bez dodatkowego zasilacza +15V.
Zenon/DIAL
|