[tests] test prog for sys_time_usleep

This commit is contained in:
Felix Ruess
2013-02-24 16:31:00 +01:00
parent 1c56151c0e
commit 0987dfcbe5
5 changed files with 111 additions and 7 deletions
+2 -1
View File
@@ -9,7 +9,8 @@
<firmware name="lisa_test_progs">
<target name="test_led" board="lisa_m_2.0"/>
<target name="test_sys_time" board="lisa_m_2.0"/>
<target name="test_sys_time_timer" board="lisa_m_2.0"/>
<target name="test_sys_time_usleep" board="lisa_m_2.0"/>
<target name="test_uart" board="lisa_m_2.0"/>
<target name="test_servos" board="lisa_m_2.0"/>
<target name="test_telemetry" board="lisa_m_2.0"/>
+2 -1
View File
@@ -43,7 +43,8 @@
<firmware name="lisa_test_progs">
<configure name="FLASH_MODE" value="SWD"/>
<target name="test_led" board="lisa_m_1.0"/>
<target name="test_sys_time" board="lisa_m_1.0"/>
<target name="test_sys_time_timer" board="lisa_m_1.0"/>
<target name="test_sys_time_usleep" board="lisa_m_1.0"/>
<target name="test_uart" board="lisa_m_1.0"/>
<target name="test_servos" board="lisa_m_1.0"/>
<target name="test_telemetry" board="lisa_m_1.0"/>
+15 -5
View File
@@ -100,12 +100,22 @@ test_led.srcs += $(SRC_LISA)/test_led.c
#
# test sys_time
#
test_sys_time.ARCHDIR = $(ARCH)
test_sys_time.CFLAGS = $(COMMON_TEST_CFLAGS)
test_sys_time.srcs = $(COMMON_TEST_SRCS)
ifeq ($(BOARD), lisa_m)
ifeq ($(BOARD_VERSION), 2.0)
LED_DEFINES = -DLED_BLUE=3 -DLED_RED=4 -DLED_GREEN=5
endif
endif
LED_DEFINES ?= -DLED_RED=2 -DLED_GREEN=3
test_sys_time.CFLAGS += -DLED_RED=2 -DLED_BLUE=3
test_sys_time.srcs += $(SRC_AIRBORNE)/test/mcu_periph/test_sys_time.c
test_sys_time_timer.ARCHDIR = $(ARCH)
test_sys_time_timer.CFLAGS = $(COMMON_TEST_CFLAGS) $(LED_DEFINES)
test_sys_time_timer.srcs = $(COMMON_TEST_SRCS)
test_sys_time_timer.srcs += $(SRC_AIRBORNE)/test/mcu_periph/test_sys_time_timer.c
test_sys_time_usleep.ARCHDIR = $(ARCH)
test_sys_time_usleep.CFLAGS = $(COMMON_TEST_CFLAGS) $(LED_DEFINES)
test_sys_time_usleep.srcs = $(COMMON_TEST_SRCS)
test_sys_time_usleep.srcs += $(SRC_AIRBORNE)/test/mcu_periph/test_sys_time_usleep.c
@@ -1,3 +1,24 @@
/*
* Copyright (C) 2012 The Paparazzi Team
*
* This file is part of paparazzi.
*
* paparazzi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* paparazzi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with paparazzi; see the file COPYING. If not, write to
* the Free Software Foundation, 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "std.h"
#include "mcu.h"
#include "led.h"
@@ -0,0 +1,71 @@
/*
* Copyright (C) 2012 The Paparazzi Team
*
* This file is part of paparazzi.
*
* paparazzi is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* paparazzi is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with paparazzi; see the file COPYING. If not, write to
* the Free Software Foundation, 59 Temple Place - Suite 330,
* Boston, MA 02111-1307, USA.
*/
#include "std.h"
#include "mcu.h"
#include "led.h"
#include "mcu_periph/sys_time.h"
static inline void main_periodic_1(void);
static inline void main_periodic_15(void);
static inline void main_periodic_05(uint8_t id);
int main(void) {
mcu_init();
sys_time_register_timer(0.5, main_periodic_05);
while(1) {
/* sleep for 1s */
sys_time_usleep(1000000);
main_periodic_1();
/* sleep for 0.5s */
sys_time_usleep(500000);
main_periodic_15();
}
return 0;
}
/*
* Called from main loop polling
*/
static inline void main_periodic_1(void) {
#ifdef LED_GREEN
LED_TOGGLE(LED_GREEN);
#endif
}
static inline void main_periodic_15(void) {
#ifdef LED_BLUE
LED_TOGGLE(LED_BLUE);
#endif
}
/*
* Called from the systime interrupt handler
*/
static inline void main_periodic_05(uint8_t id) {
#ifdef LED_RED
LED_TOGGLE(LED_RED);
#endif
}