Softwérové SPI rozhraní
Moderátor: Moderátoři
- markoni
- Příspěvky: 2312
- Registrován: 30 říj 2006, 00:00
- Bydliště: Poblíž Zlína
- Kontaktovat uživatele:
Softwérové SPI rozhraní
Potřebuji řešit programově SPI rozhraní existuje nějaká rutina? já věřím že jo když existuje na usart?
unsigned char i;
rd_spi_ptr=0;
for (wr_spi_ptr=wr_spi_ptr; wr_spi_ptr>0;)
{
wr_spi_ptr--;
for (i=8;i>0;)
{
if (write_spi_data[wr_spi_ptr] & 1)
{//vyslem log1
MOSI_OUT|=MOSI;
}
else
{//vyslem log0
MOSI_OUT&=~MOSI;
}
SCK_OUT&=~SCK;
SCK_OUT|=SCK;
write_spi_data[wr_spi_ptr]=write_spi_data[wr_spi_ptr]>>1;
i--;
read_spi_data[rd_spi_ptr]=read_spi_data[rd_spi_ptr]<<1;
if (MISO_IN & MISO)
{//prijmem log1
read_spi_data[rd_spi_ptr]|=1;
}
else
{//prijmem log0
read_spi_data[rd_spi_ptr]&=~1;
}
}
rd_spi_ptr++;
}
toto mi cita a zapisuje bufer read/write_spi_data,chyba tam nastavenie CS
EDIT: Tie smajle su ) a ;