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í

 
Použití bank u PIC18 - BSR registr, instrukce s 12b adresou

 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip
 
Billy Bob Bean
Profesionál
Profesionál


Založen: 21.9.2009
Příspěvky: 309
Bydliště: OLOMOUC - BRNO

PříspěvekZaslal: 02 květen 2011, 18:42    Předmět: Použití bank u PIC18 - BSR registr, instrukce s 12b adresou Citovat

Jsou u PIC18 stále banky na RAM?
BSR registr to má, podle obrázků v datasheetu to m paměť rozdělenou taky.
Zatím co jsem pochroupal datasheet, tak jsem pochopil že instrukce MOVFF umí pracovat s úplnou 12b adresou na BSR nepotřebuje.

Jak to teda je?

Konkrétně jsem koukal na PIC18F23K22

Arrow administrator: přejmenováno z "Banky u PIC18?"

_________________
Stavím UPSky
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Anonymní






PříspěvekZaslal: 03 květen 2011, 6:26    Předmět: Citovat

http://forum.mcontrollers.com/viewtopic.php?p=9380#9380
Návrat nahoru
 

 
piityy
Profesionál
Profesionál


Založen: 1.4.2008
Příspěvky: 2139

PříspěvekZaslal: 03 květen 2011, 7:02    Předmět: Citovat

Neměla by taková věc jít snadno vyzkoušet? Když se o to zajímáš, tak píšeš v asm a tam si můžeš proměnnou umístit na libovolné místo. Tak ji dej dál a zkus k ní přístup.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1166
Bydliště: Přerov

PříspěvekZaslal: 03 květen 2011, 7:26    Předmět: Re: Banky u PIC18? Citovat

Billy Bob Bean napsal:
.. instrukce MOVFF umí pracovat s úplnou 12b adresou na BSR nepotřebuje.


S tím máš pravdu Shocked Odkudkoliv kamkoliv.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
Billy Bob Bean
Profesionál
Profesionál


Založen: 21.9.2009
Příspěvky: 309
Bydliště: OLOMOUC - BRNO

PříspěvekZaslal: 03 květen 2011, 19:52    Předmět: Citovat

Já jsem to zkoušel, normálně mi klasické instrukce movwf zapíše v pohodě do nastavovacích registrů který mají adresu někde od 0xFFF vejš, a do reg. umístěném na adrese 0x100 ne...

Když před napíšu BANKSEL TRISA, tak se mi do BSR zapíše 0x0F
U reg POKUS na adrese 0x100, mi banksel zapíše do BSR 0x01

Nicméně i bez banksel se mi do trisu zapíše pomocí MOVWF TRISA co chci.
POKUS nez určení banky nezapíšu.

Tady mi není jasná ta odlišnost.

_________________
Stavím UPSky
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1166
Bydliště: Přerov

PříspěvekZaslal: 04 květen 2011, 8:45    Předmět: Citovat

BANK 15 je přistupná odkudkoliv. Z BANK 0 aspoň co vím určitě.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
Billy Bob Bean
Profesionál
Profesionál


Založen: 21.9.2009
Příspěvky: 309
Bydliště: OLOMOUC - BRNO

PříspěvekZaslal: 04 květen 2011, 9:18    Předmět: Citovat

Honza3: Aha, tak to lecos vysvětluje. V tom případě mi to je už jasné. Z datasheetu jsem to nějak nepochopil/nevyčetl/přehlídl (nehodící se škrtněte Very Happy )

Díky moc.

_________________
Stavím UPSky
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1166
Bydliště: Přerov

PříspěvekZaslal: 04 květen 2011, 9:55    Předmět: Citovat

Přehlídl Embarassed , kapitola 5.3. Very Happy

Tak mi to nedalo. Jedná se sice o PIC18F4620, ale bude to podobné. BANK 15 je přístupná celá z BANK 0, ale z BANK 1 - 14 je sice taky přístupná, ale ne všechny registry. PORTy a TRISy jsou přístupné z každé banky, ale nastavovací registry, např. nastavení I2C, nebo zápis do TMRxL/H pouze z BANK 0 nebo 15.

