TEAMUSB / Mbed 2 deprecated SPI_master_frdm

Dependencies:   mbed

Fork of SPI_master_lpc11u53 by TEAMUSB

Committer:
armdran
Date:
Wed Apr 01 13:03:01 2015 +0000
Revision:
4:995eae7f13f4
Parent:
3:8f2dc71bae92
Child:
5:5db204c0979d
working spi master connection on frdm

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
armdran 4:995eae7f13f4 18 SPI spi(D11, D12, D13); // mosi, miso, sclk
armdran 3:8f2dc71bae92 19 DigitalOut cs(D10);
armdran 4:995eae7f13f4 20
armdran 4:995eae7f13f4 21
armdran 0:244a4a925723 22 int main() {
armdran 0:244a4a925723 23
armdran 4:995eae7f13f4 24 spi.format(8,1); //not usefull results
armdran 4:995eae7f13f4 25 spi.frequency(1000000);
armdran 4:995eae7f13f4 26 //spi.frequency(4000000);
armdran 1:4445caa57b32 27 uint8_t i;
armdran 1:4445caa57b32 28 int j = 0;
armdran 1:4445caa57b32 29 uint8_t fail;
armdran 1:4445caa57b32 30 uint8_t success;
armdran 4:995eae7f13f4 31
armdran 1:4445caa57b32 32
armdran 0:244a4a925723 33 while(1) {
armdran 1:4445caa57b32 34 fail = 0;
armdran 1:4445caa57b32 35 success = 0;
armdran 1:4445caa57b32 36
armdran 3:8f2dc71bae92 37 for (i = 0; i < 10; i++) {
armdran 0:244a4a925723 38
armdran 1:4445caa57b32 39 cs = 0;
armdran 1:4445caa57b32 40 spi.write(i);
armdran 1:4445caa57b32 41 cs = 1;
armdran 3:8f2dc71bae92 42
armdran 3:8f2dc71bae92 43 wait_ms(100);
armdran 3:8f2dc71bae92 44
armdran 1:4445caa57b32 45 cs = 0;
armdran 1:4445caa57b32 46 uint8_t response = spi.write(0xFF);
armdran 1:4445caa57b32 47 cs = 1;
armdran 4:995eae7f13f4 48
armdran 4:995eae7f13f4 49 printf("send: %x received: %x\r\n", i, response);
armdran 1:4445caa57b32 50
armdran 1:4445caa57b32 51 if(response == i + 0x10) {
armdran 1:4445caa57b32 52 success++;
armdran 1:4445caa57b32 53 } else {
armdran 1:4445caa57b32 54 fail++;
armdran 1:4445caa57b32 55 }
armdran 1:4445caa57b32 56
armdran 4:995eae7f13f4 57 wait_ms(2000);
armdran 4:995eae7f13f4 58
armdran 3:8f2dc71bae92 59
armdran 1:4445caa57b32 60 }
armdran 0:244a4a925723 61
armdran 1:4445caa57b32 62 pc.printf("%d: fails: %d, success: %d\r\n",j++ , fail, success);
armdran 4:995eae7f13f4 63 wait(.5);
armdran 1:4445caa57b32 64
armdran 0:244a4a925723 65 }
armdran 0:244a4a925723 66
armdran 1:4445caa57b32 67
armdran 0:244a4a925723 68 }