MCP3008 and Ticker Class Test

Dependencies:   mbed mcp3008

Committer:
ryood
Date:
Sun Jun 11 13:06:27 2017 +0000
Revision:
1:c437fef79bc3
Parent:
0:0e326a52b0f4
Child:
3:589f800b8980
updated

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ryood 0:0e326a52b0f4 1 #include "mbed.h"
ryood 0:0e326a52b0f4 2 #include "mcp3008.h"
ryood 0:0e326a52b0f4 3
ryood 1:c437fef79bc3 4 #define SAMPLING_RATE (48000)
ryood 1:c437fef79bc3 5 #define SAMPLING_PERIOD (1.0f/SAMPLING_RATE)
ryood 1:c437fef79bc3 6
ryood 1:c437fef79bc3 7 DigitalOut checkPin(D2);
ryood 1:c437fef79bc3 8
ryood 1:c437fef79bc3 9 void isr()
ryood 1:c437fef79bc3 10 {
ryood 1:c437fef79bc3 11 checkPin = 1;
ryood 1:c437fef79bc3 12 wait_us(1);
ryood 1:c437fef79bc3 13 checkPin = 0;
ryood 1:c437fef79bc3 14 }
ryood 1:c437fef79bc3 15
ryood 0:0e326a52b0f4 16 int main()
ryood 0:0e326a52b0f4 17 {
ryood 0:0e326a52b0f4 18 SPI spiM(SPI_MOSI, SPI_MISO, SPI_SCK);
ryood 1:c437fef79bc3 19 spiM.frequency(4000000);
ryood 0:0e326a52b0f4 20 MCP3008 mcp3008_0(spiM, D10);
ryood 1:c437fef79bc3 21 MCP3008 mcp3008_1(spiM, D9);
ryood 0:0e326a52b0f4 22
ryood 0:0e326a52b0f4 23 float v0[8];
ryood 1:c437fef79bc3 24 float v1[8];
ryood 1:c437fef79bc3 25
ryood 1:c437fef79bc3 26 Ticker t;
ryood 1:c437fef79bc3 27 t.attach(&isr, SAMPLING_PERIOD);
ryood 0:0e326a52b0f4 28
ryood 0:0e326a52b0f4 29 for (;;) {
ryood 0:0e326a52b0f4 30 for (int i = 0; i < 8; i++) {
ryood 0:0e326a52b0f4 31 v0[i] = mcp3008_0.read_input(i);
ryood 0:0e326a52b0f4 32 }
ryood 1:c437fef79bc3 33 for (int i = 0; i < 8; i++) {
ryood 1:c437fef79bc3 34 v1[i] = mcp3008_1.read_input(i);
ryood 1:c437fef79bc3 35 }
ryood 0:0e326a52b0f4 36
ryood 0:0e326a52b0f4 37 printf("Device0\t");
ryood 0:0e326a52b0f4 38 for (int i = 0; i < 8; i++) {
ryood 0:0e326a52b0f4 39 printf("%.3f\t", v0[i]);
ryood 0:0e326a52b0f4 40 }
ryood 0:0e326a52b0f4 41 printf("\r\n");
ryood 1:c437fef79bc3 42 printf("Device1\t");
ryood 1:c437fef79bc3 43 for (int i = 0; i < 8; i++) {
ryood 1:c437fef79bc3 44 printf("%.3f\t", v1[i]);
ryood 1:c437fef79bc3 45 }
ryood 1:c437fef79bc3 46 printf("\r\n");
ryood 0:0e326a52b0f4 47
ryood 0:0e326a52b0f4 48 wait(0.2);
ryood 0:0e326a52b0f4 49 }
ryood 0:0e326a52b0f4 50 }
ryood 0:0e326a52b0f4 51