Nove PIC16 a PIC18 - Porty

Jindrich Fucik FULDA na seznam.cz
Pondělí Červen 24 14:58:49 CEST 2024


Ano, LATx je ta jedna paměťová buňka navíc.

A pozor na moje P.S. - těžko se chce věřit tomu, že BSF a BCF dělají read/modify/write celého bajtu, ale je to tak. Ten procesor dělá tuhle trojici vlastně pži každé instrukci, jen je otázka, jestli to tak člověk vnímá.


---------- Původní e-mail ----------
Od: Jan Waclawek <konfera na efton.sk>
Komu: HW-news <hw-list na list.hw.cz>
Datum: 24. 6. 2024 14:37:38
Předmět: Re: Nove PIC16 a PIC18 - Porty
[preposielam]



Ahojte,



dakujem vsetkym za odpovede. Takze to LATx eliminuje vlastne potrebu jednej

pamatovej bunky RAM na buffer portu. Ja sa snazim vsade pouzivat

instrukcie BCF a BSF a na vstup BTFSS a BTFSC. Takze tie chyby velmi

nevidim. Prepisem teda vsetky vystupy na PORTx na registre LATx. Sice budem

musiet prepisat cely include file s definiciami pinov, ale neda sa nic

robit, doba pokrocila, tak musim ist s dobou aj ja. :)

A.



>>>



Ahoj,



Problém je se čtením.

Tedy pokud máš na daném portu něco, co je citlivé na čtení, tak zápis

do PORT* ti provede čtení/modifikace/zápis. Zatímco zápis do LAT*

neprovede čtení toho portu, ale jen toho, co se minule zapsalo.



Běžné problémy kdy to vadí jsou:

1) čtení smaže interrupt on change, takže pokud máš na stejném portu

IoC, tak si teoreticky můžeš smazat jeho přísnak dřív než se

vyhodnotí.

2) při použití open drain - zapsal jsi 1, ale někdo jiný na stejnou

linku píše 0, takže se při čtení přečte 0 a zapíše se i do tvého

výstupu.



P.S. - na PICech je každá operace čtení/modifikace/zápis, ačkoli se to

ne vždy zdá. Třeba u operací typu BSF se tomu člověku nechce věřit.



_______________________________________________

HW-list mailing list  -  sponsored by www.HW.cz

Hw-list na list.hw.cz

http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list