If you need a software spi; try this
'
Bcnt var byte
SD_Tx var byte 'data to send
SD_Rx var byte 'data received
'
Ck_SD var PortA.3 'pin 2
Miso var PortA.2 'pin 1
Mosi var PortA.1 'pin 18
Cs_SD var PortA.0 'pin 17
'
'
Tx_spi:
Bcnt = 0 'bit counter
while Bcnt < 8 'invia 8 bit
Ck_SD = 0 'clock low
Bcnt = Bcnt + 1
Mosi = SD_Tx.7 'invia Msb first a SD card
SD_Tx = SD_Tx << 1 'prepara prossimo bit uscita
Ck_SD = 1 'clock up
SD_Rx = SD_Rx << 1 'fa spazio x nuovo bit
SD_Rx.0 = Miso 'lettura bit da SD card
wend
return
Regards
Bookmarks