You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							354 lines
						
					
					
						
							10 KiB
						
					
					
				
			
		
		
	
	
							354 lines
						
					
					
						
							10 KiB
						
					
					
				/*
 | 
						|
    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.
 | 
						|
    You may obtain a copy of the License at
 | 
						|
 | 
						|
        http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
 | 
						|
    Unless required by applicable law or agreed to in writing, software
 | 
						|
    distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
    See the License for the specific language governing permissions and
 | 
						|
    limitations under the License.
 | 
						|
*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @file    templates/halconf.h
 | 
						|
 * @brief   HAL configuration header.
 | 
						|
 * @details HAL configuration file, this file allows to enable or disable the
 | 
						|
 *          various device drivers from your application. You may also use
 | 
						|
 *          this file in order to override the device drivers default settings.
 | 
						|
 *
 | 
						|
 * @addtogroup HAL_CONF
 | 
						|
 * @{
 | 
						|
 */
 | 
						|
 | 
						|
#ifndef _HALCONF_H_
 | 
						|
#define _HALCONF_H_
 | 
						|
 | 
						|
#include "mcuconf.h"
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the PAL subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_PAL                 TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the ADC subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_ADC                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the CAN subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_CAN                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the DAC subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_DAC                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the EXT subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_EXT                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the GPT subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_GPT                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the I2C subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_I2C                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the I2S subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_I2S                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the ICU subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_ICU                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the MAC subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_MAC                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the MMC_SPI subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_MMC_SPI             FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the PWM subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_PWM                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the RTC subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_RTC                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the SDC subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_SDC                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the SERIAL subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_SERIAL              FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the SERIAL over USB subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_SERIAL_USB          FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the SPI subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_SPI                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the UART subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_UART                FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the USB subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_USB                 TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the WDG subsystem.
 | 
						|
 */
 | 
						|
#if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
 | 
						|
#define HAL_USE_WDG                 FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* ADC driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables synchronous APIs.
 | 
						|
 * @note    Disabling this option saves both code and data space.
 | 
						|
 */
 | 
						|
#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
 | 
						|
#define ADC_USE_WAIT                TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
 | 
						|
 * @note    Disabling this option saves both code and data space.
 | 
						|
 */
 | 
						|
#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
 | 
						|
#define ADC_USE_MUTUAL_EXCLUSION    TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* CAN driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Sleep mode related APIs inclusion switch.
 | 
						|
 */
 | 
						|
#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
 | 
						|
#define CAN_USE_SLEEP_MODE          TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* I2C driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the mutual exclusion APIs on the I2C bus.
 | 
						|
 */
 | 
						|
#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
 | 
						|
#define I2C_USE_MUTUAL_EXCLUSION    TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* MAC driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables an event sources for incoming packets.
 | 
						|
 */
 | 
						|
#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
 | 
						|
#define MAC_USE_ZERO_COPY           FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables an event sources for incoming packets.
 | 
						|
 */
 | 
						|
#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
 | 
						|
#define MAC_USE_EVENTS              TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* MMC_SPI driver related settings.                                          */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Delays insertions.
 | 
						|
 * @details If enabled this options inserts delays into the MMC waiting
 | 
						|
 *          routines releasing some extra CPU time for the threads with
 | 
						|
 *          lower priority, this may slow down the driver a bit however.
 | 
						|
 *          This option is recommended also if the SPI driver does not
 | 
						|
 *          use a DMA channel and heavily loads the CPU.
 | 
						|
 */
 | 
						|
#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
 | 
						|
#define MMC_NICE_WAITING            TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* SDC driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Number of initialization attempts before rejecting the card.
 | 
						|
 * @note    Attempts are performed at 10mS intervals.
 | 
						|
 */
 | 
						|
#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
 | 
						|
#define SDC_INIT_RETRY              100
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Include support for MMC cards.
 | 
						|
 * @note    MMC support is not yet implemented so this option must be kept
 | 
						|
 *          at @p FALSE.
 | 
						|
 */
 | 
						|
#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
 | 
						|
#define SDC_MMC_SUPPORT             FALSE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Delays insertions.
 | 
						|
 * @details If enabled this options inserts delays into the MMC waiting
 | 
						|
 *          routines releasing some extra CPU time for the threads with
 | 
						|
 *          lower priority, this may slow down the driver a bit however.
 | 
						|
 */
 | 
						|
#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
 | 
						|
#define SDC_NICE_WAITING            TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* SERIAL driver related settings.                                           */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Default bit rate.
 | 
						|
 * @details Configuration parameter, this is the baud rate selected for the
 | 
						|
 *          default configuration.
 | 
						|
 */
 | 
						|
#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
 | 
						|
#define SERIAL_DEFAULT_BITRATE      38400
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Serial buffers size.
 | 
						|
 * @details Configuration parameter, you can change the depth of the queue
 | 
						|
 *          buffers depending on the requirements of your application.
 | 
						|
 * @note    The default is 64 bytes for both the transmission and receive
 | 
						|
 *          buffers.
 | 
						|
 */
 | 
						|
#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
 | 
						|
#define SERIAL_BUFFERS_SIZE         16
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* SERIAL_USB driver related setting.                                        */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Serial over USB buffers size.
 | 
						|
 * @details Configuration parameter, the buffer size must be a multiple of
 | 
						|
 *          the USB data endpoint maximum packet size.
 | 
						|
 * @note    The default is 64 bytes for both the transmission and receive
 | 
						|
 *          buffers.
 | 
						|
 */
 | 
						|
#if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
 | 
						|
#define SERIAL_USB_BUFFERS_SIZE     1
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* SPI driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables synchronous APIs.
 | 
						|
 * @note    Disabling this option saves both code and data space.
 | 
						|
 */
 | 
						|
#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
 | 
						|
#define SPI_USE_WAIT                TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
 | 
						|
 * @note    Disabling this option saves both code and data space.
 | 
						|
 */
 | 
						|
#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
 | 
						|
#define SPI_USE_MUTUAL_EXCLUSION    TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
/*===========================================================================*/
 | 
						|
/* USB driver related settings.                                              */
 | 
						|
/*===========================================================================*/
 | 
						|
 | 
						|
/**
 | 
						|
 * @brief   Enables synchronous APIs.
 | 
						|
 * @note    Disabling this option saves both code and data space.
 | 
						|
 */
 | 
						|
#if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
 | 
						|
#define USB_USE_WAIT                TRUE
 | 
						|
#endif
 | 
						|
 | 
						|
#endif /* _HALCONF_H_ */
 | 
						|
 | 
						|
/** @} */
 |