-
Data: 2020-08-13 07:59:06
Temat: Dziwne zachowanie R65C51 + MAX232
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Pracuję właśnie nad pewnym projektem retro, składanym ze starych części.
Pracą urządzenia steruje mikroprocesor WDC65C02, jest też trochę innych
peryferiów, m.in UART R65C51. Urządzenie zdaje się pracować prawidłowo,
uruchomiłem większość podzespołów, problemy zaczęły się właśnie przy w
przypadku portu szeregowego.
1) Sam R65C51 zdaje się działać prawidłowo. Kiedy podpiąłem go do
przelotki USB-UART (linia CTS tymczasowo ściągnięta do masy) wszystko
działa prawidłowo. Urządzenie przechodzi inicjalizację i na komputerze
mogę odbierać wysyłane przez nie komunikaty. Transmisji w drugą stronę
jeszcze nie testowałem.
2) Urządzenie inicjuje się także wtedy, gdy do R65C51 nie jest
podłączony ani konwerter USB-UART, ani RS232.
3) Jednak gdy włożę w podstawkę układ MAX232, urządzenie nie przechodzi
inicjalizacji. Najwyraźniej zawiesza się właśnie na inicjalizacji
R65C51. Dopiero podłączenie do komputera za przez kabel RS232 naprawia
sytuację - wtedy urządzenie znów zaczyna się prawidłowo uruchamiać, a w
terminalu pojawiają się komunikaty.
Sęk w tym, że UART ma służyć do konfiguracji i diagnostyki urządzenia.
Nie mogę sobie pozwolić na sytuację, żeby jego uruchomienie wymagało
podpięcia do komputera.
Ktoś ma jakiś pomysł odnośnie tego, co robię źle?
Kod inicjujący UART jest relatywnie prosty:
void mos6551_init (void) {
//initialise 6551 ACIA
ACIA_RES = 0xFF; //soft reset (value not important)
ACIA_CMD = 0x0B; //set specific modes and functions
ACIA_CTL = 0x1E; //8-N-1, 9600 baud
}
Za pomocą CC65 kompiluje się do następującego kodu asemblerowego:
; ----------------------------------------------------
-----------
; void __near__ mos6551_init (void)
; ----------------------------------------------------
-----------
.segment "CODE"
.proc _mos6551_init: near
.segment "CODE"
lda #$FF
sta $6001
lda #$0B
sta $6002
lda #$1E
sta $6003
rts
.endproc
Następne wpisy z tego wątku
- 13.08.20 08:17 Dariusz Dorochowicz
- 13.08.20 08:39 Atlantis
- 13.08.20 08:54 Dariusz Dorochowicz
- 13.08.20 09:02 heby
- 13.08.20 09:39 J.F.
- 13.08.20 22:38 Atlantis
- 13.08.20 23:31 heby
- 13.08.20 23:37 heby
- 13.08.20 23:41 Grzegorz Niemirowski
- 14.08.20 11:12 J.F.
- 14.08.20 11:43 Dariusz Dorochowicz
- 14.08.20 11:43 Zbych
- 14.08.20 16:05 heby
Najnowsze wątki z tej grupy
- pompa CO
- 2,5 x więcej niż Li-Ion
- Tfu! Przeklety prostokąt (czyli UPS i "sinus modyfikowany")
- Dalekopis T100 - problem z powrotem karetki
- Diody LED - oświetlenie na choinkę
- ale wiesz, że są gotowce?
- jak wykryć zapalenie żarówki?
- Cyna dylemat
- Mierniki poziomu glukozy (CGM, FGM)
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Kontrola nad prądem - sprawdź jak działa [apka - przyp. JMJ] eLicznik
- NETIA i hasło logowania
- Modulacja FM
- Najgorszy język programowania
- Kol. sukces po polsku: firma Szumisie sp. z o.o.
Najnowsze wątki
- 2025-12-28 PREZENTY OD MINISTRA FINANSÓW. SKĄD PIENIĄDZE?
- 2025-12-27 pompa CO
- 2025-12-27 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-12-27 Ewakuacja ludności
- 2025-12-26 Gdańsk => ERP Microsoft Dynamics 365 Commerce Consultant <=
- 2025-12-26 Kraków => Konsultant Microsoft Dynamics 365 Finance <=
- 2025-12-26 Kraków => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-26 wymieniłem termostat
- 2025-12-26 Warszawa => Senior Backend Java Developer <=
- 2025-12-25 Finlandia przywraca swastykę
- 2025-12-25 Skuteczność wymiaru sprawiedliwości
- 2025-12-24 Felgi
- 2025-12-24 2,5 x więcej niż Li-Ion
- 2025-12-24 No i kolejny ograniczony
- 2025-12-24 Warszawa => Młodszy Specjalista ds. wsparcia sprzedaży <=




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]