eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaProgramowanie AT89Cxx51Re: Programowanie AT89Cxx51
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.chmurka.net!.POSTED.213.192.88.238
    !not-for-mail
    From: Piotr Gałka <p...@c...pl>
    Newsgroups: pl.misc.elektronika
    Subject: Re: Programowanie AT89Cxx51
    Date: Mon, 27 Feb 2017 13:11:24 +0100
    Organization: news.chmurka.net
    Message-ID: <o9151c$onm$1@news.chmurka.net>
    References: <58a2b213$0$650$65785112@news.neostrada.pl>
    <o8f9ee$on6$1@news.icm.edu.pl>
    <58ae915a$0$5164$65785112@news.neostrada.pl>
    <58b2aeaa$0$662$65785112@news.neostrada.pl> <o8uim9$aul$1@dont-email.me>
    <o8upr3$52d$1@node1.news.atman.pl> <o8urvd$9qu$1@dont-email.me>
    <o8v9rj$l28$1@news.icm.edu.pl> <o8vb11$3le$1@dont-email.me>
    <o8vbid$ngs$1@node1.news.atman.pl> <o8vc9i$k08$1@news.icm.edu.pl>
    <o8vkcv$iqf$1@node2.news.atman.pl>
    <58b3bc46$0$657$65785112@news.neostrada.pl>
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: 8bit
    Injection-Date: Mon, 27 Feb 2017 12:11:24 +0000 (UTC)
    Injection-Info: news.chmurka.net; posting-account="PiotrGalka";
    posting-host="213.192.88.238"; logging-data="25334";
    mail-complaints-to="abuse-news.(at).chmurka.net"
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101
    Thunderbird/45.7.1
    In-Reply-To: <58b3bc46$0$657$65785112@news.neostrada.pl>
    Xref: news-archive.icm.edu.pl pl.misc.elektronika:713640
    [ ukryj 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.


Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: