Re: licznik na 8051



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

Poprzedni Następny
Wiadomoœć
spis treści
From: radecki_at_nospam_wpk.p.lodz.pl (Andrzej Radecki)
Subject: Re: licznik na 8051
Date: Fri, 20 Aug 1999 20:06:07 GMT


Juliusz <juliusz_at_nospam_multi-ip.com.pl> pisze:

Buduje akurat licznik na 8051 i niewiem jak rozwiazac pewien problem.
[...]
Chodzi oto ze ten licznik ma pracowac jako sterownik syntezera w
radiotelefonie na 2m.

Liczenie to jedno, a wyswietlanie to inna sprawa. Masz 1000000 Hz ze
skokiem 12500 Hz czyli daje ci to 80 skokow. w HEX to bedzie 0x50. Musisz
zrobic programowy licznik liczacy od 0 do 0x50 przy naciskaniu klawisza.
Np jako podprogramik z "filtrowaniem" czasu nacisniecia klawisza, tak zeby
nie przeskakiwalo za szybko.

Teraz pozostaje kwestia zamiany tej wartosci na rzeczywista, wyrazona w
MHz na wyswietlaczu. Mozesz wywolywac, przy wychodzeniu z procedury
klawisza, kolejny podprogram. Bedzie on aktualizowal wyswietlacz i wysylal
cos dalej do scalaka syntezy. Niestety zalezy to juz od tego jak
podlaczysz wyswietlacze i jak bedziesz nimi sterowal. Sposobow jest 1001.

Taka mała wskazówka... wykorzystaj dwie tablice zapisane w rom'ie. W jednej
będą zapisane kody sterujące syntezerem PLL, w drugiej - kody sterujące
wyświetlaczem. Wartość licznika jest indeksem przy odwołaniach do tych
tablic. To chyba najprostsze i najbardziej elastyczne rozwiązanie. Pozwala
łatwo omijać ewentualne "dziury" w pasmie (choć na 2m chyba takich nie ma?)
i szybko przeprogramować procka w przypadku jakichś zmian w układzie.

Pozdrawiam,
--
( /6/ Andrzej Radecki
==== \ radecki_at_nospam_wpk.p.lodz.pl
/ | http://www.wpk.p.lodz.pl/~radecki

Poprzedni Następny
Wiadomoœć
spis treści
From: "Wojciech Wicleben" <lango_at_nospam_polbox.com>
Subject: Re: licznik na 8051
Date: Fri, 20 Aug 1999 23:00:57 +0200


Dzieki Andrzej
Bardzo dziekuje za wszelkie uwagi bo sa mi bardzo potrzebne.
Ja poraz pierwszy buduje takie urzadzenie na 8051.
Mam problem jak wyswietlic dana np.z tablicy na wyswietlaczu .
W tablicy bedzie np.(koncowka najbardziej znaczaca)5.512,5Mhz
Jak to wywalic na port p1 modyfikujac tylko pierwsze linie od p0.0 do p0.4
bo pozostale zatrzaskuja mi wyswietlacz(a wlasciwie zatrzaski w 4543).
Jak masz jakies doswiadczenia to prosze o pomoc.
Czesc

--
Wojciech Wicleben
e-mail.sq2hcr_at_nospam_friko4.onet.pl
"Zapraszam do korespondencji"
Andrzej Radecki napisał(a) w wiadomości: ...
>Juliusz <juliusz_at_nospam_multi-ip.com.pl> pisze:
>>
>>>Buduje akurat licznik na 8051 i niewiem jak rozwiazac pewien problem.
>[...]
>>>Chodzi oto ze ten licznik ma pracowac jako sterownik syntezera w
>>>radiotelefonie na 2m.
>>
>>Liczenie to jedno, a wyswietlanie to inna sprawa. Masz 1000000 Hz ze
>>skokiem 12500 Hz czyli daje ci to 80 skokow. w HEX to bedzie 0x50. Musisz
>>zrobic programowy licznik liczacy od 0 do 0x50 przy naciskaniu klawisza.
>>Np jako podprogramik z "filtrowaniem" czasu nacisniecia klawisza, tak zeby
>>nie przeskakiwalo za szybko.
>>
>>Teraz pozostaje kwestia zamiany tej wartosci na rzeczywista, wyrazona w
>>MHz na wyswietlaczu. Mozesz wywolywac, przy wychodzeniu z procedury
>>klawisza, kolejny podprogram. Bedzie on aktualizowal wyswietlacz i wysylal
>>cos dalej do scalaka syntezy. Niestety zalezy to juz od tego jak
>>podlaczysz wyswietlacze i jak bedziesz nimi sterowal. Sposobow jest 1001.
>
>Taka mała wskazówka... wykorzystaj dwie tablice zapisane w rom'ie. W jednej
>będą zapisane kody sterujące syntezerem PLL, w drugiej - kody sterujące
>wyświetlaczem. Wartość licznika jest indeksem przy odwołaniach do tych
>tablic. To chyba najprostsze i najbardziej elastyczne rozwiązanie. Pozwala
>łatwo omijać ewentualne "dziury" w pasmie (choć na 2m chyba takich nie ma?)
>i szybko przeprogramować procka w przypadku jakichś zmian w układzie.
>
>Pozdrawiam,
>--
>( /6/ Andrzej Radecki
> ==== \ radecki_at_nospam_wpk.p.lodz.pl
>/ | http://www.wpk.p.lodz.pl/~radecki




--
ISDN w cenie 56kbps (V.90) - 40 PLN / miesiac - http://rubikon.pl

Poprzedni Następny
Wiadomoœć
spis treści
From: "Jerzy Szczesiul" <Jerzy.Szczesiul_at_nospam_ep.com.pl>
Subject: Re: licznik na 8051
Date: Sat, 21 Aug 1999 17:59:14 GMT


Hej

Wojciech Wicleben napisał(a) w wiadomości:
<7pkfon$be8$1_at_nospam_aquarius.webcorp.com.pl>...
[..]
W tablicy bedzie np.(koncowka najbardziej znaczaca)5.512,5Mhz
Jak to wywalic na port p1 modyfikujac tylko pierwsze linie od p0.0 do p0.4
bo pozostale zatrzaskuja mi wyswietlacz(a wlasciwie zatrzaski w 4543).

[..]

Zrob do wyswietlania 2 tablice po 80 bajtow. W pierwszej beda
2 cyfry bardziej znaczace ( spakowane: starsza w starszym polbajcie,
mlodsza w mlodszym- np. ) ; w drugiej odpowiednie 2 cyfry mniej
znaczace. Kazdy polbajt jest kodem BCD cyfry - gotowym do wyslania
do 4543. W ten sposob omijasz wszelkiego typu konwersje hex>>BCD.

Niech LICZNIK bedzie zmienna dla krokow czestotliwosci.
Pod adresami ARRAY1 i ARRAY2 niech beda w/w tablice.
Wtedy :

MOV DPTR,#ARRAY1 ; do dptr poczatek tablicy cyfr bardziej znaczacych
MOV A,LICZNIK
MOVC A,_at_nospam_A+DPTR ; pobierasz z array1 bajt o pozycji podanej w LICZNIK
MOV R2,A ;zapamietaj na chwile np. w R2
SWAP A
ANL A,#0FH ; wyciagasz z bajtu starszy polbajt

MOV P1,A ; wysylasz na port P1 - zwroc uwage ze poprzednie
;operacje zapewnily wyzerowanie starszego polbajtu P1 - wszystkie
;kostki 4543 zablokowane

SETB P1.4
CLR P1.4 ; impuls przepisujacy wejscie kostki 4543 dla najstarszej
;cyfry, mozna ew. sprawdzic czy nie bedzie za krotki ale to nie problem
;-wstawisz NOP-y

; teraz druga cyfra czyli mlodszy polbajt pobranego z array1 bajtu
MOV A,R2 ;sciagnij z chwilowej pamieci
ANL A,#0FH ; wyciagasz z bajtu mlodszy polbajt

MOV P1,A ; wysylasz na port P1

SETB P1.5
CLR P1.5 ; impuls przepisujacy wejscie kostki 4543 dla 2.cyfry

Teraz to samo dla 3. i 4. cyfry pobranej z array2.

------
Tu jeszcze inny problem moze wyjsc - czy uP nie bedzie zaklocac
czesci radiowej ? Moze sprawdzic prowizorycznie ( jesli masz jak ).
Wtedy ew. tryb power down pomiedzy przelaczeniami.

Powodzenia
Jurek Szczesiul
Jerzy.Szczesiul_at_nospam_ep.com.pl







Poprzedni Następny
Wiadomoœć
spis treści
From: "Wojciech Wicleben" <lango_at_nospam_polbox.com>
Subject: Re: licznik na 8051
Date: Sat, 21 Aug 1999 23:14:37 +0200


Dziekuje Jurek!!

--
Wojciech Wicleben
e-mail.sq2hcr_at_nospam_friko4.onet.pl
"Zapraszam do korespondencji"
Jerzy Szczesiul napisał(a) w wiadomości: ...
>Hej
>
>Wojciech Wicleben napisał(a) w wiadomości:
><7pkfon$be8$1_at_nospam_aquarius.webcorp.com.pl>...
>[..]
>>W tablicy bedzie np.(koncowka najbardziej znaczaca)5.512,5Mhz
>>Jak to wywalic na port p1 modyfikujac tylko pierwsze linie od p0.0 do p0.4
>>bo pozostale zatrzaskuja mi wyswietlacz(a wlasciwie zatrzaski w 4543).
>
>[..]
>
>Zrob do wyswietlania 2 tablice po 80 bajtow. W pierwszej beda
>2 cyfry bardziej znaczace ( spakowane: starsza w starszym polbajcie,
>mlodsza w mlodszym- np. ) ; w drugiej odpowiednie 2 cyfry mniej
>znaczace. Kazdy polbajt jest kodem BCD cyfry - gotowym do wyslania
>do 4543. W ten sposob omijasz wszelkiego typu konwersje hex>>BCD.
>
>Niech LICZNIK bedzie zmienna dla krokow czestotliwosci.
>Pod adresami ARRAY1 i ARRAY2 niech beda w/w tablice.
>Wtedy :
>
>MOV DPTR,#ARRAY1 ; do dptr poczatek tablicy cyfr bardziej znaczacych
>MOV A,LICZNIK
>MOVC A,_at_nospam_A+DPTR ; pobierasz z array1 bajt o pozycji podanej w LICZNIK
>MOV R2,A ;zapamietaj na chwile np. w R2
>SWAP A
>ANL A,#0FH ; wyciagasz z bajtu starszy polbajt
>
>MOV P1,A ; wysylasz na port P1 - zwroc uwage ze poprzednie
>;operacje zapewnily wyzerowanie starszego polbajtu P1 - wszystkie
>;kostki 4543 zablokowane
>
>SETB P1.4
>CLR P1.4 ; impuls przepisujacy wejscie kostki 4543 dla najstarszej
>;cyfry, mozna ew. sprawdzic czy nie bedzie za krotki ale to nie problem
>;-wstawisz NOP-y
>
>; teraz druga cyfra czyli mlodszy polbajt pobranego z array1 bajtu
>MOV A,R2 ;sciagnij z chwilowej pamieci
>ANL A,#0FH ; wyciagasz z bajtu mlodszy polbajt
>
>MOV P1,A ; wysylasz na port P1
>
>SETB P1.5
>CLR P1.5 ; impuls przepisujacy wejscie kostki 4543 dla 2.cyfry
>
>Teraz to samo dla 3. i 4. cyfry pobranej z array2.
>
>------
>Tu jeszcze inny problem moze wyjsc - czy uP nie bedzie zaklocac
>czesci radiowej ? Moze sprawdzic prowizorycznie ( jesli masz jak ).
>Wtedy ew. tryb power down pomiedzy przelaczeniami.
>
>Powodzenia
>Jurek Szczesiul
>Jerzy.Szczesiul_at_nospam_ep.com.pl
>
>
>
>
>
>




--
Dostep do Internetu - 40 PLN / miesiac - http://rubikon.pl