Re: S8252 Atmela i DPTR-y



Masz problem? Zapytaj na forum elektroda.pl z bramką pl.misc.elektronika!

Poprzedni Następny
Wiadomoœć
spis treści
From: "Andy" <anok_at_nospam_ceti.com.pl>
Subject: Re: S8252 Atmela i DPTR-y
Date: Tue, 13 Jul 1999 02:01:22 +0200


PJ napisał(a) w wiadomości: ...
Witam !
Czy ktos wie, jak nalezy sterowac bitem DPS (WMCON) w tym procesorze ?
Przy jakich instrukcjach ma znaczenie bit, a przy jakich adres ?
P.J.


Jak na moj gust dziala to troche dziwnie.
Moje spostrzezenia sa takie:

(SelDptr - to moje macro anl..., orl ...)

stan bitu DPS wplywa na instrukcje: mov dptr, #1234
tzn.

SelDptr0 ; DPS = 0
mov dptr, #1234h
SelDptr1; DPS = 1
mov dptr, #5678h

powoduje zaladowanie:
do banku 0 dptr : 1234h
a do banku 1 dptr : 5678h
i to jest OK.

Zapis do SFR : DP0L, DP0H, DP1L, DP1H
dziala bez zarzutu bez wzgeldu na stan bitu DPS
dane laduja w tym rejestrze, do ktorego sa zapisywane
i to jest OK.

Odczyt z SFR : DP0L, DP0H, DP1L, DP1H
to jest niespodzianka bo na ten odczyt wplyw ma
stan bitu DPS.

Jesli DPS = 0 to
odczyt z DP0L i DP1L daja ta sama wartosc 34h
odczyt z DP0H i DP1H daja ta sama wartosc 12h

Jesli DPS = 1 to
odczyt z DP0L i DP1L daja ta sama wartosc 78h
odczyt z DP0H i DP1H daja ta sama wartosc 56h

wiec moj wniosek jest taki:

mov dptr, #xxxx - ZALEZY od DPS i dziala OK
zapis adresow SFR NIEZALEZY od DPS i dziala OK
odczyt adresow SFR ZALEZY od bitu DPS i bez wzgledu
na to, ktory bank jest czytany odczyt jest przekierowany
na ten bank ktory jest wskazywany przez DPS.

Nie wiem czy to ma tak dzialac czy ja robie cos nie tak.
Chetnie wyslucham uwag potwierdzajacych lub zaprzeczajcych temu
co napisalem powyzej.

--
Andrzej
anok_at_nospam_ceti.com.pl
anok_at_nospam_lupus.elektro.agh.edu.pl
KRAKOW




Poprzedni Następny
Wiadomoœć
spis treści
From: Grzegorz Lentka <leo_at_nospam_katmel.eti.pg.gda.pl>
Subject: Re: S8252 Atmela i DPTR-y
Date: Tue, 13 Jul 1999 11:15:51 -0700


Witam!
A moze to blad kompilatora/asemblera. Mialem taki problem z asemblerem
na Z80 jeszcze na Spectrum. 2 rozne instrukcje byly tlumaczone tak samo.
Proponuje zajrzec do HEX'a.
Pozdrowienia
Grzegorz Lentka



Andy wrote:

PJ napisał(a) w wiadomości: ...
Witam !
Czy ktos wie, jak nalezy sterowac bitem DPS (WMCON) w tym procesorze ?
Przy jakich instrukcjach ma znaczenie bit, a przy jakich adres ?
P.J.

Jak na moj gust dziala to troche dziwnie.
Moje spostrzezenia sa takie:

(SelDptr - to moje macro anl..., orl ...)

stan bitu DPS wplywa na instrukcje: mov dptr, #1234
tzn.

SelDptr0 ; DPS = 0
mov dptr, #1234h
SelDptr1; DPS = 1
mov dptr, #5678h

powoduje zaladowanie:
do banku 0 dptr : 1234h
a do banku 1 dptr : 5678h
i to jest OK.

Zapis do SFR : DP0L, DP0H, DP1L, DP1H
dziala bez zarzutu bez wzgeldu na stan bitu DPS
dane laduja w tym rejestrze, do ktorego sa zapisywane
i to jest OK.

Odczyt z SFR : DP0L, DP0H, DP1L, DP1H
to jest niespodzianka bo na ten odczyt wplyw ma
stan bitu DPS.

Jesli DPS = 0 to
odczyt z DP0L i DP1L daja ta sama wartosc 34h
odczyt z DP0H i DP1H daja ta sama wartosc 12h

Jesli DPS = 1 to
odczyt z DP0L i DP1L daja ta sama wartosc 78h
odczyt z DP0H i DP1H daja ta sama wartosc 56h

wiec moj wniosek jest taki:

mov dptr, #xxxx - ZALEZY od DPS i dziala OK
zapis adresow SFR NIEZALEZY od DPS i dziala OK
odczyt adresow SFR ZALEZY od bitu DPS i bez wzgledu
na to, ktory bank jest czytany odczyt jest przekierowany
na ten bank ktory jest wskazywany przez DPS.

Nie wiem czy to ma tak dzialac czy ja robie cos nie tak.
Chetnie wyslucham uwag potwierdzajacych lub zaprzeczajcych temu
co napisalem powyzej.

--
> Andrzej
> anok_at_nospam_ceti.com.pl
> anok_at_nospam_lupus.elektro.agh.edu.pl
> KRAKOW

Poprzedni Następny
Wiadomoœć
spis treści
From: "Andy" <anok_at_nospam_ceti.com.pl>
Subject: Re: S8252 Atmela i DPTR-y
Date: Tue, 13 Jul 1999 12:29:54 +0200


Grzegorz Lentka napisał(a) w wiadomości:
<378B8257.1C0C_at_nospam_katmel.eti.pg.gda.pl>...
Witam!
A moze to blad kompilatora/asemblera. Mialem taki problem z asemblerem
na Z80 jeszcze na Spectrum. 2 rozne instrukcje byly tlumaczone tak samo.
Proponuje zajrzec do HEX'a.
Pozdrowienia
Grzegorz Lentka

Po kilkugodzinnych walkach z tym problemem sprawdzilem
wszytko co tylko mozliwe.
Zagladalem do hex'a i do bin'a.

Chyba, ze doznalem zacmienia umyslu :-)

Ja uzywalem w moim programie dwoch DPTR'ow i jak juz zalapalem
co jest grane to program dzialal OK.

DPTR byl rowniez uzyty w przerwaniach
odkladalem na stos DPL i DPH i WMCOM
i zawsze przed uzyciem dptr'a odpowiednio
ustawialem bit DPS.

Moze ktos ma ochote to przetestowac i ewentualnie potwierdzic
lub obalic to co napisalem w poprzednim mailu.

--
Andrzej
anok_at_nospam_ceti.com.pl
anok_at_nospam_lupus.elektro.agh.edu.pl
KRAKOW