#include #include "wiring_private.h" // pinPeripheral() function // DOCUMENTACIÓN AQUI: // https://learn.adafruit.com/using-atsamd21-sercom-to-add-more-spi-i2c-serial-ports?view=all // SPIClass SPI (&PERIPH_SPI, PIN_SPI_MISO, PIN_SPI_SCK, PIN_SPI_MOSI, PAD_SPI_TX, PAD_SPI_RX); // SPI_PAD_0_SCK_1 means MOSI is on SERCOMn.0 and SCK is on SERCOMn.1 // SERCOM_RX_PAD_3 means MISO on SERCOMn.3 SPIClass mySPI (&sercom1, 12, 13, 11, SPI_PAD_0_SCK_1, SERCOM_RX_PAD_3); void setup() { Serial.begin(115200); // do this first, for Reasons mySPI.begin(); // Assign pins 11, 12, 13 to SERCOM functionality pinPeripheral(11, PIO_SERCOM); // MOSI pinPeripheral(12, PIO_SERCOM); // MISO pinPeripheral(13, PIO_SERCOM); // SCK } uint8_t i=0; void loop() { SerialUSB.println(i); mySPI.beginTransaction(SPISettings(8000000, MSBFIRST, SPI_MODE0)); mySPI.transfer(i++); mySPI.endTransaction(); }