forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
PCLATH a jeho pouziti

 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip
 
Kolja
Anonymní





PříspěvekZaslal: 19 duben 2006, 8:10    Předmět: PCLATH a jeho pouziti Citovat

Dobry den. Mohl byste mi prosim zjednodusene objasnit, na co slouzi tento prikaz u Microchipu. Programuji PIC 16F627 a rad bych pouzival jine banky a nevim, jak a kde ho pouzit. Diky moc Very Happy
Návrat nahoru
 

 
administrator
hlavní administrátor
hlavní administrátor


Založen: 2.1.2006
Příspěvky: 758
Bydliště: Ostrava

PříspěvekZaslal: 20 duben 2006, 16:53    Předmět: Citovat

Zprvu bych rád řekl, že je rozdíl mezi bankami a stránkami. Banky přepínáte např. když chcete používat jiné registry (třeba při nastavení portu se přepnete do banky 1, aby šlo zapisovat do TRIS registrů). To o čem mluvíte jsou stránky (paměť programu je rozdělena na bloky, kterým se říká stránky).

Začnu od začátku. Při volání (call) a skocích (goto) je použito pouze 11 bitů adresy => je tedy umožněn přesun pouze v rámci jedné stránky o velikosti slova 2048 "2k" (vypočteme dvě na jedenáctou). Pokud chceme tedy skočit na jinou stránku (pokud si dobře pamatuji, tak PIC 16F627 má jen dvě stránky), tak musíme zapsat do čtvrtého a třetího bitu PCLATH správnou hodnotu (0 ÷ 3, resp. 00 ÷ 11). Pokud se jedná o PIC 16F627, tak při skoku do druhé stránky (stránka 1), stačí před skokem či voláním nastavit PCLATH takto:

kód:
         bsf         PCLATH,3


Před návratem (return) již není nutné PCLATH nastavovat.
Program může tedy vypadat takto:

kód:
         bsf         PCLATH,3
         call         Zkouska

; další zápis programu

         org         d'2048
Zkouska

; podprogram "Zkouska"

         return


Doufám, že jsem zdárně vyřešil problém adresace programové paměti Wink.

_________________
Rudolf Veselý
Administrátor webu http://www.mcontrollers.com/ a fóra http://forum.mcontrollers.com/.
Pravidla fóra mcontrollers.com.

You can do everything in assembler, but no one wants to program in assembler anymore.
... Yukihiro Matsumoto

Rudolf Vesely on LinkedIn
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip Časy uváděny v GMT + 2 hodiny
 
Strana 1 z 1
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2017 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)