diff --git a/CMakeLists.txt b/CMakeLists.txt index 723e2f947f6476e7ed0041122e39c5258c9fa726..56309e4d6f92f5c10bb689b5cb7f14354b3d54e3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -329,6 +329,9 @@ sbs_target(test-ads1118 stm32f407vg_stm32f4discovery) add_executable(test-ads131m04 src/tests/sensors/test-ads131m04.cpp) sbs_target(test-ads131m04 stm32f429zi_stm32f4discovery) +add_executable(test-ads131m08 src/tests/sensors/test-ads131m08.cpp) +sbs_target(test-ads131m08 stm32f767zi_compute_unit) + add_executable(test-analog-pressure-sensors src/tests/sensors/analog/test-analog-pressure-sensors.cpp) sbs_target(test-analog-pressure-sensors stm32f429zi_stm32f4discovery) diff --git a/src/shared/sensors/ADS131M04/ADS131M04.cpp b/src/shared/sensors/ADS131M04/ADS131M04.cpp index 797d9ba46d3e0e720fc6cedac287c5855ec9ea41..6464665866b1949a61b6ec4004c94df34f6c4b1e 100644 --- a/src/shared/sensors/ADS131M04/ADS131M04.cpp +++ b/src/shared/sensors/ADS131M04/ADS131M04.cpp @@ -334,6 +334,12 @@ bool ADS131M04::selfTest() return false; } + // Reset channel connections + for (int i = 0; i < 8; i++) + { + setChannelInput(static_cast<Channel>(i), Input::POSITIVE_DC_TEST); + } + return true; } diff --git a/src/shared/sensors/ADS131M08/ADS131M08.cpp b/src/shared/sensors/ADS131M08/ADS131M08.cpp index 21c30d1e3de2647b6e427e532e8024c769969e24..9db582e2c95688dea2d8ae4a943c206f58057e14 100644 --- a/src/shared/sensors/ADS131M08/ADS131M08.cpp +++ b/src/shared/sensors/ADS131M08/ADS131M08.cpp @@ -392,6 +392,12 @@ bool ADS131M08::selfTest() return false; } + // Reset channel connections + for (int i = 0; i < 8; i++) + { + setChannelInput(static_cast<Channel>(i), Input::POSITIVE_DC_TEST); + } + return true; } diff --git a/src/tests/sensors/test-ads131m08.cpp b/src/tests/sensors/test-ads131m08.cpp index cd4dd482dc69676d10cc43b7870fe24c729f6496..37728444090c7d7b5b38ca2ee1f7de4da22293af 100644 --- a/src/tests/sensors/test-ads131m08.cpp +++ b/src/tests/sensors/test-ads131m08.cpp @@ -28,22 +28,22 @@ using namespace miosix; using namespace Boardcore; -GpioPin sckPin = GpioPin(GPIOA_BASE, 5); -GpioPin misoPin = GpioPin(GPIOA_BASE, 6); -GpioPin mosiPin = GpioPin(GPIOA_BASE, 7); -GpioPin csPin = GpioPin(GPIOA_BASE, 3); +GpioPin sckPin = GpioPin(GPIOE_BASE, 2); +GpioPin misoPin = GpioPin(GPIOE_BASE, 5); +GpioPin mosiPin = GpioPin(GPIOE_BASE, 6); +GpioPin csPin = GpioPin(GPIOG_BASE, 10); void initBoard() { // Setup gpio pins - csPin.mode(Mode::OUTPUT); - csPin.high(); sckPin.mode(Mode::ALTERNATE); sckPin.alternateFunction(5); misoPin.mode(Mode::ALTERNATE); misoPin.alternateFunction(5); mosiPin.mode(Mode::ALTERNATE); mosiPin.alternateFunction(5); + csPin.mode(Mode::OUTPUT); + csPin.high(); } int main() @@ -52,7 +52,7 @@ int main() initBoard(); // SPI configuration setup - SPIBus spiBus(SPI1); + SPIBus spiBus(SPI4); SPISlave spiSlave(spiBus, csPin, ADS131M08::getDefaultSPIConfig()); // Device initialization