Library to use the Kaji-Lab's Electrical Simulator

Dependents:   Interference_Simple

Committer:
aktk
Date:
Sun Jan 27 17:20:51 2019 +0000
Revision:
10:ade25cdffd15
Parent:
8:fbe0427fc0f2
merged;

Who changed what in which revision?

UserRevisionLine numberNew 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