To jen aby Billy Bob Bean nemusel študovat datasheet Very HappyVery HappyVery Happy Shocked Shocked
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
Billy Bob Bean
Profesionál
Profesionál


Založen: 21.9.2009
Příspěvky: 309
Bydliště: OLOMOUC - BRNO

PříspěvekZaslal: 04 květen 2011, 19:01    Předmět: Citovat

Já ho študoval, ale blbě, teď jsem se na to kouknul a už to tam vidím. Asi nějaká tmavá chvilka včera.

kód:
The Access Bank consists of the first 96 bytes of memory
(00h-5Fh) in Bank 0 and the last 160 bytes of memory
(60h-FFh) in Block 15.

_________________
Stavím UPSky
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
vlasta_vlcek
Profesionál
Profesionál


Založen: 4.9.2008
Příspěvky: 358
Bydliště: Valašské Meziříčí

PříspěvekZaslal: 31 říjen 2014, 13:46    Předmět: Citovat

Dobrý den, je to sice již starší vlákno, ale snad se ještě někdo najde ...
S výše uvedeným zřejmě souvisí pojem Access Bank a Access RAM. Můžete mi prosím někdo vysvětlit, o co jde? Tuším, že právě díky existenci Access Bank není zapotřebí používat BSR a banky přepínat "ručně". Nějak mi ale uniká, jak to funguje.
Díky za ochotu.
Vl.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1166
Bydliště: Přerov

PříspěvekZaslal: 01 listopad 2014, 9:42    Předmět: Citovat

Teď dělám s PIC18F46K22 a ten má taky 15 bank, z toho 0 a 15 jsou si přístupné navzájem,ale jen BANK 0 do adresy 0x5F a 15 od 0x60.
Co je v bance 0 od adresy 0x60 už bez banksel nepřepíšeš do banky 15 kromě movff reg1,reg2.
Používej registry FSRx jednoduše instrukcí lfsr x,register a nebo pseudoinstrukci banksel register

A jednu radu nakonec. Nepoužívej BSR ale banksel

kód:

#DEFINE      LCD_PORT   PORTD

..
..

..
..

   banksel   0         ; banka 0
   banksel   LCD_PORT      ; banka 15
   movlb   LCD_PORT      ; BANKA 3!!!!!
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
vlasta_vlcek
Profesionál
Profesionál


Založen: 4.9.2008
Příspěvky: 358
Bydliště: Valašské Meziříčí

PříspěvekZaslal: 01 listopad 2014, 12:15    Předmět: Citovat

Honzo, díky, ale já jsem se ptal na něco jiného - nerozumím vlastnímu principu Access Bank, jak to prostě funguje nebo proč a k čemu tam vlastně je. Vl.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
honza3
Profesionál
Profesionál


Založen: 21.1.2008
Příspěvky: 1166
Bydliště: Přerov

PříspěvekZaslal: 01 listopad 2014, 15:01    Předmět: Citovat

Access RAM - Přístupná banka s banky 0 je banka 15 od adresy 0x60. Banka 15 pod 0x5F není v RAM. Jsem ti to napsal.

Použití je k tomu, že jsi v bance 0 tak nemusíš při zápisu do SFR se přepínat do banky 15. Opačně to ale nefunguje.



accessram.bmp
 Komentář:

Stáhnout
 Soubor:  accessram.bmp
 Velikost:  61.81 kB
 Staženo:  130 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

 
vlasta_vlcek
Profesionál
Profesionál


Založen: 4.9.2008
Příspěvky: 358
Bydliště: Valašské Meziříčí

PříspěvekZaslal: 01 listopad 2014, 18:16    Předmět: Citovat

Jasně, chápu - díky!

Vl.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
 

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 © 2018 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)