<html>
<head>
<meta content="text/html; charset=ISO-8859-2"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<font face="Helvetica, Arial, sans-serif">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).<br>
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...<br>
<br>
Hynek Sladky<br>
<br>
<br>
<br>
</font>
<div class="moz-cite-prefix">Dne 26.8.2014 8:40, Ondřej Janovský
napsal(a):<br>
</div>
<blockquote cite="mid:53FC2BC7.8060900@alarex.cz" type="cite">Zdravím,
<br>
<br>
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
.
<br>
SPI je v procesoru jako HW modul. Chci komunikovat jen základní
rychlostí 100kbps. Jakou nejmenší frekvenci mohu zvolit?
<br>
<br>
Ještě jsem našel, že procesor umí SPI DMA mód. Jen netuším jak ho
ovlivňuje frekvence hodin procesoru.
<br>
<br>
Díky předem znalým za radu
<br>
<br>
Oja
<br>
</blockquote>
<br>
</body>
</html>