PIC - začátečník - SPI a hodiny procesoru

Hynek Sladky econf na centrum.cz
Úterý Srpen 26 08:55:30 CEST 2014


U SPI slave je takovy drobny zadrhel: procesor musi umet vycist data ze 
SPI, pripadne zapsat data do SPI registru driv, nez bude komunikace od 
masteru pokracovat. Doba je zpravidla maximalne delka jednoho bitu, zde 
tedy 10us. Pokud probiha komunikace jen jednim smerem a SPI disponuje 
FIFO (i u PIC je snad vzdy jeden vyrovnavaci registr), tak je k 
dispozici delka dle FIFO. Pro tento rezim by byl dle meho nazoru 
vyhodnejsi I2C prenos, kde toto lze resit pomoci clock stretching (slave 
drzi CLK v nule, dokud nejsou k dispozici pripravena data nebo dokud 
nedoslo k vycteni dat z bufferu).
Maximalni rychlost SPI vuci rychlosti procesoru byva popsana v DS, ale 
casto musi byt z vyse uvedenych duvodu rychlost procesoru mnohem vyssi 
nez by stacilo na samotny prenos...

Hynek Sladky



Dne 26.8.2014 8:40, Ondřej Janovský napsal(a):
> Zdravím,
>
> začínám s PIC18F24J11 a chystám se s ním komunikovat přes SPI. Zároveň 
> mi jde o co nejmenší spotřebu, takže nechci zbytečně vysokou frekvenci 
> taktování procesoru, který bude navíc jako SLAVE .
> SPI je v procesoru jako HW modul. Chci komunikovat jen základní 
> rychlostí 100kbps. Jakou nejmenší frekvenci mohu zvolit?
>
> Ještě jsem našel, že procesor umí SPI DMA mód. Jen netuším jak ho 
> ovlivňuje frekvence hodin procesoru.
>
> Díky předem znalým za radu
>
> Oja

------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20140826/f46c69af/attachment.html>


Další informace o konferenci Hw-list