SPI Test (Slave)

Committer:
ryood
Date:
Fri May 19 01:26:32 2017 +0000
Revision:
1:7090a42ac6e0
Parent:
0:317ca984456c
work well

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ryood 0:317ca984456c 1 #include "mbed.h"
ryood 0:317ca984456c 2
ryood 1:7090a42ac6e0 3 #define UART_TRACE (1)
ryood 1:7090a42ac6e0 4
ryood 0:317ca984456c 5 SPISlave spiS(D11, D12, D13, A2); // mosi, miso, sclk, ssel
ryood 0:317ca984456c 6
ryood 0:317ca984456c 7 int main()
ryood 0:317ca984456c 8 {
ryood 0:317ca984456c 9 printf("SPISlave Test\r\n");
ryood 0:317ca984456c 10
ryood 0:317ca984456c 11 spiS.format(8, 0);
ryood 1:7090a42ac6e0 12 spiS.frequency(1000000);
ryood 1:7090a42ac6e0 13
ryood 1:7090a42ac6e0 14 uint8_t pdata = 0;
ryood 0:317ca984456c 15
ryood 0:317ca984456c 16 for (;;) {
ryood 0:317ca984456c 17 if (spiS.receive()) {
ryood 1:7090a42ac6e0 18 uint8_t rdata = spiS.read();
ryood 1:7090a42ac6e0 19
ryood 1:7090a42ac6e0 20
ryood 1:7090a42ac6e0 21 #if (UART_TRACE)
ryood 1:7090a42ac6e0 22 printf("Slave: rdata:%d", rdata);
ryood 1:7090a42ac6e0 23
ryood 1:7090a42ac6e0 24 uint8_t err = rdata - pdata;
ryood 1:7090a42ac6e0 25 if (err != 1) {
ryood 1:7090a42ac6e0 26 printf(" err: %d", err);
ryood 1:7090a42ac6e0 27 }
ryood 1:7090a42ac6e0 28
ryood 1:7090a42ac6e0 29 printf("\r\n");
ryood 1:7090a42ac6e0 30 #endif
ryood 1:7090a42ac6e0 31
ryood 1:7090a42ac6e0 32 pdata = rdata;
ryood 1:7090a42ac6e0 33
ryood 1:7090a42ac6e0 34 uint8_t sdata = rdata;
ryood 1:7090a42ac6e0 35 spiS.reply(sdata);
ryood 1:7090a42ac6e0 36 }
ryood 0:317ca984456c 37 }
ryood 0:317ca984456c 38 }