/*
LUFA Library
- Copyright (C) Dean Camera, 2012.
+ Copyright (C) Dean Camera, 2018.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
- Copyright 2012 Dean Camera (dean [at] fourwalledcubicle [dot] com)
+ Copyright 2018 Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
- The author disclaim all warranties with regard to this
+ The author disclaims all warranties with regard to this
software, including all implied warranties of merchantability
and fitness. In no event shall the author be liable for any
special, indirect or consequential damages or any damages
/** \ingroup Group_TWI
* \defgroup Group_TWI_AVR8 TWI Peripheral Driver (AVR8)
*
- * \section Sec_ModDescription Module Description
+ * \section Sec_TWI_AVR8_ModDescription Module Description
* Master mode TWI driver for the 8-bit AVR microcontrollers which contain a hardware TWI module.
*
* \note This file should not be included directly. It is automatically included as needed by the TWI driver
* dispatch header located in LUFA/Drivers/Peripheral/TWI.h.
*
- * \section Sec_ExampleUsage Example Usage
+ * \section Sec_TWI_AVR8_ExampleUsage Example Usage
* The following snippet is an example of how this module may be used within a typical
* application.
*
#if !(defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB646__) || \
defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB647__) || \
- defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || \
- defined(__AVR_ATmega32U6__))
+ defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__))
#error The TWI peripheral driver is not currently available for your selected microcontroller model.
#endif
* \param[in] Prescale Prescaler to use when determining the bus frequency, a \c TWI_BIT_PRESCALE_* value.
* \param[in] BitLength Length of the bits sent on the bus.
*/
- static inline void TWI_Init(const uint8_t Prescale, const uint8_t BitLength) ATTR_ALWAYS_INLINE;
- static inline void TWI_Init(const uint8_t Prescale, const uint8_t BitLength)
+ static inline void TWI_Init(const uint8_t Prescale,
+ const uint8_t BitLength) ATTR_ALWAYS_INLINE;
+ static inline void TWI_Init(const uint8_t Prescale,
+ const uint8_t BitLength)
{
TWCR |= (1 << TWEN);
TWSR = Prescale;
const uint8_t* InternalAddress,
uint8_t InternalAddressLen,
uint8_t* Buffer,
- uint8_t Length) ATTR_NON_NULL_PTR_ARG(3);
+ uint16_t Length) ATTR_NON_NULL_PTR_ARG(3);
/** High level function to perform a complete packet transfer over the TWI bus from the specified
* device.
const uint8_t* InternalAddress,
uint8_t InternalAddressLen,
const uint8_t* Buffer,
- uint8_t Length) ATTR_NON_NULL_PTR_ARG(3);
+ uint16_t Length) ATTR_NON_NULL_PTR_ARG(3);
/* Disable C linkage for C++ Compilers: */
#if defined(__cplusplus)