X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/a8b66f318dda3cc18dfcedaa3af3d01ab68b82e8..8e20e8697ff88d38ac01d62198dbdd552449e4aa:/LUFA/Drivers/Peripheral/TWI.h diff --git a/LUFA/Drivers/Peripheral/TWI.h b/LUFA/Drivers/Peripheral/TWI.h index 5c2223e41..587e3d809 100644 --- a/LUFA/Drivers/Peripheral/TWI.h +++ b/LUFA/Drivers/Peripheral/TWI.h @@ -1,13 +1,13 @@ /* LUFA Library - Copyright (C) Dean Camera, 2010. + Copyright (C) Dean Camera, 2012. dean [at] fourwalledcubicle [dot] com www.lufa-lib.org */ /* - Copyright 2010 Dean Camera (dean [at] fourwalledcubicle [dot] com) + Copyright 2012 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 @@ -29,25 +29,26 @@ */ /** \file - * \brief Master include file for the TWI peripheral driver. + * \brief Hardware Two Wire Interface (I2C) driver. * - * This file is the master dispatch header file for the device-specific ADC driver, for AVRs containing an ADC. + * This file is the master dispatch header file for the device-specific SPI driver, for microcontrollers + * containing a hardware TWI. * - * User code should include this file, which will in turn include the correct ADC driver header file for the - * currently selected AVR model. + * User code should include this file, which will in turn include the correct TWI driver header file for the + * currently selected architecture and microcontroller model. */ /** \ingroup Group_PeripheralDrivers - * @defgroup Group_TWI TWI Driver - LUFA/Drivers/Peripheral/TWI.h + * \defgroup Group_TWI TWI Driver - LUFA/Drivers/Peripheral/TWI.h + * \brief Hardware Two Wire Interface (I2C) driver. * * \section Sec_Dependencies Module Source Dependencies * The following files must be built with any user project that uses this module: - * - LUFA/Drivers/Peripheral/TWI.c (Makefile source module name: LUFA_SRC_TWI) - * + * - LUFA/Drivers/Peripheral/ARCH/TWI_ARCH.c (Makefile source module name: LUFA_SRC_TWI) * * \section Sec_ModDescription Module Description - * Master Mode Hardware TWI driver. This module provides an easy to use driver for the hardware - * TWI present on many AVR models, for the transmission and reception of data on a TWI bus. + * Hardware TWI driver. This module provides an easy to use driver for the setup and transfer of data over + * the selected architecture and microcontroller model's TWI bus port. * * \note The exact API for this driver may vary depending on the target used - see * individual target module documentation for the API specific to your target processor. @@ -57,18 +58,16 @@ #define __TWI_H__ /* Macros: */ - #if !defined(__DOXYGEN__) #define __INCLUDE_FROM_TWI_H - #endif /* Includes: */ - #if (defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB646__) || \ - defined(__AVR_AT90USB1287__) || defined(__AVR_AT90USB647__) || \ - defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__) || \ - defined(__AVR_ATmega32U6__)) - #include "AVRU4U6U7/TWI.h" + #include "../../Common/Common.h" + + /* Includes: */ + #if (ARCH == ARCH_AVR8) + #include "AVR8/TWI_AVR8.h" #else - #error "TWI is not available for the currently selected AVR model." + #error The TWI peripheral driver is not currently available for your selected architecture. #endif #endif