-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erj
e.net!feeder.erje.net!news.unit0.net!border1.nntp.ams1.giganews.com!nntp.gigane
ws.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-b-01.news.neo
strada.pl!news.neostrada.pl.POSTED!not-for-mail
Newsgroups: pl.misc.elektronika
X-Mozilla-News-Host: news://news.tpi.pl:119
From: Atlantis <m...@w...pl>
Subject: HD44780 na magistrali CPU przestaje działać
Date: Sun, 12 Jan 2020 20:13:19 +0100
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
Thunderbird/68.3.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: pl
Content-Transfer-Encoding: 8bit
Lines: 52
Message-ID: <5e1b6fcf$0$500$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 83.27.3.169
X-Trace: 1578856400 unt-rea-b-01.news.neostrada.pl 500 83.27.3.169:33746
X-Complaints-To: a...@n...neostrada.pl
Xref: news-archive.icm.edu.pl pl.misc.elektronika:749775
[ ukryj nagłówki ]Jakiś czas temu w celach czysto edukacyjnych zacząłem tworzyć pewien
projekt, którego celem miało być bliższe poznanie niskopoziomowego
działania systemów mikroprocesorowych oraz nauczenie się programowania w
asemblerze. W tym celu zacząłem przenosić jeden ze swoich wcześniejszych
projektów (zrealizowany oryginalnie na współczesnym, 32 bitowym MCU) na
archaiczną architekturę 6502. Konkretnie sercem układu była CMOS-owa
wersja mikroprocesora: WDC65C02.
Zacząłem od montażu płytki z CPU, pamięciami (EPROM i RAM), dekoderem
adresów oraz prostym portem na 373, aby dzięki kilku migającym diodom
wiedzieć, że sprzęt działa i program jest wykonywany. Diody zaczęły
migać, czyli wszystko ok.
Potem przyszła kolej na kolejną płytkę. Umieściłem na niej kolejny
(lokalny) dekoder adresów, wyświetlacz HD44780 oraz kilka przycisków
podłączonych do portu wejściowego, zrealizowanego na 74HCT245. Elementy
te pracują bezpośrednio na magistrali systemowej, a ich rejestry są
dostępna dla procesora w przestrzeni adresowej. Wszystko ruszyło z
miejsca - byłem w stanie wyświetlać tekst na wyświetlaczu, program
reagował na wciśnięcie przycisków.
Tutaj zrobiłem sobie przerwę i projekt na jakiś czas wylądował na półce.
Ostatnio jednak wykonałem trzecią płytkę. Ta także zawiera swój lokalny
dekoder adresów, a także m.in. timer (MC6840), UART (MOS6551), RTC oraz
GPIO (8255). Podłączyłem płytkę do wolnego gniazda na tasiemce, łącząc
ją z magistralą systemową. Podłączyłem zasilanie i... Urządzenie zaczęło
działać tylko połowicznie.
Krótko mówiąc:
1) Płyta procesorowa nadal działa, program się wykonuje, diody migają.
2) Płytka z wyświetlaczem nie działa. Wyświetlacz jest pustym ale chyba
przechodzi inicjalizację, bo właśnie jest pusty - nie widać na nim dwóch
rzędów złożonych z prostokątów, które wyświetlają się na
niezainicjowanym HD44780.
Na pewno nie ma tutaj konfliktu adresów, bo lokalny dekoder adresów na
trzeciej płytce jest sterowany osobną, niewykorzystywaną nigdzie indziej
linią CS z głównego dekodera - sprawdzałem.
Kolejną rzeczą, która przyszła mi do głowy było uszkodzenie któregoś z
układów, zakłócające działanie magistrali. Zacząłem je więc po kolei
usuwać. Dopiero po usunięciu wszystkich układów z podstawek (łącznie z
dekoderem adresów) udało mi się powrócić do punktu wyjścia - wyświetlacz
znów zaczął działać prawidłowo, ale tylko na chwilę. Dopóki płytka
(choćby pozbawiona układów) jest podłączona, układ działa niestabilnie -
wyświetlacz raz pokazuje tekst, a po ponownym odłączeniu i podłączeniu
zasilania już nie chce.
Dopiero fizyczne odłączenie nowej płytki od magistrali przywraca
normalną pracę.
Ktoś ma jakiś pomysł gdzie w ogóle mogę zacząć debugowanie?
Następne wpisy z tego wątku
- 19.01.20 17:16 Krzysiek
- 19.01.20 18:47 J.F.
- 21.01.20 12:59 Atlantis
- 21.01.20 13:27 J.F.
- 21.01.20 19:21 Atlantis
- 21.01.20 20:57 J.F.
- 27.01.20 11:57 Atlantis
Najnowsze wątki z tej grupy
- DC blocker i buczące toroidy
- Problemy TSMC cd
- Detektor
- Może tutaj się uda: [NTG] Elewacja / dziurawa Churka
- Falownik jednofazowy a żarówka
- Agregat i "legalność" instalacji
- Uziom
- (Ponownie) odkryto, że ładowanie pulsacyjne robi dobrze
- driver led ?
- Długość wtyku zasilającego ?5.5mm
- Szukam przetwornicy 55-40V>8-8.2V 3-4A
- Kindle - pierwsze wrażenia
- Transformator TS90/16, uzwojenia połączone szeregowo na stałe, z asymetrycznym odczepem, napięcia 16V i 39V a prostowanie pełnookresowe
- regulacja prądu ?
- W jakim celu napięcia symetryczne?
Najnowsze wątki
- 2024-04-27 DC blocker i buczące toroidy
- 2024-04-26 Warszawa => Kierownik Działu Spedycji Międzynarodowej <=
- 2024-04-26 Berlin => IT Network Engineer <=
- 2024-04-26 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-04-26 Warszawa => Senior PHP Developer (Symfony) <=
- 2024-04-26 Białystok => Business Development Manager - obszar bezpieczeństwa IT
- 2024-04-26 Bieruń => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-04-26 Warszawa => Product Owner/ Product Manager <=
- 2024-04-26 Warszawa => International freight forwarder <=
- 2024-04-26 Gdańsk => Senior Software Engineer PHP (BillPro) Kontraktor <=
- 2024-04-26 Jak się płaci CIT ?
- 2024-04-26 steve balmer o iphonie w 2007
- 2024-04-25 Wrocław => Java Developer <=
- 2024-04-25 Kraków => AI Specialist <=
- 2024-04-25 Berlin => Solution Architect (secure communication and IoT solutions)