diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application/BAT_10_app.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application/BAT_10_app.h new file mode 100644 index 0000000..6fb66a5 --- /dev/null +++ b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application/BAT_10_app.h @@ -0,0 +1,6 @@ + + + + + + diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application/BAT_10_app_c.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application/BAT_10_app_c.h new file mode 100644 index 0000000..e69de29 diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application_config/BAT_10_conf.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application_config/BAT_10_conf.h new file mode 100644 index 0000000..8d64dfa --- /dev/null +++ b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application_config/BAT_10_conf.h @@ -0,0 +1,81 @@ + +/* -------------------- + * define device name + * ------------------*/ +#define DEVICE_NAME "Elite-BAT" +#define MAJOR_PRODUCT_NUMBER 0 +#define MINOR_PRODUCT_NUMBER 3 +#define MAJOR_VERSION_NUMBER 1 +#define MINOR_VERSION_NUMBER 1 + + +/* --------------------------- + * define device buffer size + * -------------------------*/ +#define CUSTOM_GATT_LENGTH +#define BLE_CIS_BUFF_SIZE 20 +#define BLE_INS_BUFF_SIZE 20 +#define BLE_DAT_BUFF_SIZE 40 + +/* ------------------- + * define device pin + * -----------------*/ +// Elite Pin Board +#define E_PIN_LED_SPI_CLK DIO5 +#define E_PIN_LED_SPI_SDI DIO6 +#define E_PIN_ADCA0 DIO0 +#define E_PIN_ADCA1 DIO1 +#define E_PIN_ADCA2 DIO7 +#define E_PIN_SWCSBB DIO2 +#define E_PIN_MEMCS DIO3 +#define E_PIN_DIO4 DIO4 +#define E_PIN_I2C_SCK DIO8 +#define E_PIN_I2C_SDA DIO9 +#define E_PIN_DACCS DIO10 +#define E_PIN_ADCCS DIO11 +#define E_PIN_SCLK0 DIO12 +#define E_PIN_MOSI DIO13 +#define E_PIN_MISO DIO14 + +// SPI & I2C Board +#define E_SPI0_MISO PIN_UNASSIGNED +#define E_SPI0_MOSI E_PIN_LED_SPI_SDI +#define E_SPI0_CLK E_PIN_LED_SPI_CLK +#define E_SPI0_CS PIN_UNASSIGNED + +#define E_SPI1_MISO E_PIN_MISO +#define E_SPI1_MOSI E_PIN_MOSI +#define E_SPI1_CLK E_PIN_SCLK0 +#define E_SPI1_CS PIN_UNASSIGNED + +#define E_I2C0_SCL0 E_PIN_I2C_SCK +#define E_I2C0_SDA0 E_PIN_I2C_SDA + +// no use +#define D0 PIN_UNASSIGNED +#define D1 PIN_UNASSIGNED +#define D2 PIN_UNASSIGNED +#define D3 PIN_UNASSIGNED +#define D4 PIN_UNASSIGNED +#define D5 PIN_UNASSIGNED +#define D6 PIN_UNASSIGNED +#define D7 PIN_UNASSIGNED +#define LOAD0 PIN_UNASSIGNED +#define LOAD1 PIN_UNASSIGNED +#define LOAD2 PIN_UNASSIGNED + +#define SHUT_DOWN PIN_UNASSIGNED //switch_on +#define HIGH_Z LOAD0, PIN_UNASSIGNED +#define CS_MEM LOAD0, PIN_UNASSIGNED +#define CS_ADC LOAD0, PIN_UNASSIGNED +#define CS_DAC LOAD0, PIN_UNASSIGNED +#define MEM_HOLD LOAD1, PIN_UNASSIGNED +#define P_10V_enable LOAD1, PIN_UNASSIGNED +#define P_5V_enable LOAD1, PIN_UNASSIGNED +#define I_MID_ON LOAD2, PIN_UNASSIGNED +#define I_LARGE_ON LOAD2, PIN_UNASSIGNED +#define V_SMALL_ON LOAD2, PIN_UNASSIGNED +#define V_MID_ON LOAD2, PIN_UNASSIGNED +#define I_SMALL_ON LOAD2, PIN_UNASSIGNED +#define OFF LOAD2, PIN_UNASSIGNED //6994 +#define VOUT_SMALL_ON LOAD2, PIN_UNASSIGNED diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application_config/application_config.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application_config/application_config.h new file mode 100644 index 0000000..3865cd4 --- /dev/null +++ b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/application_config/application_config.h @@ -0,0 +1,159 @@ + +#ifndef APPLICATION_CONFIG_H +#define APPLICATION_CONFIG_H + +#ifdef __cplusplus +extern "C" { +#endif + +// !!! define DEF_ELITE_MODEL first please !!! + +/* + * + * product number: MAJOR_PRODUCT_NUMBER, MINOR_PRODUCT_NUMBER, MAJOR_VERSION_NUMBER, MINOR_VERSION_NUMBER + * MAJOR_PRODUCT_NUMBER -> 0:Elite, 1:other serial + * Elite: + * MINOR_PRODUCT_NUMBER -> 1:legacy, 2:EDC, 3:BAT, 4:EIS, 5:TRIG, 6:MEGAFLY + * + * |------------------+------------------------+----------------------+-------------------------+----------------+----------------------+----------------------+----------+ + * | hardware | model name | hw upper board | hw lower board | product number | device name | data server lib name | UI | + * |------------------+------------------------+----------------------+-------------------------+----------------+----------------------+----------------------+----------+ + * | Elite EDC1.4 | DEF_ELITE_EDC_14 | Elite1.4-re Jun.2019 | Elite1.4-re Jun. 2019 | 0, 2, 1, 5 | "Elite-EDC" | Elite_EDC_1.4 | null | + * | Elite EDC1.5 | DEF_ELITE_EDC_15 | Elite1.5 Dec. 2019 | Elite1.5 Dec. 2019 | 0, 2, 1, 6 | "Elite-EDC" | Elite_EDC_1.5 | EliteEDC | + * | Elite EDC1.5re | DEF_ELITE_EDC_15RE | Elite1.5 Dec. 2019 | Elite1.5-re Jan. 2021 | 0, 2, 1, 7 | "Elite-EDC" | Elite_EDC_1.5re | EliteEDC | + * | Elite EDC1.5r2 | DEF_ELITE_EDC_15R2 | Elite1.5 Dec. 2019 | Elite1.5-r2 May. 2022 | 0, 2, 1, 8 | "Elite-EDC" | Elite_EDC_1.5r2 | EliteEDC | + * | Elite BAT0.1 | DEF_ELITE_BAT_01 | Elite2.0 Feb. 2022 | 0, 3, 1, 0 | "Elite-BAT" | Elite_BAT_0.1 | EliteEDC | + * | Elite BAT1.0 | DEF_ELITE_BAT_10 | BAT SMC V1.0 Aug.2022| BAT PWR V1.0 Aug. 2022 | 0, 3, 1, 1 | "Elite-BAT" | Elite_BAT_1.0 | EliteEDC | + * | Elite EIS1.0 | DEF_ELITE_EIS_10 | Elite1.5 Dec. 2019 | Elite EIS1.0 Aug. 2020 | 0, 4, 1, 0 | "Elite-EIS" | Elite_EIS_1.0 | EliteEIS | + * | Elite EIS1.1 | DEF_ELITE_EIS_11 | Elite1.5 Dec. 2019 | Elite EIS1.1 Feb. 2022 | 0, 4, 1, 1 | "Elite-EIS" | Elite_EIS_1.1 | EliteEIS | + * | Elite EISmini1.0 | DEF_ELITE_EIS_MINI_10 | EIS MINI May. 2022 | 0, 4, 1, 2 | "Elite-EIS-MINI" | Elite_EIS_MINI_1.0 | EliteEIS | + * | Elite TRIG0.1 | DEF_ELITE_TRIG_01 | Elite TRIG01 Jan. 2021 | 0, 5, 1, 0 | "Elite-TRIG" | Elite_TRIG_0.1 | EliteTrigger | + * | Elite MEGAFLY0.1 | DEF_ELITE_MEGAFLY_01 | Elite1.5 Dec. 2019 | Elite Megafly Sep. 2020 | 0, 6, 1, 0 | "Elite-MEGAFLY" | Elite_MEGAFLY_0.1 | null | + * |-----------------+------------------------+----------------------+-------------------------+----------------+----------------------+----------------------+----------+ + * ps. + * model name is FW engineer defined + * device name is used for controller + */ + + +#define DEF_ELITE_EDC_14 0 +#define DEF_ELITE_EDC_15 1 +#define DEF_ELITE_EDC_15RE 2 +#define DEF_ELITE_EDC_15R2 3 +#define DEF_ELITE_BAT_01 4 +#define DEF_ELITE_BAT_10 5 +#define DEF_ELITE_EIS_10 6 +#define DEF_ELITE_EIS_11 7 +#define DEF_ELITE_EIS_MINI_10 8 +#define DEF_ELITE_TRIG_01 9 +#define DEF_ELITE_MEGAFLY_01 10 +#define DEF_ELITE_MAX 11 + +#define DEF_ELITE_MODEL DEF_ELITE_BAT_10 +#ifndef DEF_ELITE_MODEL +#error "DEF_ELITE_MODEL not defined" +#endif + +// model information +#if (DEF_ELITE_MODEL == DEF_ELITE_EDC_14) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_EDC_15) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_EDC_15RE) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_EDC_15R2) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_BAT_01) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_BAT_10) + #include "BAT_10_conf.h" +#elif (DEF_ELITE_MODEL == DEF_ELITE_EIS_10) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_EIS_11) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_EIS_MINI_10) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_TRIG_01) + #error "code no support" +#elif (DEF_ELITE_MODEL == DEF_ELITE_MEGAFLY_01) + #error "code no support" +#else + #error "no this model" +#endif + + +// model information +// #if (DEF_ELITE_MODEL == DEF_ELITE_EDC_14) +// #define DEVICE_NAME "Elite-EDC" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 2 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 5 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_EDC_15) +// #define DEVICE_NAME "Elite-EDC" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 2 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 6 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_EDC_15RE) +// #define DEVICE_NAME "Elite-EDC" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 2 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 7 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_EDC_15R2) +// #define DEVICE_NAME "Elite-EDC" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 2 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 8 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_BAT_01) +// #define DEVICE_NAME "Elite-BAT" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 3 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 0 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_BAT_10) +// #define DEVICE_NAME "Elite-BAT" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 3 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 1 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_EIS_10) +// #define DEVICE_NAME "Elite-EIS" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 4 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 0 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_EIS_11) +// #define DEVICE_NAME "Elite-EIS" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 4 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 1 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_EIS_MINI_10) +// #define DEVICE_NAME "Elite-EIS" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 4 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 2 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_TRIG_01) +// #define DEVICE_NAME "Elite-TRIG" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 5 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 0 +// #elif (DEF_ELITE_MODEL == DEF_ELITE_MEGAFLY_01) +// #define DEVICE_NAME "Elite-MEGAFLY" +// #define MAJOR_PRODUCT_NUMBER 0 +// #define MINOR_PRODUCT_NUMBER 6 +// #define MAJOR_VERSION_NUMBER 1 +// #define MINOR_VERSION_NUMBER 0 +// #else +// #error "no this model" +// #endif + +#ifdef __cplusplus +} +#endif +#endif // APPLICATION_CONFIG_H diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/elite_pin_conf.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/elite_pin_conf.h deleted file mode 100644 index 691f433..0000000 --- a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/elite_pin_conf.h +++ /dev/null @@ -1,10 +0,0 @@ -#define DEF_ELITE_EDC_2_0 - -#if defined (DEF_ELITE_EDC_1_5_RE) - #include "boards_config/pin_config_edc15re.h" -#elif defined (DEF_ELITE_EDC_1_5) - #include "boards_config/pin_config_edc15.h" -#elif defined (DEF_ELITE_EDC_2_0) - #include "boards_config/pin_config_edc20.h" - -#endif diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc15.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc15.h deleted file mode 100644 index 02a5f21..0000000 --- a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc15.h +++ /dev/null @@ -1,45 +0,0 @@ -#define D0 DIO3 -#define D1 DIO4 -#define D2 DIO5 -#define D3 DIO6 -#define D4 DIO7 -#define D5 DIO8 -#define D6 DIO9 -#define D7 DIO10 -#define LOAD0 DIO13 -#define LOAD1 DIO12 -#define LOAD2 DIO11 -#define SHUT_DOWN DIO14 - -/* SPI Board */ -#define Board_SPI0_MISO PIN_UNASSIGNED -#define Board_SPI0_MOSI D1 -#define Board_SPI0_CLK D0 -#define Board_SPI0_CS PIN_UNASSIGNED - -#define Board_SPI1_MISO DIO1 -#define Board_SPI1_MOSI D3 -#define Board_SPI1_CLK D2 -#define Board_SPI1_CS PIN_UNASSIGNED - -#define CS_ADC LOAD0, D6 -#define CS_DAC LOAD0, D7 -#define MOSI LOAD0, D3 -#define SCLK LOAD0, D2 -#define LED_MOSI_A LOAD0, D1 -#define LED_SCLK_A LOAD0, D0 -#define CS_MEM LOAD0, D5 - -#define MEM_HOLD LOAD0, D4 -#define HIGH_Z LOAD2, D5 - -#define I_MID_ON LOAD2, D0 -#define I_SMALL_ON LOAD2, D4 -#define I_LARGE_ON LOAD2, D1 -#define V_SMALL_ON LOAD2, D2 -#define V_MID_ON LOAD2, D3 -#define VOUT_SMALL_ON LOAD2, D7 -#define OFF LOAD2, D6 - -#define P_10V_enable LOAD1, D5 -#define P_5V_enable LOAD1, D6 diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc15re.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc15re.h deleted file mode 100644 index 4c3f855..0000000 --- a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc15re.h +++ /dev/null @@ -1,46 +0,0 @@ -#define D0 DIO3 -#define D1 DIO4 -#define D2 DIO5 -#define D3 DIO6 -#define D4 DIO7 -#define D5 DIO8 -#define D6 DIO9 -#define D7 DIO10 -#define LOAD0 DIO13 -#define LOAD1 DIO12 -#define LOAD2 DIO11 - -#define SHUT_DOWN DIO14 //switch_on - -/* SPI Board */ -#define Board_SPI0_MISO PIN_UNASSIGNED -#define Board_SPI0_MOSI D1 -#define Board_SPI0_CLK D0 -#define Board_SPI0_CS PIN_UNASSIGNED - -#define Board_SPI1_MISO DIO1 -#define Board_SPI1_MOSI D3 -#define Board_SPI1_CLK D2 -#define Board_SPI1_CS PIN_UNASSIGNED - -#define LED_SCLK_A LOAD0, D0 -#define LED_MOSI_A LOAD0, D1 -#define SCLK LOAD0, D2 -#define MOSI LOAD0, D3 -#define HIGH_Z LOAD0, D4 -#define CS_MEM LOAD0, D5 -#define CS_ADC LOAD0, D6 -#define CS_DAC LOAD0, D7 - -#define MEM_HOLD LOAD1, D0 -#define P_10V_enable LOAD1, D5 -#define P_5V_enable LOAD1, D6 - -#define I_MID_ON LOAD2, D0 -#define I_LARGE_ON LOAD2, D1 -#define V_SMALL_ON LOAD2, D2 -#define V_MID_ON LOAD2, D3 -#define I_SMALL_ON LOAD2, D4 -#define OFF LOAD2, D6 //6994 -#define VOUT_SMALL_ON LOAD2, D7 - diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc20.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc20.h deleted file mode 100644 index a69a4d5..0000000 --- a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/boards_config/pin_config_edc20.h +++ /dev/null @@ -1,85 +0,0 @@ -/* Elite Pin Board */ -#define E_PIN_LED_SPI_CLK DIO5 -#define E_PIN_LED_SPI_SDI DIO6 -#define E_PIN_ADCA0 DIO0 -#define E_PIN_ADCA1 DIO1 -#define E_PIN_ADCA2 DIO7 -#define E_PIN_SWCSBB DIO2 -#define E_PIN_MEMCS DIO3 -#define E_PIN_DIO4 DIO4 -#define E_PIN_I2C_SCK DIO8 -#define E_PIN_I2C_SDA DIO9 -#define E_PIN_DACCS DIO10 -#define E_PIN_ADCCS DIO11 -#define E_PIN_SCLK0 DIO12 -#define E_PIN_MOSI DIO13 -#define E_PIN_MISO DIO14 - -/* SPI Board */ -#define Board_SPI0_MISO PIN_UNASSIGNED -#define Board_SPI0_MOSI E_PIN_LED_SPI_SDI -#define Board_SPI0_CLK E_PIN_LED_SPI_CLK -#define Board_SPI0_CS PIN_UNASSIGNED - -#define Board_SPI1_MISO E_PIN_MISO -#define Board_SPI1_MOSI E_PIN_MOSI -#define Board_SPI1_CLK E_PIN_SCLK0 -#define Board_SPI1_CS PIN_UNASSIGNED - -/* I2C */ -#define Board_I2C0_SCL0 E_PIN_I2C_SCK -#define Board_I2C0_SDA0 E_PIN_I2C_SDA - - - - - - - - - - - - - - - - - - -#define D0 PIN_UNASSIGNED -#define D1 PIN_UNASSIGNED -#define D2 PIN_UNASSIGNED -#define D3 PIN_UNASSIGNED -#define D4 PIN_UNASSIGNED -#define D5 PIN_UNASSIGNED -#define D6 PIN_UNASSIGNED -#define D7 PIN_UNASSIGNED -#define LOAD0 PIN_UNASSIGNED -#define LOAD1 PIN_UNASSIGNED -#define LOAD2 PIN_UNASSIGNED - -#define SHUT_DOWN PIN_UNASSIGNED //switch_on - - - -// #define ADC_CS DIO11 -//#define DAC_CS DIO10 - -#define HIGH_Z LOAD0, PIN_UNASSIGNED -#define CS_MEM LOAD0, PIN_UNASSIGNED -#define CS_ADC LOAD0, PIN_UNASSIGNED -#define CS_DAC LOAD0, PIN_UNASSIGNED - -#define MEM_HOLD LOAD1, PIN_UNASSIGNED -#define P_10V_enable LOAD1, PIN_UNASSIGNED -#define P_5V_enable LOAD1, PIN_UNASSIGNED - -#define I_MID_ON LOAD2, PIN_UNASSIGNED -#define I_LARGE_ON LOAD2, PIN_UNASSIGNED -#define V_SMALL_ON LOAD2, PIN_UNASSIGNED -#define V_MID_ON LOAD2, PIN_UNASSIGNED -#define I_SMALL_ON LOAD2, PIN_UNASSIGNED -#define OFF LOAD2, PIN_UNASSIGNED //6994 -#define VOUT_SMALL_ON LOAD2, PIN_UNASSIGNED - diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/Elite_version.h b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/Elite_version.h index 7689730..39143f9 100644 --- a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/Elite_version.h +++ b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/headstage/Elite_version.h @@ -3,10 +3,10 @@ #define VERSION_DATE #define VERSION_DATE_YEAR 23 -#define VERSION_DATE_MONTH 2 -#define VERSION_DATE_DAY 14 -#define VERSION_DATE_HOUR 14 -#define VERSION_DATE_MINUTE 21 +#define VERSION_DATE_MONTH 3 +#define VERSION_DATE_DAY 3 +#define VERSION_DATE_HOUR 11 +#define VERSION_DATE_MINUTE 7 // this is NOT the version hash !! // it's the last version hash diff --git a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/simple_peripheral.c b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/simple_peripheral.c index 169301c..d55fd07 100644 --- a/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/simple_peripheral.c +++ b/simplelink/ble_sdk_2_02_02_25/src/examples/simple_peripheral/cc26xx/app/simple_peripheral.c @@ -48,6 +48,7 @@ /********************************************************************* * INCLUDES */ +#include "application_config/application_config.h" #include #include @@ -89,13 +90,11 @@ #include "board_key.h" -#include "board.h" -#include "hardware/DAC_MAX5136.h" - - #include "simple_peripheral.h" // #include "EliteGPTimer.h" + +#include "hardware/DAC_MAX5136.h" #include #include #include @@ -126,390 +125,6 @@ static void elite_gptimer_callback(GPTimerCC26XX_Handle handle, GPTimerCC26XX_In GPTimerCC26XX_registerInterrupt(gptimer_handle, elite_gptimer_callback, GPT_INT_TIMEOUT); \ } while (0) - -// #include "headstage.h" - -/* -============================ -Chip Parameter Specification -============================ - -======================= ============================= -parameter value range -======================= ============================= -sampling rate 10K .. 180k Hz / channel -recording channel 1, 4, 8, 16 -AMP Gain 400, 1000, 2000 -AMP Fast Settling Time 1 us -Stimulation voltage 2V .. 5V -Stimulation pulse width 40 us .. 490 us (50 us/step) -Stimulation pulse shape POS, NEG, P2N, N2P, AWF -Stimulation pulse times 1 .. 253 (4 times/step) -Stimulation pulse freq 30 .. 10K Hz -======================= ============================= - -========================= -Instruction Specification -========================= - -:: - - | | 1 | 2 | 3 | - 012345678901234567890123456789012 - --------------------------------- - |RIS|ID | |LEN| ............. | real instruction send - |VIS|ID |OP |LEN| ............. | virtual instruction send - -H - header - -ID - chip ID - -RIS - real instruction type - -VIS - virtual instruction type - -OP - virtual instruction - -LEN, length - command length in bytes - -TYP_RIS = 0b0011_0000 # 3x -TYP_VIS = 0b1100_0000 # Cx -TYP_VDR = 0b1010_0000 # Ax - -VIS_RST = 0b1111_0000 # Fx reset -VIS_ASK = 0b0011_0000 # 3x ask in -VIS_STI = 0b1100_0000 # Cx stimulate -VIS_FUH = 0b1001_0000 # 9x flush -VIS_INT = 0b0110_0000 # 6x interrupt -VIS_SHIFT_200K = 0b1010_0000 # Ax shift gear to 200K -VIS_SHIFT_10K = 0b1110_0000 # Ex shift gear to 10K -VIS_SHIFT_200R = 0b1000_0000 # 8x shift gear to 100R - - -========================= -Instruction for HeadStage -========================= - -serial send :: - - | | 1 | 2 | 3 | - 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 - ----------------------------------------------------------------- - |HEAD | ------------------------------------------------------- | - |0b100| | MOD | RATE |a|b|c|d| CH[a] | CH[b] | CH[c] | CH[d] | artifact recording mode - |0b101|AGN| LBF | AMP |C|F|S| SVT | SCH_P | SCH_N |A| | actually instruction send to DBS - |0b101|AGN| LBF | AMP |C|F|S| SVT | SCH_P | SCH_N | RATE | direct command - - | CS | LEN |0b1010 | REG_A | |CV |O|B|E|I|PV |RA | DAC control register - | CS | LEN |0b1010 | REG_A | | DAC reset, no operation - | CS | LEN |SS|MUX |PGA |M | DR |T|U|NOP|r| ADC config register - | VIS | - -HEAD - instruction type header. - -MOD - in artifact recording mode. select which wave from should be generated/ - - ====== =========== - value description - ====== =========== - 0b0001 ramp - ====== =========== - -SUB - stimulation instruction sub-type. - -AGN - amp gain - -LBF - low frequency band [1]_ - -AMP - amp mux channel. - -RATE - ADC clock sample rate (index to a value table), used for slave side chip. - - -.. [1] : little-endian. - - -CS - choose instruction write to DAC or ADC - 0000 = DAC - 1111 = ADC - -LEN - command length in bytes - DAC = 3 bytes - ADC = 2 bytes - -REG_A - register address. - 0100 = control address - 0111 = software data reset - 1111 = software full reset - 0000/0101/0110/1101/1110 = no operation - -CV - CLEAR voltage selection. - 00 = zero scale - 01 = midscale - 10/11 = full scale - -O - 5% overrange. - 0 = 5% overrange disable - 1 = 5% overrange enable - -B - bipolar range. - 0 = DAC input for bipolar output range is straight binary coded - 1 = DAC input for bipolar output range is two complement coded - -E - thermal shutdown alert. - 0 = internal digital supplt dosen't power down if die temperature exeeds 150 degrees - 1 = internal digital supply powers down if die temperature exeeds 150 degrees -I - internal reference. - 0 = internal reference turned off - 1 = internal reference turned on (default) - -PV - power up voltage. - 00 = zero scale - 01 = midscale - 10/11 = full scale - -RA - output range. - 000 = -10V to +10V - 001 = 0V to +10V - 010 = -5V to +5V - 011 = 0V to +5V - 100 = -2.5V to +7.5V - 101 = -3V to +3V - 110 = 0V to +16V - 111 = 0V to +20V - -SS - Single-short conversion start - 0 = no effect (default) - 1 = start a single conversion - -MUX - input multiplexer configuration - 000 = AINp is AIN0 and AINn is AIN1 (default) - 001 = AINp is AIN0 and AINn is AIN3 - 010 = AINp is AIN1 and AINn is AIN3 - 011 = AINp is AIN2 and AINn is AIN3 - 100 = AINp is AIN0 and AINn is GND - 101 = AINp is AIN1 and AINn is GND - 110 = AINp is AIN2 and AINn is GND - 111 = AINp is AIN3 and AINn is GND - -PGA - programmable gain amplifier configuration - (Full Scale Range = FSR) - 000 = FSR is 6.144 V - 001 = FSR is 4.096 V - 010 = FSR is 2.048 V (default) - 011 = FSR is 1.024 V - 100 = FSR is 0.512 V - 101 = FSR is 0.256 V - 110 = FSR is 0.256 V - 111 = FSR is 0.256 V - -M - ADC operating mode - 0 = continuous conversion mode - 1 = Power-down and single-shot mode (default) - -DR - data rate - (Sample per second = SPS) - 000 = 8 SPS - 001 = 16 SPS - 010 = 32 SPS - 011 = 64 SPS - 100 = 128 SPS (default) - 101 = 250 SPS - 110 = 475 SPS - 111 = 860 SPS - -T - temperature sensor mode - 0 = ADC mode (default) - 1 = temperature sensor mode - -P - pullup enable - 0 = pullup resistor disable on DOUT - 1 = pullup resistor enable on DOUT (default) - -NOP - no operation - 00/10/11 = Invalid data, do not update the contents of the Config register - 01 = Valid, update the Config register (default) - - -serial receive :: - - | | 1 | 2 | 3 | - 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 - ----------------------------------------------------------------- - | HEAD|E| data | .................................. received content from DBS - | CH | data | F | .............................. data in notify content - -HEAD - 0b101 - -E - EOC flag - -CH - channel - -data - data - -F - flag - - ======= ======= - F value mean - ======= ======= - 0x00 success - 0x11 invalid - ======= ======= - -notify content:: - - | | 1 | 2 | 3 | - 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 - ----------------------------------------------------------------- - | chip ID | data length | - | cpu time | - | CH | data | F | CH | data | F | - | ............................................................. | - -data length - byte counter from cpu time to end. - -cpu time - first data time. (little endian, float) - -============ -program flow -============ - -**NOTE** - -The function name start with ``@`` are headstage specific function -which just be declared in this header. - -**NOTE** - -The function name start with ``~`` are callback function -whose name is the correspond callback setter function -used to present call the callback function set by this setter function. - -initialized ------------ - -1. headstage_gtimer_init -#. headstage_spi_init -#. @headstage_init - -periodic event --------------- - -1. headstage_gptimer_main_handle - - 1. headstage_periodic_handle - - *. [rec/arm mode] - - 1. @update_ins_rec_buffer - - update channel and ADC clock bits. - - 1. @spi_transact_rec_instruction - - spi_txbuf -> Headstage -> spi_rxbuf - - 1. collect_data - - spi_rxbuf -> not_buf - - 1. [buff full] send_notify - - SimpleProfile_SetParameter(not_buf -> 4) - - *. [sti mode] - - 1. @update_ins_sti_buffer - #. @spi_transact_sti_instruction - -characteristic change event ---------------------------- - -1. headstage_instruction_update_handle - - SimpleProfile_GetParameter(3 -> ins_buf) - - 1. update_instruction - - ins_buf -> instru - - *. [INS_TYPE_RIS] - - *. [HDR_DIR] decode_direct_instruction - *. [HDR_REC] decode_recording_instruction - *. [HDR_ARM] decode_artifact_recording_instruction - *. [HDR_STI] decode_stimulating_instruction - - *. [simple] decode_stimulating_simple_instruction - *. [continuous frequency] decode_stimulating_continuous_frequency - - *. [HDR_AWF] decode_stimulating_awf_instruction - - *. [INS_TYPE_VIS] - - *. [VIS_RST] - *. [VIS_INT] - - - - #. update_clock_period - - GPTimer_SetFreq - - #. update_ins_buffer - - instru -> spi_txbuf - -*/ -/*================ - ==== gptimer ==== - ===============*/ - - -/*============ - ==== SPI ==== - ===========*/ - -/* system use SPI parameters */ - #include #include #include @@ -537,27 +152,9 @@ characteristic change event #define SBP_KEY_CHANGE_EVT 0x0010 #endif -/************************** - controller version - EliteZM02 0,2,1,5 - EliteZM15 0,2,1,6 - EliteZM_pulsefly 0,2,1,7 - **************************/ -// product information -#define DEVICE_NAME "Elite-BAT" -#define MAJOR_PRODUCT_NUMBER 0 // 0:Elite, 1:Neulive -#define MINOR_PRODUCT_NUMBER 2 // 1:Elite_legacy(Ori_Neulive) 2:Elite_zm 3:Elite_bat -#define MAJOR_VERSION_NUMBER 1 -#define MINOR_VERSION_NUMBER 6 -// buffer size -#define BLE_CIS_BUFF_CHAR SIMPLEPROFILE_CHAR2 -#define BLE_INS_BUFF_CHAR SIMPLEPROFILE_CHAR3 -#define BLE_DAT_BUFF_CHAR SIMPLEPROFILE_CHAR4 -#define BLE_CIS_BUFF_SIZE SIMPLEPROFILE_CHAR2_LEN -#define BLE_INS_BUFF_SIZE SIMPLEPROFILE_CHAR3_LEN -#define BLE_DAT_BUFF_SIZE SIMPLEPROFILE_CHAR4_LEN +#include "application/BAT_10_app.h" enum send_ins_para_order_e { PARA_1 = 0x01, PARA_2 = 0x02, diff --git a/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile/simple_gatt_profile.h b/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile/simple_gatt_profile.h index 09d20ed..97dbbb0 100644 --- a/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile/simple_gatt_profile.h +++ b/simplelink/ble_sdk_2_02_02_25/src/profiles/simple_profile/simple_gatt_profile.h @@ -56,7 +56,7 @@ extern "C" /********************************************************************* * INCLUDES */ - +#include "application_config/application_config.h" /********************************************************************* * CONSTANTS */ @@ -81,13 +81,24 @@ extern "C" // Simple Keys Profile Services bit fields #define SIMPLEPROFILE_SERVICE 0x00000001 +#ifndef CUSTOM_GATT_LENGTH // Length of Characteristic 5 in bytes #define SIMPLEPROFILE_CHAR5_LEN 5 -/*user insert*/ -#define SIMPLEPROFILE_CHAR4_LEN 40 +#define SIMPLEPROFILE_CHAR4_LEN 20 #define SIMPLEPROFILE_CHAR3_LEN 20 #define SIMPLEPROFILE_CHAR2_LEN 20 #define SIMPLEPROFILE_CHAR1_LEN 20 +#else +/*user insert*/ +#define SIMPLEPROFILE_CHAR5_LEN 5 +#define SIMPLEPROFILE_CHAR4_LEN BLE_DAT_BUFF_SIZE +#define SIMPLEPROFILE_CHAR3_LEN BLE_INS_BUFF_SIZE +#define SIMPLEPROFILE_CHAR2_LEN BLE_CIS_BUFF_SIZE +#define SIMPLEPROFILE_CHAR1_LEN 20 +#define BLE_CIS_BUFF_CHAR SIMPLEPROFILE_CHAR2 +#define BLE_INS_BUFF_CHAR SIMPLEPROFILE_CHAR3 +#define BLE_DAT_BUFF_CHAR SIMPLEPROFILE_CHAR4 +#endif /********************************************************************* * TYPEDEFS */