Anda benar bahwa RaspberryPi hanya menyediakan dua pilihan chip di bus SPI-nya (lihat di sini ). Dan saya berasumsi bahwa driver SPI dan solusi perangkat lunak bergantung pada fakta itu (walaupun jawaban @ joan menunjukkan bahwa pustaka yang berbeda menanganinya secara berbeda dan driver resmi akan memungkinkan pin GPIO sewenang-wenang untuk digunakan sebagai chip yang dipilih di masa depan).
Namun Anda harus ingat bahwa pemilihan chip tidak lebih dari output digital khusus dari Pi. Oleh karena itu Anda selalu dapat memiliki jumlah chip yang lebih besar jika Anda menggunakan pin GPIO. Namun dalam hal ini perangkat lunak Anda akan bertanggung jawab untuk mengatur pin yang sesuai untuk mengatasi budak SPI yang tepat.
Karena seluruh gagasan pemilihan chip adalah untuk secara eksklusif memilih satu budak saja, Anda selanjutnya dapat menggunakan beberapa sirkuit digital sederhana untuk mengurangi jumlah pin GPIO "terbuang" (jika Anda memerlukannya untuk keperluan lain juga). Sesuatu seperti 74HC / HCT138, decoder / demultiplexer 3-ke-8 baris dapat digunakan untuk mengatasi 8 budak melalui 8 pilihan chip hanya dengan 3 pin GPIO.
Penting untuk diingat bahwa jalur bus SCLK dan MOSI dibagi di antara semua budak. Jadi ketika menghubungkan banyak budak ke Pi pastikan kipas keluar dari Pi tidak terlampaui oleh beban (resistansi dan kapasitansi pin input budak) - meskipun ini kurang menjadi masalah saat ini dengan kapasitansi rendah dan resistensi input digital yang tinggi.