Add new ARCH option to the makefiles to (eventually) specify the target device architecture. Update non-usb peripheral drivers to reflect future multiple architecture support.

This commit is contained in:
Dean Camera 2011-02-19 18:37:22 +00:00
parent 100a197d0e
commit 3d4d8e7f62
196 changed files with 1271 additions and 730 deletions

View file

@ -31,23 +31,23 @@
/** \file
* \brief Master include file for the TWI peripheral 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
*
* \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 <i>(Makefile source module name: LUFA_SRC_TWI)</i>
*
* - LUFA/Drivers/Peripheral/$(ARCH)TWI.c <i>(Makefile source module name: LUFA_SRC_TWI)</i>
*
* \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 +57,18 @@
#define __TWI_H__
/* Macros: */
#if !defined(__DOXYGEN__)
#define __INCLUDE_FROM_TWI_H
#endif
#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.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