From 3588ac33a33bb10d22cd6a30ab22ea28514943a0 Mon Sep 17 00:00:00 2001 From: roccomarco Date: Sat, 1 Jul 2017 18:45:25 +0000 Subject: Improved ChibiOS\EX documentation (Still uncomplete) git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@10274 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/ex/dox/gyro.dox | 38 +++++++++++++++++++++++++++++++ os/ex/dox/hal.dox | 34 ++++++++++++++++++++++++++++ os/ex/dox/main.dox | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 137 insertions(+) create mode 100644 os/ex/dox/gyro.dox create mode 100644 os/ex/dox/hal.dox create mode 100644 os/ex/dox/main.dox (limited to 'os/ex/dox') diff --git a/os/ex/dox/gyro.dox b/os/ex/dox/gyro.dox new file mode 100644 index 000000000..da0fce44e --- /dev/null +++ b/os/ex/dox/gyro.dox @@ -0,0 +1,38 @@ +/* + ChibiOS - Copyright (C) 2006..2016 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. +*/ + +/** + * @defgroup HAL HAL + * @brief Hardware Abstraction Layer. + * @details Under ChibiOS the set of the various device driver interfaces + * is called the HAL subsystem: Hardware Abstraction Layer. The HAL is the + * abstract interface between ChibiOS applications and hardware. + * + * @section hal_interfaces HAL Interfaces + * An interface is a binary structure allowing the access to a service + * using virtual functions. This allows to create drivers that can be + * accessed using a common interface. + * The concept of interface is commonly found in object-oriented languages + * like Java or C++, their meaning in ChibiOS/HAL is exactly the same. + * + */ + +/** + * @defgroup HAL_GYROSCOPE Generic Gyroscope Interfaces + * @brief HAL Generic Gyroscope Interfaces. + * + * @ingroup HAL_PERIPHERAL_INTERFACES + */ diff --git a/os/ex/dox/hal.dox b/os/ex/dox/hal.dox new file mode 100644 index 000000000..81e328efa --- /dev/null +++ b/os/ex/dox/hal.dox @@ -0,0 +1,34 @@ +/* + ChibiOS - Copyright (C) 2006..2016 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. +*/ + +/** + * @defgroup HAL HAL + * @brief Hardware Abstraction Layer. + * @details Under ChibiOS the set of the various device driver interfaces + * is called the HAL subsystem: Hardware Abstraction Layer. The HAL is the + * abstract interface between ChibiOS applications and hardware. + * + * @section hal_peripheral interfaces HAL Peripheral Interfaces + * These are a particular case of HAL Interfaces since they are an abstraction + * of a hardware. + */ + +/** + * @defgroup HAL_PERIPHERAL_INTERFACES Peripheral Interfaces + * @brief HAL Peripheral Interfaces. + * + * @ingroup HAL + */ diff --git a/os/ex/dox/main.dox b/os/ex/dox/main.dox new file mode 100644 index 000000000..dbb73d7b4 --- /dev/null +++ b/os/ex/dox/main.dox @@ -0,0 +1,65 @@ +/* + ChibiOS - Copyright (C) 2006..2016 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. +*/ + +/** + * @defgroup EX EX + * @brief EXternal periferals. + * @details Under ChibiOS the set of the complex device driver interfaces + * dedicated to external peripherals is called the EX subsystem. The EX resides + * on top of HAL and is actually a set of libraries for external devices like + * MEMS, Displays, Flash memories and so on. These libraries are the + * implementation of one or more Abstract Interfaces brought by HAL subsystem. + * EX also relies on HAL normal drivers to interface the peripherals. + * + * @section ex_complex_drivers_architecture EX Complex Drivers Architecture + * Each EX driver can be considered as a standalone Complex Device Driver. For + * ease of use these drivers are grouped by vendor: + * - Micron Technology Peripherals + * - STMicroelectronics Peripherals + * . + * @section micron_devices Micron Technology Devices + * This section contains all the drivers of devices produced by + * Micron Technology. Devices currently supported are FLASH and are: + * - @b M25Q: Serial NOR flash; + * . + * + * @section stmicroelectronics_devices STMicroelectronics Devices + * This section contains all the drivers of devices produced by + * STMicroelectronics. Devices currently supported are MEMS and are: + * - @b HTS221: Capacitive digital humidity sensor; + * - @b L3GD20: 3-axis digital gyroscope; + * - @b LIS3DSH: 3-axis digital motion sensor; + * - @b LIS3MDL: Ultra low power, high performances 3-axis magnetometer; + * - @b LIS302DL: 3-axis motion sensor; + * - @b LPS25H: Piezoresistive 260-1260 hPa pressure sensor; + * - @b LSM6DS0: 6-axis iNEMO inertial module; + * - @b LSM303DLHC: Ultra compact high performance e-compass; + * . + */ + +/** + * @defgroup EX_MICRON Micron Technology Devices + * @brief Micron Technology Devices. + * + * @ingroup EX + */ + +/** + * @defgroup EX_ST STMicroelectronics Devices + * @brief STMicroelectronics Devices. + * + * @ingroup EX + */ -- cgit v1.2.3