diff --git a/LUFA/DoxygenPages/Groups.txt b/LUFA/DoxygenPages/Groups.txt index bac362bf58..321779d74c 100644 --- a/LUFA/DoxygenPages/Groups.txt +++ b/LUFA/DoxygenPages/Groups.txt @@ -4,22 +4,40 @@ * documentation pages. It is not a project source file. */ -/** @defgroup Group_BoardDrivers Board Drivers +/** \defgroup Group_BoardDrivers Board Drivers * * Functions, macros, variables, enums and types related to the control of physical board hardware. */ -/** @defgroup Group_PeripheralDrivers On-chip Peripheral Drivers +/** \defgroup Group_PeripheralDrivers On-chip Peripheral Drivers * * Functions, macros, variables, enums and types related to the control of AVR subsystems. */ -/** @defgroup Group_MiscDrivers Miscellaneous Drivers +/** \defgroup Group_MiscDrivers Miscellaneous Drivers * * Miscellaneous driver Functions, macros, variables, enums and types. */ -/** @defgroup Group_PlatformDrivers System Platform Drivers +/** \defgroup Group_PlatformDrivers System Platform Drivers * * Drivers relating to the general architecture platform, such as clock setup and interrupt management. */ + +/** \defgroup Group_PlatformDrivers_AVR8 AVR8 + * \ingroup Group_PlatformDrivers + * + * Drivers relating to the AVR8 architecture platform, such as clock setup and interrupt management. + */ + +/** \defgroup Group_PlatformDrivers_XMEGA XMEGA + * \ingroup Group_PlatformDrivers + * + * Drivers relating to the XMEGA architecture platform, such as clock setup and interrupt management. + */ + +/** \defgroup Group_PlatformDrivers_UC3 UC3 + * \ingroup Group_PlatformDrivers + * + * Drivers relating to the UC3 architecture platform, such as clock setup and interrupt management. + */ diff --git a/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.h b/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.h index f7d03fc7ae..7b8c46eee9 100644 --- a/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.h +++ b/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.h @@ -43,7 +43,7 @@ * \section Sec_ModDescription Module Description * On-chip serial USART driver for the 8-bit AVR microcontrollers. * - * \note This file should not be included directly. It is automatically included as needed by the ADC driver + * \note This file should not be included directly. It is automatically included as needed by the USART driver * dispatch header located in LUFA/Drivers/Peripheral/Serial.h. * * \section Sec_ExampleUsage Example Usage diff --git a/LUFA/Drivers/Peripheral/XMEGA/SPI_XMEGA.h b/LUFA/Drivers/Peripheral/XMEGA/SPI_XMEGA.h index 1d28d309d3..dac684f442 100644 --- a/LUFA/Drivers/Peripheral/XMEGA/SPI_XMEGA.h +++ b/LUFA/Drivers/Peripheral/XMEGA/SPI_XMEGA.h @@ -159,9 +159,9 @@ /** Initializes the SPI subsystem, ready for transfers. Must be called before calling any other * SPI routines. * - * \param[in, out] SPI Pointer to the base of the SPI peripheral within the device. - * \param[in] SPIOptions SPI Options, a mask consisting of one of each of the \c SPI_SPEED_*, - * \c SPI_SCK_*, \c SPI_SAMPLE_*, \c SPI_ORDER_* and \c SPI_MODE_* masks. + * \param[in,out] SPI Pointer to the base of the SPI peripheral within the device. + * \param[in] SPIOptions SPI Options, a mask consisting of one of each of the \c SPI_SPEED_*, + * \c SPI_SCK_*, \c SPI_SAMPLE_*, \c SPI_ORDER_* and \c SPI_MODE_* masks. */ static inline void SPI_Init(SPI_t* const SPI, const uint8_t SPIOptions) @@ -171,7 +171,7 @@ /** Turns off the SPI driver, disabling and returning used hardware to their default configuration. * - * \param[in, out] SPI Pointer to the base of the SPI peripheral within the device. + * \param[in,out] SPI Pointer to the base of the SPI peripheral within the device. */ static inline void SPI_Disable(SPI_t* const SPI) { @@ -180,7 +180,7 @@ /** Retrieves the currently selected SPI mode, once the SPI interface has been configured. * - * \param[in, out] SPI Pointer to the base of the SPI peripheral within the device. + * \param[in,out] SPI Pointer to the base of the SPI peripheral within the device. * * \return \ref SPI_MODE_MASTER if the interface is currently in SPI Master mode, \ref SPI_MODE_SLAVE otherwise */ @@ -192,8 +192,8 @@ /** Sends and receives a byte through the SPI interface, blocking until the transfer is complete. * - * \param[in, out] SPI Pointer to the base of the SPI peripheral within the device. - * \param[in] Byte Byte to send through the SPI interface. + * \param[in,out] SPI Pointer to the base of the SPI peripheral within the device. + * \param[in] Byte Byte to send through the SPI interface. * * \return Response byte from the attached SPI device. */ @@ -210,8 +210,8 @@ /** Sends a byte through the SPI interface, blocking until the transfer is complete. The response * byte sent to from the attached SPI device is ignored. * - * \param[in, out] SPI Pointer to the base of the SPI peripheral within the device. - * \param[in] Byte Byte to send through the SPI interface. + * \param[in,out] SPI Pointer to the base of the SPI peripheral within the device. + * \param[in] Byte Byte to send through the SPI interface. */ static inline void SPI_SendByte(SPI_t* const SPI, const uint8_t Byte) ATTR_ALWAYS_INLINE; @@ -225,7 +225,7 @@ /** Sends a dummy byte through the SPI interface, blocking until the transfer is complete. The response * byte from the attached SPI device is returned. * - * \param[in, out] SPI Pointer to the base of the SPI peripheral within the device. + * \param[in,out] SPI Pointer to the base of the SPI peripheral within the device. * * \return The response byte from the attached SPI device. */ diff --git a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.h b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.h index 50352195c7..8dd7844b51 100644 --- a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.h +++ b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.h @@ -43,7 +43,7 @@ * \section Sec_ModDescription Module Description * On-chip serial USART driver for the XMEGA AVR microcontrollers. * - * \note This file should not be included directly. It is automatically included as needed by the ADC driver + * \note This file should not be included directly. It is automatically included as needed by the USART driver * dispatch header located in LUFA/Drivers/Peripheral/Serial.h. * * \section Sec_ExampleUsage Example Usage @@ -52,13 +52,13 @@ * * \code * // Initialize the serial USART driver before first use, with 9600 baud (and no double-speed mode) - * Serial_Init(9600, false); + * Serial_Init(&USARTD, 9600, false); * * // Send a string through the USART - * Serial_TxString("Test String\r\n"); + * Serial_TxString(&USARTD, "Test String\r\n"); * * // Receive a byte through the USART - * uint8_t DataByte = Serial_RxByte(); + * uint8_t DataByte = Serial_RxByte(&USARTD); * \endcode * * @{ @@ -153,7 +153,7 @@ const uint32_t BaudRate, const bool DoubleSpeed) { - uint32_t BaudValue = (DoubleSpeed ? SERIAL_2X_UBBRVAL(BaudRate) : SERIAL_UBBRVAL(BaudRate)); + uint16_t BaudValue = (DoubleSpeed ? SERIAL_2X_UBBRVAL(BaudRate) : SERIAL_UBBRVAL(BaudRate)); USART->BAUDCTRLB = (BaudValue >> 8); USART->BAUDCTRLA = (BaudValue & 0xFF); @@ -263,6 +263,7 @@ if (!(Serial_IsCharReceived(USART))) return -1; + USART->STATUS = USART_RXCIF_bm; return USART->DATA; } diff --git a/LUFA/Platform/UC3/ClockManagement.h b/LUFA/Platform/UC3/ClockManagement.h index 145cdd0b94..3a46f9d75f 100644 --- a/LUFA/Platform/UC3/ClockManagement.h +++ b/LUFA/Platform/UC3/ClockManagement.h @@ -35,8 +35,8 @@ * of the various clocks within the device to clock the various peripherals. */ -/** \ingroup Group_PlatformDrivers - * \defgroup Group_PlatformDrivers_UC3Clocks UC3 Clock Management Driver - LUFA/Platform/UC3/ClockManagement.h +/** \ingroup Group_PlatformDrivers_UC3 + * \defgroup Group_PlatformDrivers_UC3Clocks Clock Management Driver - LUFA/Platform/UC3/ClockManagement.h * \brief Module Clock Driver for the AVR32 UC3 microcontrollers. * * \section Sec_Dependencies Module Source Dependencies diff --git a/LUFA/Platform/UC3/InterruptManagement.h b/LUFA/Platform/UC3/InterruptManagement.h index 435afc3dfa..4c27210775 100644 --- a/LUFA/Platform/UC3/InterruptManagement.h +++ b/LUFA/Platform/UC3/InterruptManagement.h @@ -35,8 +35,8 @@ * handlers within the device. */ -/** \ingroup Group_PlatformDrivers - * \defgroup Group_PlatformDrivers_UC3Interrupts UC3 Interrupt Controller Driver - LUFA/Platform/UC3/InterruptManagement.h +/** \ingroup Group_PlatformDrivers_UC3 + * \defgroup Group_PlatformDrivers_UC3Interrupts Interrupt Controller Driver - LUFA/Platform/UC3/InterruptManagement.h * \brief Interrupt Controller Driver for the AVR32 UC3 microcontrollers. * * \section Sec_Dependencies Module Source Dependencies diff --git a/LUFA/Platform/XMEGA/ClockManagement.h b/LUFA/Platform/XMEGA/ClockManagement.h index 57ab18ae66..415c9871f9 100644 --- a/LUFA/Platform/XMEGA/ClockManagement.h +++ b/LUFA/Platform/XMEGA/ClockManagement.h @@ -35,8 +35,8 @@ * of the various clocks within the device to clock the various peripherals. */ -/** \ingroup Group_PlatformDrivers - * \defgroup Group_PlatformDrivers_XMEGAClocks AVR USB XMEGA Clock Management Driver - LUFA/Platform/XMEGA/ClockManagement.h +/** \ingroup Group_PlatformDrivers_XMEGA + * \defgroup Group_PlatformDrivers_XMEGAClocks Clock Management Driver - LUFA/Platform/XMEGA/ClockManagement.h * \brief Module Clock Driver for the AVR USB XMEGA microcontrollers. * * \section Sec_Dependencies Module Source Dependencies