diff options
Diffstat (limited to 'tmk_core/tool/mbed/mbed-sdk/libraries/tests/mbed/digitalinout/main.cpp')
-rw-r--r-- | tmk_core/tool/mbed/mbed-sdk/libraries/tests/mbed/digitalinout/main.cpp | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/tmk_core/tool/mbed/mbed-sdk/libraries/tests/mbed/digitalinout/main.cpp b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/mbed/digitalinout/main.cpp new file mode 100644 index 000000000..933565176 --- /dev/null +++ b/tmk_core/tool/mbed/mbed-sdk/libraries/tests/mbed/digitalinout/main.cpp @@ -0,0 +1,95 @@ +#include "test_env.h" + +#if defined(TARGET_LPC1114) +DigitalInOut d1(dp1); +DigitalInOut d2(dp2); + +#elif defined(TARGET_LPC1549) +// TARGET_FF_ARDUINO cannot be used, because D0 is used as USBRX (USB serial +// port pin), D1 is used as USBTX +DigitalInOut d1(D2); +DigitalInOut d2(D7); + +#elif defined(TARGET_NUCLEO_F030R8) || \ + defined(TARGET_NUCLEO_F070RB) || \ + defined(TARGET_NUCLEO_F072RB) || \ + defined(TARGET_NUCLEO_F091RC) || \ + defined(TARGET_NUCLEO_F103RB) || \ + defined(TARGET_NUCLEO_F302R8) || \ + defined(TARGET_NUCLEO_F303RE) || \ + defined(TARGET_NUCLEO_F334R8) || \ + defined(TARGET_NUCLEO_F401RE) || \ + defined(TARGET_NUCLEO_F411RE) || \ + defined(TARGET_NUCLEO_L053R8) || \ + defined(TARGET_NUCLEO_L073RZ) || \ + defined(TARGET_NUCLEO_L152RE) +DigitalInOut d1(PC_7); +DigitalInOut d2(PB_8); + +#elif defined(TARGET_ARCH_MAX) || \ + defined(TARGET_DISCO_F407VG) || \ + defined(TARGET_DISCO_F429ZI)|| \ + defined(TARGET_DISCO_F401VC) +DigitalInOut d1(PC_12); +DigitalInOut d2(PD_0); + +#elif defined(TARGET_FF_ARDUINO) +DigitalInOut d1(D0); +DigitalInOut d2(D7); + +#elif defined(TARGET_MAXWSNENV) +DigitalInOut d1(TP3); +DigitalInOut d2(TP4); + +#elif defined(TARGET_MAX32600MBED) +DigitalInOut d1(P1_0); +DigitalInOut d2(P4_7); + +#else +DigitalInOut d1(p5); +DigitalInOut d2(p25); + +#endif + + +int main() +{ + MBED_HOSTTEST_TIMEOUT(10); + MBED_HOSTTEST_SELECT(default_auto); + MBED_HOSTTEST_DESCRIPTION(DigitalInOut); + MBED_HOSTTEST_START("MBED_A6"); + + bool check = true; + + d1.output(); + d2.input(); + d1 = 1; + wait(0.1); + if (d2 != 1) { + printf("MBED: First check failed! d2 is %d\n", (int)d2); + check = false; + } + d1 = 0; + wait(0.1); + if (d2 != 0) { + printf("MBED: Second check failed! d2 is %d\n", (int)d2); + check = false; + } + + d1.input(); + d2.output(); + d2 = 1; + wait(0.1); + if (d1 != 1) { + printf("MBED: Third check failed! d1 is %d\n", (int)d1); + check = false; + } + d2 = 0; + wait(0.1); + if (d1 != 0) { + printf("MBED: Fourth check failed! d1 is %d\n", (int)d1); + check = false; + } + + MBED_HOSTTEST_RESULT(check); +} |