mirror of https://github.com/ARMmbed/mbed-os.git
67 lines
1.8 KiB
C++
67 lines
1.8 KiB
C++
#include "mbed.h"
|
|
#include "test_env.h"
|
|
|
|
#if !DEVICE_SPI
|
|
#error [NOT_SUPPORTED] SPI not supported
|
|
#endif
|
|
|
|
#if defined(TARGET_KL25Z)
|
|
SPI spi(PTD2, PTD3, PTD1); // mosi, miso, sclk
|
|
DigitalOut cs(PTA13);
|
|
#elif defined(TARGET_KL05Z)
|
|
SPI spi(PTA7, PTA6, PTB0); // mosi, miso, sclk
|
|
DigitalOut cs(PTB1);
|
|
#elif defined(TARGET_KL46Z)
|
|
SPI spi(PTD2, PTD3, PTD1); // mosi, miso, sclk
|
|
DigitalOut cs(PTA13);
|
|
#elif defined(TARGET_ELMO_F411RE)
|
|
SPI spi(PB_15, PB_14, PB_13); // mosi, miso, sclk
|
|
DigitalOut cs(PB_12);
|
|
#elif defined(TARGET_FF_ARDUINO)
|
|
SPI spi(D11, D12, D13); // mosi, miso, sclk
|
|
DigitalOut cs(D10);
|
|
#elif defined(TARGET_EFM32LG_STK3600) || defined(TARGET_EFM32GG_STK3700) || defined(TARGET_EFM32WG_STK3800)
|
|
SPI spi(PD0, PD1, PD2); // mosi, miso, sclk
|
|
DigitalOut cs(PD3);
|
|
#elif defined(TARGET_EFM32ZG_STK3200)
|
|
SPI spi(PD7, PD6, PC15); // mosi, miso, sclk
|
|
DigitalOut cs(PC14);
|
|
#elif defined(TARGET_EFM32HG_STK3400)
|
|
SPI spi(PE10, PE11, PE12); // mosi, miso, sclk
|
|
DigitalOut cs(PE13);
|
|
#elif defined(TARGET_EFM32PG_STK3401)
|
|
SPI spi(PC6, PC7, PC8); // mosi, miso, sclk
|
|
DigitalOut cs(PC9);
|
|
#elif defined(TARGET_SAMR21G18A)
|
|
SPI spi(PB22, PB02, PB23); // mosi, miso, sclk
|
|
DigitalOut cs(PB03);
|
|
#elif defined(TARGET_SAMD21J18A) || defined(TARGET_SAMD21G18A) || defined(TARGET_SAML21J18A)
|
|
SPI spi(PA18, PA16, PA19); // mosi, miso, sclk
|
|
DigitalOut cs(PA17);
|
|
#elif defined(TARGET_SAMG55J19)
|
|
SPI spi(PA10, PA09, PB00, PA25); // mosi, miso, sclk cs
|
|
DigitalOut cs(PA25);
|
|
#else
|
|
SPI spi(p5, p6, p7); // mosi, miso, sclk
|
|
DigitalOut cs(p8);
|
|
#endif
|
|
|
|
int main() {
|
|
int data = 0;
|
|
int res = 0;
|
|
|
|
for(int i = 0; i < 30; i++) {
|
|
|
|
cs = 0;
|
|
res = spi.write(data++);
|
|
cs = 1;
|
|
|
|
wait_ms(0.001);
|
|
|
|
if ((i > 1) && ((res + 2) != data))
|
|
notify_completion(false);
|
|
}
|
|
|
|
notify_completion(true);
|
|
}
|