Using SPI with 74HC595 and TPIC6B595

Hello, I'm using arduino nano to initialize five r32 bit shift registers. Uning Arduino nano everything seems to work ok!
Using same sketch in arduino mini nothing works...I do not found what is wrong. Sketch has been correclty uploaded (i can debug it with serial terminal), but SPI does not work...I need a different setup in Arduino mini than the nano?
here my sketch (in Arduino Nano I test it, it works):

#include <SPI.h>

///////////////////////
//

//int pll_d=11; //piedino data
//int pll_c=13; //piedino clock
int pll_l=10; //piedino latch
#define DATAOUT 11//MOSI
#define DATAIN 12//MISO
#define SPICLOCK 13//SCK

void setup () {
pinMode(DATAOUT, OUTPUT);
pinMode(DATAIN, INPUT);
pinMode(SPICLOCK,OUTPUT);
pinMode(pll_l, OUTPUT);

SPI.begin();
Serial.begin(9600);
Serial.print("spi begin");
SPI.setDataMode(SPI_MODE0);
SPI.setBitOrder(MSBFIRST);
SPI.setClockDivider(SPI_CLOCK_DIV128);

digitalWrite(pll_l,LOW);
delayMicroseconds(1000);
Serial.print("latch enable down");
//}

//void loop(){
// digitalWrite(pll_l,HIGH);
WriteADF(0x00, 0x58, 0x00, 0x05); //Reg5
delayMicroseconds(2500);
WriteADF(0x00, 0x8c, 0x80, 0x3c); //Reg4
delayMicroseconds(2500);
WriteADF(0x00, 0x00 ,0x04, 0xb3); //Reg3
delayMicroseconds(2500);
WriteADF(0x00, 0x00, 0x4e, 0x42); //Reg2
delayMicroseconds(2500);
WriteADF(0x08, 0x00, 0x80, 0x09); //Reg1
delayMicroseconds(2500);
WriteADF(0x00, 0x3c, 0x00, 0x00); //Reg0
SPI.end();
}

int WriteADF(byte a1, byte a2,byte a3,byte a4) {
SPI.transfer(a1);
SPI.transfer(a2);
SPI.transfer(a3);
SPI.transfer(a4);
Toggle();
return 0;
}

void Toggle() {
digitalWrite(pll_l,HIGH);
delayMicroseconds(1);
digitalWrite(pll_l,LOW);
}

void loop(){
digitalWrite(8,HIGH);
delay(2000);
digitalWrite(8,LOW);
delay(2000);
}

////////////////

thank you for support