I have been messing with Seeed Ethernet, SD, and a TFT Shields in learning how to use Arduino. However, I have found that I cannot use these shields together because all three of them use Pin 10 for their SS pin.
Is there any way to programmatically change SS pins for any Arduino shield?
I know that the SD library has SD.begin(), but even when I set the pin to an unused pin, the shields do not work together. I know that there is a SPI library that comes with the Arduino softwrare, but SPI.begin(slaveSelectPin)
is only on Arduino Due, and I have an Arduino Uno.
I found the Go-Between Shield, but looking at the user guide, I would still have to change my code to use other pins on the Arduino (unless Im reading it wrong), so why not skip it entirely, and make the changes on the shields I already have.
Would this be better on electricalengineering?
Is there any way to programmatically change SS pins for any Arduino shield?
No. The pin is hardwired on the shield. You can use different pins on your arduino as SS pins, but they will be connected to the "same" pin on the boards. For this you wouldn't be able to stack the shields and would have to write the SPI code in software.