STM32 support for I/O ports.

git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@1009 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
gdisirio 2009-06-02 08:37:46 +00:00
parent 4a4940c5b1
commit e20aaf6c29
3 changed files with 22 additions and 8 deletions

View File

@ -19,23 +19,37 @@
/** /**
* @defgroup STM32F103 STM32F103 Support * @defgroup STM32F103 STM32F103 Support
* @{
* @brief STM32F103 specific support. * @brief STM32F103 specific support.
* @details The STM32F103 support includes: * @details The STM32F103 support includes:
* - Buffered, interrupt driven, serial driver. * - Buffered, interrupt driven, serial driver.
* - A demo supporting the kernel test suite. * - A demo supporting the kernel test suite.
* * .
* @ingroup ARMCM3 * @ingroup ARMCM3
*/ */
/** @} */
/**
* @defgroup STM32F103_IOPORTS I/O Ports Support
* @brief I/O Ports peripherals support.
* @details This module supports the STM32F103 GPIO controller. The STM32
* controller is very flexible and allows to implement all the recommended
* behaviors for the I/O port driver. It supports the following features (see
* @ref IOPorts):
* - 16 bits wide ports.
* - Atomic set/reset functions.
* - Atomic set+reset function (atomic bus operations).
* - Output latched regardless of the pad setting.
* - Direct read of input pads regardless of the pad setting.
* .
* The only non atomic operation is bit toggling.
* @ingroup STM32F103
*/
/** /**
* @defgroup STM32F103_SERIAL USART Support * @defgroup STM32F103_SERIAL USART Support
* @{
* @brief USART peripherals support. * @brief USART peripherals support.
* @details The serial driver supports the STM32F103 USARTs in asynchronous * @details The serial driver supports the STM32F103 USARTs in asynchronous
* mode. * mode.
* *
* @ingroup STM32F103 * @ingroup STM32F103
*/ */
/** @} */

View File

@ -116,7 +116,7 @@ typedef struct {
* for atomicity and/or portability reasons you may need to enclose port * for atomicity and/or portability reasons you may need to enclose port
* I/O operations between @p chSysLock() and @p chSysUnlock(). * I/O operations between @p chSysLock() and @p chSysUnlock().
*/ */
#define chPortToggle(port, bits) ioport_clear_lld(port, bits) #define chPortToggle(port, bits) ioport_toggle_lld(port, bits)
/** /**
* @brief Writes a value on an I/O bus. * @brief Writes a value on an I/O bus.

View File

@ -18,7 +18,7 @@
*/ */
/** /**
* @file ioports_lld.h * @file src/templates/ioports_lld.h
* @brief I/O ports low level driver * @brief I/O ports low level driver
* @addtogroup IOPortsLLD * @addtogroup IOPortsLLD
* @{ * @{
@ -118,7 +118,7 @@ typedef uint32_t ioportid_t;
* @note This function is not meant to be invoked directly by the application * @note This function is not meant to be invoked directly by the application
* code. * code.
*/ */
#define ioport_clear_lld(port, bits) #define ioport_toggle_lld(port, bits)
/** /**
* @brief Writes a value on an I/O bus. * @brief Writes a value on an I/O bus.