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.
119 lines
2.9 KiB
119 lines
2.9 KiB
#pragma once |
|
|
|
#include <hwdef.h> |
|
#include <hal.h> |
|
|
|
#define HAL_BOARD_NAME "ChibiOS" |
|
|
|
#if HAL_MEMORY_TOTAL_KB >= 1000 |
|
#define HAL_MEM_CLASS HAL_MEM_CLASS_1000 |
|
#elif HAL_MEMORY_TOTAL_KB >= 500 |
|
#define HAL_MEM_CLASS HAL_MEM_CLASS_500 |
|
#elif HAL_MEMORY_TOTAL_KB >= 300 |
|
#define HAL_MEM_CLASS HAL_MEM_CLASS_300 |
|
#elif HAL_MEMORY_TOTAL_KB >= 192 |
|
#define HAL_MEM_CLASS HAL_MEM_CLASS_192 |
|
#elif HAL_MEMORY_TOTAL_KB >= 64 |
|
#define HAL_MEM_CLASS HAL_MEM_CLASS_64 |
|
#else |
|
#define HAL_MEM_CLASS HAL_MEM_CLASS_20 |
|
#endif |
|
|
|
#ifndef HAL_GPIO_LED_ON |
|
#define HAL_GPIO_LED_ON 0 |
|
#endif |
|
#ifndef HAL_GPIO_LED_OFF |
|
#define HAL_GPIO_LED_OFF 1 |
|
#endif |
|
|
|
#ifndef HAL_NUM_CAN_IFACES |
|
#define HAL_NUM_CAN_IFACES 0 |
|
#endif |
|
|
|
#ifndef HAL_HAVE_BOARD_VOLTAGE |
|
#define HAL_HAVE_BOARD_VOLTAGE 0 |
|
#endif |
|
|
|
#ifndef HAL_HAVE_SERVO_VOLTAGE |
|
#define HAL_HAVE_SERVO_VOLTAGE 0 |
|
#endif |
|
|
|
#ifdef HAL_GPIO_PIN_SAFETY_IN |
|
#define HAL_HAVE_SAFETY_SWITCH 1 |
|
#endif |
|
|
|
#ifndef HAL_HAVE_SAFETY_SWITCH |
|
#define HAL_HAVE_SAFETY_SWITCH 0 |
|
#endif |
|
|
|
#define HAL_STORAGE_SIZE_AVAILABLE HAL_STORAGE_SIZE |
|
|
|
#ifndef HAL_WITH_IO_MCU |
|
#define HAL_WITH_IO_MCU 0 |
|
#endif |
|
|
|
#ifndef HAL_WITH_RAMTRON |
|
#define HAL_WITH_RAMTRON 0 |
|
#endif |
|
|
|
// allow for static semaphores |
|
#include <AP_HAL_ChibiOS/Semaphores.h> |
|
#define HAL_Semaphore ChibiOS::Semaphore |
|
|
|
#include <AP_HAL/EventHandle.h> |
|
#define HAL_EventHandle AP_HAL::EventHandle |
|
|
|
/* string names for well known SPI devices */ |
|
#define HAL_BARO_MS5611_NAME "ms5611" |
|
#ifndef HAL_BARO_MS5611_SPI_INT_NAME |
|
#define HAL_BARO_MS5611_SPI_INT_NAME "ms5611_int" |
|
#endif |
|
#define HAL_BARO_MS5611_SPI_EXT_NAME "ms5611_ext" |
|
#define HAL_BARO_LPS22H_NAME "lps22h" |
|
#define HAL_BARO_BMP280_NAME "bmp280" |
|
|
|
#define HAL_INS_MPU60x0_NAME "mpu6000" |
|
#define HAL_INS_MPU60x0_EXT_NAME "mpu6000_ext" |
|
|
|
#define HAL_INS_LSM9DS0_G_NAME "lsm9ds0_g" |
|
#define HAL_INS_LSM9DS0_A_NAME "lsm9ds0_am" |
|
|
|
#define HAL_INS_LSM9DS0_EXT_G_NAME "lsm9ds0_ext_g" |
|
#define HAL_INS_LSM9DS0_EXT_A_NAME "lsm9ds0_ext_am" |
|
|
|
#define HAL_INS_MPU9250_NAME "mpu9250" |
|
#define HAL_INS_MPU9250_EXT_NAME "mpu9250_ext" |
|
|
|
#define HAL_INS_MPU6500_NAME "mpu6500" |
|
|
|
#define HAL_INS_ICM20608_NAME "icm20608" |
|
#define HAL_INS_ICM20608_AM_NAME "icm20608-am" |
|
#define HAL_INS_ICM20608_EXT_NAME "icm20608_ext" |
|
|
|
#define HAL_COMPASS_HMC5843_NAME "hmc5843" |
|
#define HAL_COMPASS_LIS3MDL_NAME "lis3mdl" |
|
|
|
// allow for short names overridden in hwdef.dat |
|
#ifndef CHIBIOS_SHORT_BOARD_NAME |
|
#define CHIBIOS_SHORT_BOARD_NAME CHIBIOS_BOARD_NAME |
|
#endif |
|
|
|
#ifndef CONFIG_HAL_BOARD_SUBTYPE |
|
// allow for generic boards |
|
#define CONFIG_HAL_BOARD_SUBTYPE HAL_BOARD_SUBTYPE_CHIBIOS_GENERIC |
|
#endif |
|
|
|
// we support RC serial for BLHeli pass-thru |
|
#ifndef HAL_SUPPORT_RCOUT_SERIAL |
|
#define HAL_SUPPORT_RCOUT_SERIAL !defined(HAL_BUILD_AP_PERIPH) |
|
#endif |
|
|
|
// by default assume first I2C bus is internal |
|
#ifndef HAL_I2C_INTERNAL_MASK |
|
#define HAL_I2C_INTERNAL_MASK 1 |
|
#endif |
|
|
|
// put all storage of files under /APM directory |
|
#ifndef HAL_BOARD_STORAGE_DIRECTORY |
|
#define HAL_BOARD_STORAGE_DIRECTORY "/APM" |
|
#endif
|
|
|