Update such that tests pass for v1.2
This includes minor updates for the th different MCU variant, and bugfixes. Resolves #7
This commit is contained in:
@@ -38,13 +38,13 @@ using BSP::SystemTimer;
|
||||
using BSP::time_t;
|
||||
|
||||
static BSP::Schedule::LowPowerTaskScheduler<1> g_sched;
|
||||
static BSP::GpioDriver g_gpioa(GPIOA);
|
||||
#if defined(BOARD_WATCH)
|
||||
static BSP::UsartDriver g_test_uart(USART2, g_sched);
|
||||
static BSP::GpioPin g_tx_pin(g_gpioa, 9);
|
||||
#elif defined(BOARD_DEVBOARD)
|
||||
static BSP::UsartDriver g_test_uart(USART1, g_sched);
|
||||
#endif
|
||||
static BSP::GpioDriver g_gpioa(GPIOA);
|
||||
static BSP::GpioPin g_test_pin(g_gpioa, 6);
|
||||
|
||||
static time_t get_time() {
|
||||
time_t time;
|
||||
@@ -87,10 +87,10 @@ static void stop_for(time_t delay) {
|
||||
static void fail_if_wakeup(time_t delay) {
|
||||
uint32_t pre_wakeups = BSP::RtcDriver::get_wakeup_count();
|
||||
time_t before = get_time();
|
||||
while (before + delay > get_time() || BSP::RtcDriver::get_wakeup_count() != pre_wakeups) {}
|
||||
while (before + delay > get_time() && BSP::RtcDriver::get_wakeup_count() == pre_wakeups) {}
|
||||
|
||||
if (BSP::RtcDriver::get_wakeup_count() != pre_wakeups) {
|
||||
g_test_uart.tx_blocking("Got unexpected wakeup IRQ");
|
||||
g_test_uart.tx_blocking("Got unexpected wakeup IRQ\r\n");
|
||||
g_test_uart.tx_blocking(test_fail_text);
|
||||
TEST_SPIN();
|
||||
}
|
||||
@@ -102,9 +102,12 @@ static void fail_if_wakeup(time_t delay) {
|
||||
SystemTimer::set_timer(BSP::RtcDriver::get_system_timer());
|
||||
|
||||
g_gpioa.enable();
|
||||
g_test_pin.configure_alternate_function(1);
|
||||
g_test_uart.init();
|
||||
|
||||
#if defined(BOARD_WATCH)
|
||||
g_tx_pin.configure_alternate_function(4);
|
||||
#endif
|
||||
|
||||
g_test_uart.init();
|
||||
g_test_uart.tx_blocking(test_start_text);
|
||||
|
||||
for (uint32_t i = 0; i <= 100; i++) {
|
||||
|
||||
Reference in New Issue
Block a user