-
Data: 2017-02-27 13:11:24
Temat: Re: Programowanie AT89Cxx51
Od: Piotr Gałka <p...@c...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 2017-02-27 o 06:42, Atlantis pisze:
> On 26.02.2017 23:21, Dariusz Dorochowicz wrote:
>
>> Ale po co pytasz o ten procek i takie tematy? Chcesz coś na nim zrobić
>> czy tak z ciekawości? Bo wiesz, to straszna staroć przecież. Jeżeli masz
>> urządzenie, to konfigurację już masz, a jeżeli nie, to nie ma sensu się
>> bawić w odkrywanie. Okolice typowej konfiguracji będziesz miał na
>
> W tej chwili nie planuję niczego budować na tym układzie. Pytam z
> czystej ciekawości, albo że tak powiem - z powodu zainteresowania
> historią. :) To znaczy nie wykluczam, że może kiedyś, z czystej
> ciekawości spróbuję sobie coś takiego uruchomić, na podobnej zasadzie,
> jak ludzie budujący własne retro komputery na Z80, jednak w tej chwili
> są to rozważania czysto teoretyczne.
> Gotową konfigurację już mam, ale jest prosty układ bez zewnętrznej
> pamięci. Próbuję w tej chwili napisać na niego własny kod przy pomocy
> sdcc i głównie dlatego temat mnie zainteresował. :)
>
Wpiszę swoje 3 grosze - może Ci się przyda (nie ja pisałem program -
mogę coś mieszać).
W DSM-51 (projekt z 1993r) w momencie włączenia zasilania:
- 32k EPROM z programem był widoczny dwa razy (w obu połowach pamięci
programu),
- 32k RAMu było chyba widoczne tylko w dolnej połowie pamięci danych
(niektóre adresy górnej połowy były użyte do sterowania sprzętu).
Pod kontrolą tego programu z EPROMu edytowało się ręcznie (wbudowany
assembler - z menu wybierało się mnemonik, a potem z menu kolejne jego
parametry - taki wymóg czasów, gdy w szkołach pracowania
mikrokontrolerów nie miała komputerów) program, który był umieszczany W
RAMie. Była też (dla posiadających PC) możliwość wgrania do RAMu
programu przez RS232.
Uruchomienie programu polegało na zastąpieniu w dolnej połowie pamięci
programu EPROMu przez RAM i reset procesora. W ten sposób wektory
przerwań też pochodziły z programu załadowanego do RAMu.
W uruchamianym w RAMie programie można było korzystać z iluś tam
procedur zawartych w EPROMie (widocznym teraz w górnej połowie pamięci
programu).
Urządzenie miało dwa resety. Reset programu użytkownika robił reset
procesora z pozostawieniem RAMu w dolnej połowie pamięci programu, a
pełny reset przywracał wszystko do stanu jak po włączeniu zasilania.
Watchdog generował reset nie modyfikując przestrzeni adresowych -
zadziałanie watchdoga w programie użytkownika resetowało program
użytkownika, a nie cały system.
Poza przekazaniem pełnej władzy programowi w RAMie była też możliwość
puszczania go krokowo. Rezydujący u góry program w EPROMie wkładał
odpowiednio skoki do siebie do RAMu i wypuszczał od odpowiedniego
miejsca (i stanu stosu) program w RAMie i łapał gdy doszedł do tego skoku.
P.G.
Następne wpisy z tego wątku
- 27.02.17 13:49 Piotr Gałka
- 27.02.17 13:54 Piotr Gałka
- 27.02.17 14:29 J.F.
- 27.02.17 15:48 Piotr Gałka
- 27.02.17 18:37 Atlantis
- 27.02.17 20:47 Dariusz Dorochowicz
- 27.02.17 21:09 J.F.
- 27.02.17 21:20 AlexY
- 27.02.17 22:01 J.F.
- 28.02.17 02:05 AlexY
- 28.02.17 12:24 J.F.
Najnowsze wątki z tej grupy
- Prognozowanie zużycia energii przez PGE?
- Odkurzacz mnie bije :(
- Rapsberry Pi i synchronizacja plików
- RCD 300 mA
- rpi i moduł przekaźników
- Falownik do pompy CO
- Lampa ogrodowa rozłączała różnicówkę
- Inteligentne oświetlenie schodów
- Pytanie do Użytkownika
- Emanuel kiedyś szukał gotowca do chłodzenia leków
- Sprzęty z Lidl-a
- idzie nowe
- Wybuchające pagery
- Jak shakować windę
- Sterowanie bezprzewodowe do wbudowania
Najnowsze wątki
- 2024-10-04 Warszawa => QA Engineer <=
- 2024-10-04 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-10-04 Warszawa => Senior PHP Laravel Developer (e-commerce) <=
- 2024-10-04 Warszawa => Data Scientist / Data Engineer (predictive modelling) <=
- 2024-10-03 Nieparzyste dmuchanie
- 2024-10-03 Prognozowanie zużycia energii przez PGE?
- 2024-10-03 Re: Drugi ekran na Androidzie
- 2024-10-03 sprawiedliwosc nierychliwa
- 2024-10-03 zloto
- 2024-10-03 Odkurzacz mnie bije :(
- 2024-10-03 Gdańsk => Technical Lead ( (Java Background)) <=
- 2024-10-03 Warszawa => Mid IT Recruiter <=
- 2024-10-03 Olsztyn => Sales Specialist <=
- 2024-10-03 Leszczyna nie zna prawa?
- 2024-10-03 Warszawa => OpenText ECM Specialist <=