Problema sketch SD: esempio CardInfo funziona, con SD.begin no!

Buongiorno a tutti, premetto di non avere una grande esperienza con arduino ma una discreta esperienza in altri linguaggi di programmazione (PHP, Ajax, Javascript, ecc...).
Posseggo una Arduino Uno R3 della Sunfounder e una scheda ethernet HanRun HR911105A.
Volevo utilizzare lo slot per la SD presente su quest'ultima e cercando di capire come funzionava il rilevamento di una scheda inserita o meno mi sono trovato di fronte al seguente problema:

Caricando l'esempio presente nell'IDE 1.8 chiamato card info ottengo correttamente tutti i dati, mentre se provo a utilizzare altri esempi che ho trovato, come questo(

if (!SD.begin(4)) {
    Serial.println("Inizializzazione fallita!");
    return;
  } else {
    Serial.println("Wiring is correct and a card is present.");
  }

) mi da costantemente il fallimento... Come mai, sbaglio qualcosa? In entrambi gli sketch includo la libreria SPI e SD. Grazie a tutti

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento, ti chiedo cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con attenzione il su citato REGOLAMENTO ... Grazie.

Guglielmo