From 04c11df0b2d3ef9fa2e8f6d9a27668a8d3d24c7c Mon Sep 17 00:00:00 2001 From: barthess Date: Tue, 15 Mar 2016 10:19:56 +0300 Subject: Updated some testhal projects to new ChibiOS code --- testhal/STM32/STM32F0xx/onewire/Makefile | 8 +-- testhal/STM32/STM32F0xx/onewire/chconf.h | 83 +++++++++++++++------- .../STM32/STM32F0xx/onewire/halconf_community.h | 9 ++- testhal/STM32/STM32F0xx/onewire/onewire_test.c | 6 +- 4 files changed, 71 insertions(+), 35 deletions(-) (limited to 'testhal/STM32/STM32F0xx/onewire') diff --git a/testhal/STM32/STM32F0xx/onewire/Makefile b/testhal/STM32/STM32F0xx/onewire/Makefile index a26473e..577d71b 100644 --- a/testhal/STM32/STM32F0xx/onewire/Makefile +++ b/testhal/STM32/STM32F0xx/onewire/Makefile @@ -78,7 +78,7 @@ PROJECT = ch CHIBIOS = ../../../../../ChibiOS-RT CHIBIOS_CONTRIB = $(CHIBIOS)/../ChibiOS-Contrib # Startup files. -include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/startup_stm32f0xx.mk +include $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC/mk/startup_stm32f0xx.mk # HAL-OSAL files (optional). include $(CHIBIOS_CONTRIB)/os/hal/hal.mk include $(CHIBIOS_CONTRIB)/os/hal/boards/ST_STM32F0308_DISCOVERY/board.mk @@ -86,9 +86,7 @@ include $(CHIBIOS)/os/hal/ports/STM32/STM32F0xx/platform.mk include $(CHIBIOS)/os/hal/osal/rt/osal.mk # RTOS files (optional). include $(CHIBIOS)/os/rt/rt.mk -include $(CHIBIOS)/os/rt/ports/ARMCMx/compilers/GCC/mk/port_v6m.mk -# Other files (optional). -#include $(CHIBIOS)/test/rt/test.mk +include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/port_v6m.mk # Define linker script file here LDSCRIPT= $(STARTUPLD)/STM32F030x8.ld @@ -203,5 +201,5 @@ ULIBS = # End of user defines ############################################################################## -RULESPATH = $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC +RULESPATH = $(CHIBIOS)/os/common/startup/ARMCMx/compilers/GCC include $(RULESPATH)/rules.mk diff --git a/testhal/STM32/STM32F0xx/onewire/chconf.h b/testhal/STM32/STM32F0xx/onewire/chconf.h index 9cb58b6..9bf08a3 100644 --- a/testhal/STM32/STM32F0xx/onewire/chconf.h +++ b/testhal/STM32/STM32F0xx/onewire/chconf.h @@ -1,5 +1,5 @@ /* - ChibiOS/RT - Copyright (C) 2006-2013 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -28,6 +28,8 @@ #ifndef _CHCONF_H_ #define _CHCONF_H_ +#define _CHIBIOS_RT_CONF_ + /*===========================================================================*/ /** * @name System timers settings @@ -39,7 +41,7 @@ * @brief System time counter resolution. * @note Allowed values are 16 or 32 bits. */ -#define CH_CFG_ST_RESOLUTION 16 +#define CH_CFG_ST_RESOLUTION 32 /** * @brief System tick frequency. @@ -99,7 +101,8 @@ * @details When this option is activated the function @p chSysInit() * does not spawn the idle thread. The application @p main() * function becomes the idle thread and must implement an - * infinite loop. */ + * infinite loop. + */ #define CH_CFG_NO_IDLE_THREAD FALSE /** @} */ @@ -154,7 +157,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_WAITEXIT FALSE +#define CH_CFG_USE_WAITEXIT TRUE /** * @brief Semaphores APIs. @@ -162,7 +165,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_SEMAPHORES FALSE +#define CH_CFG_USE_SEMAPHORES TRUE /** * @brief Semaphores queuing mode. @@ -181,7 +184,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_MUTEXES FALSE +#define CH_CFG_USE_MUTEXES TRUE /** * @brief Enables recursive behavior on mutexes. @@ -201,7 +204,7 @@ * @note The default is @p TRUE. * @note Requires @p CH_CFG_USE_MUTEXES. */ -#define CH_CFG_USE_CONDVARS FALSE +#define CH_CFG_USE_CONDVARS TRUE /** * @brief Conditional Variables APIs with timeout. @@ -211,7 +214,7 @@ * @note The default is @p TRUE. * @note Requires @p CH_CFG_USE_CONDVARS. */ -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE +#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE /** * @brief Events Flags APIs. @@ -219,7 +222,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_EVENTS FALSE +#define CH_CFG_USE_EVENTS TRUE /** * @brief Events Flags APIs with timeout. @@ -229,7 +232,7 @@ * @note The default is @p TRUE. * @note Requires @p CH_CFG_USE_EVENTS. */ -#define CH_CFG_USE_EVENTS_TIMEOUT FALSE +#define CH_CFG_USE_EVENTS_TIMEOUT TRUE /** * @brief Synchronous Messages APIs. @@ -238,7 +241,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_MESSAGES FALSE +#define CH_CFG_USE_MESSAGES TRUE /** * @brief Synchronous Messages queuing mode. @@ -259,7 +262,7 @@ * @note The default is @p TRUE. * @note Requires @p CH_CFG_USE_SEMAPHORES. */ -#define CH_CFG_USE_MAILBOXES FALSE +#define CH_CFG_USE_MAILBOXES TRUE /** * @brief I/O Queues APIs. @@ -267,7 +270,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_QUEUES FALSE +#define CH_CFG_USE_QUEUES TRUE /** * @brief Core Memory Manager APIs. @@ -276,7 +279,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_MEMCORE FALSE +#define CH_CFG_USE_MEMCORE TRUE /** * @brief Heap Allocator APIs. @@ -288,7 +291,7 @@ * @p CH_CFG_USE_SEMAPHORES. * @note Mutexes are recommended. */ -#define CH_CFG_USE_HEAP FALSE +#define CH_CFG_USE_HEAP TRUE /** * @brief Memory Pools Allocator APIs. @@ -297,7 +300,7 @@ * * @note The default is @p TRUE. */ -#define CH_CFG_USE_MEMPOOLS FALSE +#define CH_CFG_USE_MEMPOOLS TRUE /** * @brief Dynamic Threads APIs. @@ -308,7 +311,7 @@ * @note Requires @p CH_CFG_USE_WAITEXIT. * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. */ -#define CH_CFG_USE_DYNAMIC FALSE +#define CH_CFG_USE_DYNAMIC TRUE /** @} */ @@ -359,9 +362,16 @@ * @details If enabled then the context switch circular trace buffer is * activated. * - * @note The default is @p FALSE. + * @note The default is @p CH_DBG_TRACE_MASK_NONE. + */ +#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_ALL + +/** + * @brief Trace buffer entries. + * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is + * different from @p CH_DBG_TRACE_MASK_NONE. */ -#define CH_DBG_ENABLE_TRACE FALSE +#define CH_DBG_TRACE_BUFFER_SIZE 128 /** * @brief Debug option, stack checks. @@ -426,10 +436,6 @@ /** * @brief Threads finalization hook. * @details User finalization code added to the @p chThdExit() API. - * - * @note It is inserted into lock zone. - * @note It is also invoked when the threads simply return in order to - * terminate. */ #define CH_CFG_THREAD_EXIT_HOOK(tp) { \ /* Add threads finalization code here.*/ \ @@ -440,7 +446,21 @@ * @details This hook is invoked just before switching between threads. */ #define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ - /* System halt code here.*/ \ + /* Context switch code here.*/ \ +} + +/** + * @brief ISR enter hook. + */ +#define CH_CFG_IRQ_PROLOGUE_HOOK() { \ + /* IRQ prologue code here.*/ \ +} + +/** + * @brief ISR exit hook. + */ +#define CH_CFG_IRQ_EPILOGUE_HOOK() { \ + /* IRQ epilogue code here.*/ \ } /** @@ -449,7 +469,8 @@ * should be invoked from here. * @note This macro can be used to activate a power saving mode. */ -#define CH_CFG_IDLE_ENTER_HOOK() { \ +#define CH_CFG_IDLE_ENTER_HOOK() { \ + /* Idle-enter code here.*/ \ } /** @@ -458,7 +479,8 @@ * should be invoked from here. * @note This macro can be used to deactivate a power saving mode. */ -#define CH_CFG_IDLE_LEAVE_HOOK() { \ +#define CH_CFG_IDLE_LEAVE_HOOK() { \ + /* Idle-leave code here.*/ \ } /** @@ -487,6 +509,15 @@ /* System halt code here.*/ \ } +/** + * @brief Trace hook. + * @details This hook is invoked each time a new record is written in the + * trace buffer. + */ +#define CH_CFG_TRACE_HOOK(tep) { \ + /* Trace code here.*/ \ +} + /** @} */ /*===========================================================================*/ diff --git a/testhal/STM32/STM32F0xx/onewire/halconf_community.h b/testhal/STM32/STM32F0xx/onewire/halconf_community.h index 8da4af6..91dbfbc 100644 --- a/testhal/STM32/STM32F0xx/onewire/halconf_community.h +++ b/testhal/STM32/STM32F0xx/onewire/halconf_community.h @@ -53,12 +53,19 @@ #endif /** - * @brief Enables the community subsystem. + * @brief Enables the CRC subsystem. */ #if !defined(HAL_USE_CRC) || defined(__DOXYGEN__) #define HAL_USE_CRC FALSE #endif +/** + * @brief Enables the RNG subsystem. + */ +#if !defined(HAL_USE_RNG) || defined(__DOXYGEN__) +#define HAL_USE_RNG FALSE +#endif + /*===========================================================================*/ /* FSMCNAND driver related settings. */ /*===========================================================================*/ diff --git a/testhal/STM32/STM32F0xx/onewire/onewire_test.c b/testhal/STM32/STM32F0xx/onewire/onewire_test.c index 87ed160..719420a 100644 --- a/testhal/STM32/STM32F0xx/onewire/onewire_test.c +++ b/testhal/STM32/STM32F0xx/onewire/onewire_test.c @@ -35,7 +35,7 @@ #if defined(BOARD_ST_STM32F0308_DISCOVERY) #define ONEWIRE_PORT GPIOB #define ONEWIRE_PIN GPIOB_PIN0 - #define ONEWIRE_PAD_MODE_ACTIVE (PAL_MODE_ALTERNATE(1) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUDR_PULLUP) + #define ONEWIRE_PAD_MODE_ACTIVE (PAL_MODE_ALTERNATE(1) | PAL_STM32_OTYPE_OPENDRAIN) #define search_led_off() (palClearPad(GPIOC, GPIOC_LED4)) #define search_led_on() (palSetPad(GPIOC, GPIOC_LED4)) #define ONEWIRE_MASTER_CHANNEL 2 @@ -43,7 +43,7 @@ #elif defined(BOARD_ST_STM32F4_DISCOVERY) #define ONEWIRE_PORT GPIOB #define ONEWIRE_PIN GPIOB_PIN0 - #define ONEWIRE_PAD_MODE_ACTIVE (PAL_MODE_ALTERNATE(2) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUDR_PULLUP) + #define ONEWIRE_PAD_MODE_ACTIVE (PAL_MODE_ALTERNATE(2) | PAL_STM32_OTYPE_OPENDRAIN) #define search_led_off() (palClearPad(GPIOD, GPIOD_LED4)) #define search_led_on() (palSetPad(GPIOD, GPIOD_LED4)) #define ONEWIRE_MASTER_CHANNEL 2 @@ -61,7 +61,7 @@ #define ONEWIRE_PORT GPIOB #define ONEWIRE_PIN GPIOB_TACHOMETER #include "pads.h" - #define ONEWIRE_PAD_MODE_ACTIVE (PAL_MODE_ALTERNATE(2) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUDR_PULLUP) + #define ONEWIRE_PAD_MODE_ACTIVE (PAL_MODE_ALTERNATE(2) | PAL_STM32_OTYPE_OPENDRAIN) #define search_led_on red_led_on #define search_led_off red_led_off #define ONEWIRE_MASTER_CHANNEL 2 -- cgit v1.2.3