Library to use the Kaji-Lab's Electrical Simulator
Dependents: Interference_Simple
KajiLabES.h@10:ade25cdffd15, 2019-01-27 (annotated)
- Committer:
- aktk
- Date:
- Sun Jan 27 17:20:51 2019 +0000
- Revision:
- 10:ade25cdffd15
- Parent:
- 8:fbe0427fc0f2
merged;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
aktk | 0:06a61ec386e8 | 1 | #ifndef KAJIMOTO_LAB_ELECTRIC_STIMULATION_H |
aktk | 0:06a61ec386e8 | 2 | #define KAJIMOTO_LAB_ELECTRIC_STIMULATION_H |
aktk | 0:06a61ec386e8 | 3 | #include "mbed.h" |
aktk | 4:46396ccf080e | 4 | /** \Class KajiLabES nyaan |
aktk | 4:46396ccf080e | 5 | * The class which make the electrical stimulator device made by Ph.D Kajimoto |
aktk | 4:46396ccf080e | 6 | * out put sotimulation current and get impedance among electrodes. |
aktk | 4:46396ccf080e | 7 | * |
aktk | 4:46396ccf080e | 8 | */ |
aktk | 0:06a61ec386e8 | 9 | class KajiLabES |
aktk | 0:06a61ec386e8 | 10 | { |
aktk | 0:06a61ec386e8 | 11 | private: |
aktk | 0:06a61ec386e8 | 12 | //DAAD |
aktk | 0:06a61ec386e8 | 13 | SPI _spiDAAD;//(p5, p6, p7); // mosi(master output slave input, miso(not connected), clock signal |
aktk | 0:06a61ec386e8 | 14 | DigitalOut _DA_sync;//(p8); //chip select for AD5452 |
aktk | 0:06a61ec386e8 | 15 | DigitalOut _AD_cs;//(p9); //chip select for AD7276 |
aktk | 0:06a61ec386e8 | 16 | |
aktk | 0:06a61ec386e8 | 17 | public: |
aktk | 0:06a61ec386e8 | 18 | //KajiLabES(); |
aktk | 0:06a61ec386e8 | 19 | KajiLabES( |
aktk | 0:06a61ec386e8 | 20 | PinName mosi = p5, |
aktk | 0:06a61ec386e8 | 21 | PinName miso = p6, |
aktk | 0:06a61ec386e8 | 22 | PinName clk = p7, |
aktk | 0:06a61ec386e8 | 23 | PinName DA_sync = p8, |
aktk | 0:06a61ec386e8 | 24 | PinName AD_cs = p9); |
aktk | 0:06a61ec386e8 | 25 | //~KajiLabES(); |
aktk | 0:06a61ec386e8 | 26 | |
aktk | 3:9110712a0942 | 27 | /** Execute DA&AD at the same time |
aktk | 3:9110712a0942 | 28 | * \par About DA & AD |
aktk | 3:9110712a0942 | 29 | * - DA output electrical current using AD5452(SPI) |
aktk | 3:9110712a0942 | 30 | * - AD input impedance using AD7276(SPI) |
aktk | 3:9110712a0942 | 31 | */ |
aktk | 0:06a61ec386e8 | 32 | short DAAD(short DA); |
aktk | 3:9110712a0942 | 33 | |
aktk | 3:9110712a0942 | 34 | /// Initialize SPI setting |
aktk | 3:9110712a0942 | 35 | /** |
aktk | 3:9110712a0942 | 36 | * DA & AD devices are controlled by SPI. |
aktk | 3:9110712a0942 | 37 | * In this procedure, SPI are configurated as following |
aktk | 3:9110712a0942 | 38 | * - buffer bit: 16 bit |
aktk | 3:9110712a0942 | 39 | * - SPI Mode: 2 |
aktk | 3:9110712a0942 | 40 | * - Frequency: 48000000 Hz |
aktk | 5:8396b186ddd3 | 41 | * |
aktk | 3:9110712a0942 | 42 | * \par About SPI Mode |
aktk | 3:9110712a0942 | 43 | * SPI has 4 modes |
aktk | 8:fbe0427fc0f2 | 44 | * \verbatim |
aktk | 7:400c7306c0f8 | 45 | * |Mode |Polarity |Phase | |
aktk | 7:400c7306c0f8 | 46 | * |:---------:|:---------:|:---------:| |
aktk | 7:400c7306c0f8 | 47 | * |0 |0 |0 | |
aktk | 7:400c7306c0f8 | 48 | * |1 |0 |1 | |
aktk | 7:400c7306c0f8 | 49 | * |2 |1 |0 | |
aktk | 7:400c7306c0f8 | 50 | * |3 |1 |1 | |
aktk | 8:fbe0427fc0f2 | 51 | * \endverbatim |
aktk | 3:9110712a0942 | 52 | * . |
aktk | 3:9110712a0942 | 53 | */ |
aktk | 3:9110712a0942 | 54 | void init(); |
aktk | 0:06a61ec386e8 | 55 | }; |
aktk | 0:06a61ec386e8 | 56 | #endif |