Ryo Od
/
Nucleo_MCP3008_Ticker_Test
MCP3008 and Ticker Class Test
main.cpp@1:c437fef79bc3, 2017-06-11 (annotated)
- 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?
User | Revision | Line number | New 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 |