Bạn đúng rằng RaspberryPi chỉ cung cấp hai lựa chọn chip tại bus SPI của nó (xem tại đây ). Và tôi cho rằng các trình điều khiển SPI và giải pháp phần mềm dựa trên thực tế đó (mặc dù câu trả lời của @ joan cho thấy các thư viện khác nhau xử lý nó khác nhau và trình điều khiển chính thức sẽ cho phép các chân GPIO tùy ý được sử dụng làm lựa chọn chip trong tương lai).
Tuy nhiên, bạn cần lưu ý rằng việc chọn chip không gì khác hơn là đầu ra kỹ thuật số chuyên dụng của Pi. Do đó, bạn luôn có thể có số lượng chip lớn hơn nếu bạn sử dụng các chân GPIO. Tuy nhiên, trong trường hợp đó, phần mềm của bạn sẽ chịu trách nhiệm đặt các chân thích hợp để xử lý nô lệ SPI phù hợp.
Vì toàn bộ ý tưởng của các lựa chọn chip là chỉ chọn lẫn nhau một nô lệ duy nhất, bạn có thể sử dụng thêm một số mạch kỹ thuật số đơn giản để giảm số lượng chân GPIO "lãng phí" (nếu bạn cũng cần chúng cho các mục đích khác). Một cái gì đó giống như 74HC / HCT138, bộ giải mã / khử kênh 3 đến 8 dòng có thể được sử dụng để giải quyết 8 nô lệ thông qua 8 lựa chọn chip chỉ với 3 chân GPIO.
Đáng chú ý là hãy nhớ rằng các tuyến xe buýt SCLK và MOSI được chia sẻ giữa tất cả các nô lệ. Vì vậy, khi cắm nhiều nô lệ vào Pi, đảm bảo rằng quạt ra khỏi Pi không bị vượt quá tải (điện trở và điện dung của các chân đầu vào của các nô lệ) - mặc dù ngày nay vấn đề này ít hơn với điện dung thấp và điện trở cao của đầu vào kỹ thuật số.