Ryo Od / Mbed 2 deprecated ExioBufferdController_Test

Dependencies:   ExioBufferdController MCP23S17 mbed-rtos mbed

Committer:
ryood
Date:
Fri Nov 04 20:44:47 2016 +0000
Revision:
3:ee7fd89f2539
Parent:
2:0a339555ddf6
Child:
4:20ee7612edb9
ExioBufferdIn?RtosTimer????????????????????run()??????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ryood 0:7578a6b316b7 1 /*
ryood 0:7578a6b316b7 2 * ExioBufferdController Test
ryood 0:7578a6b316b7 3 *
ryood 0:7578a6b316b7 4 * mbed: revison 121
ryood 0:7578a6b316b7 5 * mbed-rtos: revision 117
ryood 0:7578a6b316b7 6 *
ryood 0:7578a6b316b7 7 * Created: 2016.11.05
ryood 0:7578a6b316b7 8 *
ryood 0:7578a6b316b7 9 */
ryood 0:7578a6b316b7 10
ryood 0:7578a6b316b7 11 #include "mbed.h"
ryood 0:7578a6b316b7 12 #include "rtos.h"
ryood 0:7578a6b316b7 13
ryood 0:7578a6b316b7 14 #include "ExioMcp23s17.h"
ryood 0:7578a6b316b7 15 #include "ExioInBuffer.h"
ryood 3:ee7fd89f2539 16 #include "ExioBufferedIn.h"
ryood 0:7578a6b316b7 17
ryood 0:7578a6b316b7 18 SPI Spi(PC_12, PC_11, PC_10); // SPI3: mosi, miso, sclk
ryood 0:7578a6b316b7 19 //SPI Spi(PA_7, PA_6, PA_5); // SPI1: mosi, miso, sclk
ryood 0:7578a6b316b7 20
ryood 0:7578a6b316b7 21 // MExioMcp23s17(int hardwareaddress, SPI& spi, PinName nCs, PinName nReset);
ryood 0:7578a6b316b7 22 ExioMcp23s17 Exio(0x00, Spi, PD_2, PA_13);
ryood 0:7578a6b316b7 23
ryood 0:7578a6b316b7 24 void testExioInBuffer()
ryood 0:7578a6b316b7 25 {
ryood 0:7578a6b316b7 26 printf("*** Test ExioInBuffer ***\r\n");
ryood 0:7578a6b316b7 27
ryood 2:0a339555ddf6 28 // Reset MCP23S17 (初期化時にreset()が必要)
ryood 0:7578a6b316b7 29 Exio.reset();
ryood 0:7578a6b316b7 30
ryood 3:ee7fd89f2539 31 ExioInBuffer exioInBufferA(&Exio, ExioPortA);
ryood 3:ee7fd89f2539 32 ExioInBuffer exioInBufferB(&Exio, ExioPortB);
ryood 0:7578a6b316b7 33
ryood 3:ee7fd89f2539 34 exioInBufferA.run(1);
ryood 3:ee7fd89f2539 35 exioInBufferB.run(1);
ryood 0:7578a6b316b7 36
ryood 0:7578a6b316b7 37 while (true) {
ryood 2:0a339555ddf6 38 uint8_t va = exioInBufferA.readPort();
ryood 2:0a339555ddf6 39 uint8_t vb = exioInBufferB.readPort();
ryood 2:0a339555ddf6 40
ryood 2:0a339555ddf6 41 printf("%d %d\r\n", va, vb);
ryood 0:7578a6b316b7 42 //Thread::wait(10);
ryood 0:7578a6b316b7 43 }
ryood 0:7578a6b316b7 44 }
ryood 3:ee7fd89f2539 45 /*
ryood 3:ee7fd89f2539 46 void testExioBufferedIn()
ryood 3:ee7fd89f2539 47 {
ryood 3:ee7fd89f2539 48 printf("*** Test ExioBuffedIn ***\r\n");
ryood 3:ee7fd89f2539 49
ryood 3:ee7fd89f2539 50 // Reset MCP23S17 (初期化時にreset()が必要)
ryood 3:ee7fd89f2539 51 Exio.reset();
ryood 3:ee7fd89f2539 52
ryood 3:ee7fd89f2539 53 ExioInBuffer inBufferB(&Exio, ExioPortB, 1);
ryood 3:ee7fd89f2539 54 ExioBufferedIn inB[] = {
ryood 3:ee7fd89f2539 55 ExioBufferedIn(&inBufferB, 0),
ryood 3:ee7fd89f2539 56 ExioBufferedIn(&inBufferB, 1),
ryood 3:ee7fd89f2539 57 ExioBufferedIn(&inBufferB, 2),
ryood 3:ee7fd89f2539 58 ExioBufferedIn(&inBufferB, 3),
ryood 3:ee7fd89f2539 59 ExioBufferedIn(&inBufferB, 4),
ryood 3:ee7fd89f2539 60 ExioBufferedIn(&inBufferB, 5),
ryood 3:ee7fd89f2539 61 ExioBufferedIn(&inBufferB, 6),
ryood 3:ee7fd89f2539 62 ExioBufferedIn(&inBufferB, 7)
ryood 3:ee7fd89f2539 63 };
ryood 3:ee7fd89f2539 64
ryood 3:ee7fd89f2539 65 inBufferB.run();
ryood 3:ee7fd89f2539 66
ryood 3:ee7fd89f2539 67 while (true) {
ryood 3:ee7fd89f2539 68 for (int i = 0; i < 8; i++) {
ryood 3:ee7fd89f2539 69 int v = inB[i].read();
ryood 3:ee7fd89f2539 70 printf("%d ", v);
ryood 3:ee7fd89f2539 71 }
ryood 3:ee7fd89f2539 72 printf("\r\n");
ryood 3:ee7fd89f2539 73 //Thread::wait(10);
ryood 3:ee7fd89f2539 74 }
ryood 3:ee7fd89f2539 75 }
ryood 3:ee7fd89f2539 76 */
ryood 0:7578a6b316b7 77 int main()
ryood 0:7578a6b316b7 78 {
ryood 0:7578a6b316b7 79 testExioInBuffer();
ryood 3:ee7fd89f2539 80 //testExioBufferedIn();
ryood 0:7578a6b316b7 81 }