MP3-capable chair with sensor-embedded weight scale.

Dependencies:   ACM1602 SDFileSystem VS1053 mbed ClockControl PowerControl

Committer:
kayekss
Date:
Tue Apr 01 16:19:56 2014 +0000
Revision:
3:64f0ba828a2e
Parent:
2:844bedc9dc63
(1) Photo sensor input is digitized as the circuitry adds an external Schmitt-Trigger (2) Input Selector switch's logic is inverted

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kayekss 0:d9789f57fd9d 1 #ifndef ISU_PROJECT_DEFS_H_
kayekss 0:d9789f57fd9d 2 #define ISU_PROJECT_DEFS_H_
kayekss 0:d9789f57fd9d 3
kayekss 0:d9789f57fd9d 4 // Input thresholds
kayekss 1:ef257d63d970 5 #define H_TO_L_THRES 0.25
kayekss 1:ef257d63d970 6 #define L_TO_H_THRES 0.75
kayekss 0:d9789f57fd9d 7
kayekss 0:d9789f57fd9d 8 // Delay count until settling
kayekss 0:d9789f57fd9d 9 #define SETTLING_COUNT 5
kayekss 0:d9789f57fd9d 10
kayekss 0:d9789f57fd9d 11 // Polling interval (second)
kayekss 2:844bedc9dc63 12 #define POLL_INTERVAL_SEC 0.25
kayekss 0:d9789f57fd9d 13
kayekss 0:d9789f57fd9d 14 // Block size of read/write (byte)
kayekss 1:ef257d63d970 15 #define BLOCK_SIZE 64
kayekss 0:d9789f57fd9d 16
kayekss 0:d9789f57fd9d 17 typedef enum {
kayekss 0:d9789f57fd9d 18 CANCELING = -1,
kayekss 0:d9789f57fd9d 19 STOPPING = -2,
kayekss 0:d9789f57fd9d 20 READY = 0,
kayekss 0:d9789f57fd9d 21 PLAYING1 = 1,
kayekss 0:d9789f57fd9d 22 PLAYING2 = 2,
kayekss 0:d9789f57fd9d 23 PLAYING3 = 3,
kayekss 0:d9789f57fd9d 24 PLAYING4 = 4
kayekss 0:d9789f57fd9d 25 } State;
kayekss 0:d9789f57fd9d 26
kayekss 0:d9789f57fd9d 27 typedef enum {
kayekss 0:d9789f57fd9d 28 STOP_REQUEST = -1,
kayekss 0:d9789f57fd9d 29 NONE = 0,
kayekss 0:d9789f57fd9d 30 PLAY1_REQUEST = 1,
kayekss 0:d9789f57fd9d 31 PLAY2_REQUEST = 2,
kayekss 0:d9789f57fd9d 32 PLAY3_REQUEST = 3,
kayekss 0:d9789f57fd9d 33 PLAY4_REQUEST = 4
kayekss 0:d9789f57fd9d 34 } Request;
kayekss 0:d9789f57fd9d 35
kayekss 1:ef257d63d970 36 PinName const xp5 = P0_9; // (p5) SPI1 + MOSI
kayekss 1:ef257d63d970 37 PinName const xp6 = P0_8; // (p6) | MISO
kayekss 1:ef257d63d970 38 PinName const xp7 = P0_7; // (p7) | SCK
kayekss 1:ef257d63d970 39 PinName const xp8 = P0_6; // (p8) | SSEL#
kayekss 1:ef257d63d970 40 PinName const xp9 = P0_0; // (p9) UART3+ Tx I2C1 + SDA
kayekss 1:ef257d63d970 41 PinName const xp10 = P0_1; // (p10) | Rx | SCL
kayekss 1:ef257d63d970 42 PinName const xp11 = P0_18; // (p11) SPI0 + MOSI
kayekss 1:ef257d63d970 43 PinName const xp12 = P0_17; // (p12) | MISO
kayekss 1:ef257d63d970 44 PinName const xp13 = P0_15; // (p13) UART1+ Tx | SCK
kayekss 1:ef257d63d970 45 PinName const xp14 = P0_16; // (p14) | Rx | SSEL#
kayekss 1:ef257d63d970 46 PinName const xp15 = P0_23; // (p15) AnalogIn
kayekss 1:ef257d63d970 47 PinName const xp16 = P0_24; // (p16) AnalogIn
kayekss 1:ef257d63d970 48 PinName const xp17 = P0_25; // (p17) AnalogIn
kayekss 1:ef257d63d970 49 PinName const xp18 = P0_26; // (p18) AnalogIn AnalogOut
kayekss 1:ef257d63d970 50 PinName const xp19 = P1_30; // (p19) AnalogIn
kayekss 1:ef257d63d970 51 PinName const xp20 = P1_31; // (p20) AnalogIn
kayekss 0:d9789f57fd9d 52 PinName const xp21 = P0_2;
kayekss 0:d9789f57fd9d 53 PinName const xp22 = P0_3;
kayekss 0:d9789f57fd9d 54 PinName const xp23 = P0_21;
kayekss 1:ef257d63d970 55 PinName const xp24 = P0_22; // **Onboard LED
kayekss 0:d9789f57fd9d 56 PinName const xp25 = P0_27; // **Open drain
kayekss 0:d9789f57fd9d 57 PinName const xp26 = P0_28; // **Open drain
kayekss 0:d9789f57fd9d 58 PinName const xp27 = P2_13;
kayekss 0:d9789f57fd9d 59 PinName const xp53 = P2_12;
kayekss 0:d9789f57fd9d 60 PinName const xp52 = P2_11;
kayekss 0:d9789f57fd9d 61 PinName const xp51 = P2_10;
kayekss 0:d9789f57fd9d 62 PinName const xp50 = P2_8;
kayekss 0:d9789f57fd9d 63 PinName const xp49 = P2_7;
kayekss 0:d9789f57fd9d 64 PinName const xp48 = P2_6;
kayekss 1:ef257d63d970 65 PinName const xp47 = P2_5; // (p21) PwmOut
kayekss 1:ef257d63d970 66 PinName const xp46 = P2_4; // (p22) PwmOut
kayekss 1:ef257d63d970 67 PinName const xp45 = P2_3; // (p23) PwmOut
kayekss 1:ef257d63d970 68 PinName const xp44 = P2_2; // (p24) PwmOut
kayekss 1:ef257d63d970 69 PinName const xp43 = P2_1; // (p25) PwmOut
kayekss 1:ef257d63d970 70 PinName const xp42 = P2_0; // (p26) PwmOut
kayekss 1:ef257d63d970 71 PinName const xp41 = P0_11; // (p27) UART2+ Rx I2C2 + SCL
kayekss 1:ef257d63d970 72 PinName const xp40 = P0_10; // (p28) | Tx | SDA
kayekss 1:ef257d63d970 73 PinName const xp39 = P0_5; // (p29) CAN + TD
kayekss 1:ef257d63d970 74 PinName const xp38 = P0_4; // (p30) | RD
kayekss 0:d9789f57fd9d 75 PinName const LED0 = P0_22;
kayekss 0:d9789f57fd9d 76
kayekss 0:d9789f57fd9d 77 #endif