TEAMUSB / Mbed 2 deprecated SPI_master_frdm

Dependencies:   mbed

Fork of SPI_master_lpc11u53 by TEAMUSB

Committer:
gabriel4211
Date:
Fri Apr 03 13:27:50 2015 +0000
Revision:
5:5db204c0979d
Parent:
4:995eae7f13f4
random tinkering

Who changed what in which revision?

UserRevisionLine numberNew contents of line
armdran 0:244a4a925723 1 #include "mbed.h"
armdran 0:244a4a925723 2
armdran 0:244a4a925723 3 //SPI Master
armdran 0:244a4a925723 4
armdran 0:244a4a925723 5 Serial pc(USBTX, USBRX);
armdran 0:244a4a925723 6 DigitalOut led(LED1);
armdran 4:995eae7f13f4 7
armdran 4:995eae7f13f4 8 //arch ble
armdran 4:995eae7f13f4 9 //SPI spi(p25, p28, p29); // mosi, miso, sclk
armdran 4:995eae7f13f4 10 //DigitalOut cs(p24);
armdran 4:995eae7f13f4 11
armdran 4:995eae7f13f4 12 //frdm - spi0
armdran 4:995eae7f13f4 13 //SPI spi(PTD6, PTD7, PTD5); // mosi, miso, sclk
armdran 4:995eae7f13f4 14 //DigitalOut cs(PTA14);
armdran 4:995eae7f13f4 15 //ssel seems to work, data = ff :(
armdran 4:995eae7f13f4 16
armdran 4:995eae7f13f4 17 //frdm - spi1
gabriel4211 5:5db204c0979d 18 //SPI spi(D11, D12, D13); // mosi, miso, sclk
gabriel4211 5:5db204c0979d 19 //DigitalOut cs(D10);
gabriel4211 5:5db204c0979d 20
gabriel4211 5:5db204c0979d 21 SPI spi(PTA16, PTA17, PTA15); // mosi, miso, sclk
gabriel4211 5:5db204c0979d 22 DigitalOut cs(PTA14);
armdran 4:995eae7f13f4 23
armdran 4:995eae7f13f4 24
armdran 0:244a4a925723 25 int main() {
gabriel4211 5:5db204c0979d 26 cs = 1;
gabriel4211 5:5db204c0979d 27 spi.format(8,3); //not usefull results
armdran 4:995eae7f13f4 28 spi.frequency(1000000);
armdran 4:995eae7f13f4 29 //spi.frequency(4000000);
armdran 1:4445caa57b32 30 uint8_t i;
armdran 1:4445caa57b32 31 int j = 0;
armdran 1:4445caa57b32 32 uint8_t fail;
armdran 1:4445caa57b32 33 uint8_t success;
armdran 4:995eae7f13f4 34
armdran 1:4445caa57b32 35
armdran 0:244a4a925723 36 while(1) {
armdran 1:4445caa57b32 37 fail = 0;
armdran 1:4445caa57b32 38 success = 0;
armdran 1:4445caa57b32 39
armdran 3:8f2dc71bae92 40 for (i = 0; i < 10; i++) {
armdran 0:244a4a925723 41
armdran 1:4445caa57b32 42 cs = 0;
gabriel4211 5:5db204c0979d 43 uint8_t garbage = spi.write(i);
armdran 1:4445caa57b32 44 cs = 1;
armdran 3:8f2dc71bae92 45
gabriel4211 5:5db204c0979d 46 wait_ms(10);
armdran 3:8f2dc71bae92 47
armdran 1:4445caa57b32 48 cs = 0;
gabriel4211 5:5db204c0979d 49 uint8_t response = spi.write(0xFA);
armdran 1:4445caa57b32 50 cs = 1;
armdran 4:995eae7f13f4 51
gabriel4211 5:5db204c0979d 52 printf("send: %x received: %x garb: %x \r\n", i, response, garbage);
armdran 1:4445caa57b32 53
armdran 1:4445caa57b32 54 if(response == i + 0x10) {
armdran 1:4445caa57b32 55 success++;
armdran 1:4445caa57b32 56 } else {
armdran 1:4445caa57b32 57 fail++;
armdran 1:4445caa57b32 58 }
armdran 1:4445caa57b32 59
armdran 4:995eae7f13f4 60 wait_ms(2000);
armdran 4:995eae7f13f4 61
armdran 3:8f2dc71bae92 62
armdran 1:4445caa57b32 63 }
armdran 0:244a4a925723 64
armdran 1:4445caa57b32 65 pc.printf("%d: fails: %d, success: %d\r\n",j++ , fail, success);
armdran 4:995eae7f13f4 66 wait(.5);
armdran 1:4445caa57b32 67
armdran 0:244a4a925723 68 }
armdran 0:244a4a925723 69
armdran 1:4445caa57b32 70
armdran 0:244a4a925723 71 }