-
Data: 2018-04-30 10:15:50
Temat: Debugowanie systemu na 8080
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Skończyłem ostatnio składać prosty system mikroprocesorowy na polskim
MCY7880. Płytka poza procesorem i układem zasilania zawiera także
UCY74S424, UCY74S428, UCY74S405, kilka sztuk UCY74S$12 (bufor szyny
adresowej i fragment dekodera adresów). Do tego pamięci i trochę
drobnicy TTL.
W chwili obecnej podłączona jest wersja minimalistyczna - z podstawek
wyjęty dekoder adresów, linia CS EPROM-u na stałe podłączona do masy.
Sprawdziłem parę razy wszystkie połączenia i wygląda na to, że nie
popełniłem żadnego błędu lutując kynar. Jeszcze przed włożeniem pamięci
EPROM do postawki sprawdziłem najważniejsze linie oscyloskopem i
wszystko zdawało się być w porządku - na liniach adresowych pojawiały
się regularne przebiegi, wskazujące na inkrementację adresu. Regularne
impulsy na liniach CS sugerowały także poprawne działanie dekodera adresów.
Następne zaprogramowałem EPROM prostym programem, stworzonym za pomocą
webowego asemblera (asm80.com).
ORG 00000H
NOP
NOP
NOP
NOP
START:
NOP
NOP
MVI A, 80H
OUT 00H
NOP
NOP
JMP START
Po włożeniu EPROM-u zamilkły górne linie magistrali adresowej, co
wskazuje na to, że faktycznie wykonuje się jakaś pętla.
Rozkaz OUT 00H miał zapisać nową wartość do jednego z UCY74S412, okazało
się jednak, że linia nie została ustawiona.
Zacząłem się więc bliżej przyglądać przebiegom za pomocą prostego
analizatora logicznego. Okazuje się, że:
1) Linia I/OW nie zmienia wcale swojego stanu. A przecież powinna
ustawić się w stanie niskim przy zapisie do IO.
2) Linia MEMR jest aktywna prawie cały czas (co mnie specjalnie nie dziwi).
3) Na linii MEMW co jakieś 20ms pojawiają się dwa impulsy stanu
niskiego. Chyba nie powinno ich tam być? Przecież w moim kodzie nie
występują żadne operacje zapisu do pamięci, nie jest skonfigurowany stos
itp.
Uprzedzając potencjalne odpowiedzi - nie, nie zamieniłem MEMW i I/OW
miejscami. Zresztą wspomniane impulsy występują również po
zakomentowaniu linijki z poleceniem OUT.
Próbowałem zamienić MCY7880 na procesor produkcji NEC. Podmieniłem też
MCY74S428 na inny egzemplarz, ale ne przyniosło to żadnego rezultatu.
Ktoś ma jakiś pomysł odnośnie tego, co może być nie tak? Co mogę
sprawdzić? Może problem jest software'owy i najzwyczajniej w świecie coś
pominąłem?
Następne wpisy z tego wątku
- 30.04.18 11:03 s...@g...com
- 30.04.18 11:06 s...@g...com
- 30.04.18 22:21 J.F.
- 01.05.18 10:02 Atlantis
- 01.05.18 11:03 J.F.
- 01.05.18 11:50 Atlantis
- 01.05.18 12:33 J.F.
- 01.05.18 13:22 Atlantis
- 01.05.18 13:41 J.F.
- 01.05.18 13:48 Atlantis
Najnowsze wątki z tej grupy
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
Najnowsze wątki
- 2025-07-19 Zakrzewo => SAP HCM Consultant <=
- 2025-07-19 Poznań => Konsultant SAP HCM <=
- 2025-07-19 Poznań => SAP HCR Consultant <=
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=
- 2025-07-18 Warszawa => Sales Director (Cloud solutions) <=
- 2025-07-18 Spalinowa trauma
- 2025-07-18 Polska => Senior Key Account Manager <=
- 2025-07-18 Białystok => Programista Kotlin <=
- 2025-07-18 Szczecin => Key Account Manager IT <=
- 2025-07-18 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-18 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-18 Lublin => Delphi Programmer <=