diff options
Diffstat (limited to 'LUFA')
-rw-r--r-- | LUFA/DoxygenPages/AlternativeStacks.txt | 69 | ||||
-rw-r--r-- | LUFA/DoxygenPages/LUFAvsAtmelStack.txt | 52 | ||||
-rw-r--r-- | LUFA/DoxygenPages/MainPage.txt | 3 | ||||
-rw-r--r-- | LUFA/DoxygenPages/WhyUseLUFA.txt | 47 | ||||
-rw-r--r-- | LUFA/makefile | 80 |
5 files changed, 41 insertions, 210 deletions
diff --git a/LUFA/DoxygenPages/AlternativeStacks.txt b/LUFA/DoxygenPages/AlternativeStacks.txt deleted file mode 100644 index f9d6cbbcd..000000000 --- a/LUFA/DoxygenPages/AlternativeStacks.txt +++ /dev/null @@ -1,69 +0,0 @@ -/** \file - * - * This file contains special DoxyGen information for the generation of the main page and other special - * documentation pages. It is not a project source file. - */ - -/** - * \page Page_AlternativeStacks Alternative USB AVR Stacks - * - * LUFA is not the only stack available for the USB AVRs, although it is perhaps the best (see \ref Page_WhyUseLUFA). - * In the interests of completeness and user choice, other known USB AVR stacks are listed here. - * - * \section Sec_HardwareStacks Hardware USB AVR Stacks - * These are the known alternative USB stacks which are designed for and run exclusively on the USB AVR series microcontrollers, - * which contain on-chip USB controller hardware for maximum features and speed. - * - * - <b>Name:</b> Atmel USB AVR Stack (<i>Atmel Inc.</i>) \n - * <b>Cost:</b> Free \n - * <b>License:</b> Atmel Limited License (see Atmel download for details) \n - * <b>Website:</b> http://atmel.com/dyn/products/app_notes.asp?family_id=607#USB \n - * <b>Description:</b> This is the official Atmel USB AVR stack, for their 8-bit USB AVR lineup. Each series of - * USB AVR is separated into a separate download stack, which is both AVR-GCC and IAR compatible. - * - * - <b>Name:</b> Dr. Stefan Salewski's AT90USB1287 Stack (<i>Dr. Stefan Salewski</i>) \n - * <b>Cost:</b> Free \n - * <b>License:</b> GPL \n - * <b>Website:</b> http://www.ssalewski.de/AT90USB_firmware.html.en \n - * <b>Description:</b> This is a GPL'd library specifically designed for the AT90USB1287, by Dr. Stefan Salewski, a - * German Physicist. It compiles for AVR-GCC and can potentially be modified to work on other USB - * AVR models. - * - * - <b>Name:</b> FreakUSB Stack (<i>FreakLabs</i>) \n - * <b>Cost:</b> Free \n - * <b>License:</b> Modified BSD \n - * <b>Website:</b> http://freaklabs.org/index.php/FreakUSB-Open-Source-USB-Device-Stack.html \n - * <b>Description:</b> An open source simple USB stack for a selection of the USB AVRs. Contains a sample class driver - * for the CDC-ACM class, however other class driver implementations are also possible. - * - * - <b>Name:</b> PJRC Teensy Stack (<i>Paul Stoffregen</i>) \n - * <b>Cost:</b> Free \n - * <b>License:</b> BSD \n - * <b>Website:</b> http://www.pjrc.com/teensy/usb_debug_only.html \n - * <b>Description:</b> Not so much a complete stack as a collection of USB enabled demos, this library is specifically - * designed for the PJRC Teensy line of USB AVRs, and thus may need to be modified for other USB AVR - * chips. These minimal code samples shows the inner workings of the USB controller, without all the - * abstraction present in most other USB AVR stacks. - * - * \section Sec_SoftwareStacks Software AVR Stacks - * These are the known alternative USB stacks which can run on regular AVR models, lacking dedicated hardware USB controllers - * via a bit-banged (emulated) version of the USB protocol. They are limited in their capabilities due to the cycles required - * to be dedicated to managing the USB bus, but offer a cheap way to implement USB functionality into a design. - * - * - <b>Name:</b> AVR309: Software USB (<i>Atmel</i>) \n - * <b>Cost:</b> Free \n - * <b>License:</b> None Stated \n - * <b>Website:</b> http://www.atmel.com/dyn/Products/app_notes.asp?family_id=607 \n - * <b>Description:</b> Atmel's official software USB implementation, an Application Note containing work by Igor Cesko. This - * is a minimal assembly-only implementation of software USB, providing HID functionality. Less compile - * options than V-USB (see below). - * - * - <b>Name:</b> V-USB (<i>Objective Development</i>) \n - * <b>Cost:</b> Free for some uses, see website for licensing \n - * <b>License:</b> Dual GPL2/Custom \n - * <b>Website:</b> http://www.obdev.at/products/vusb/index.html \n - * <b>Description:</b> Well regarded and complete USB 1.1 software stack for several AVR models, implementing Low Speed HID. - * Used in many commercial and non-commercial designs, with user-submitted projects available for viewing - * on the company's website. Uses C language code mixed with assembly for time-critical sections. - */ - diff --git a/LUFA/DoxygenPages/LUFAvsAtmelStack.txt b/LUFA/DoxygenPages/LUFAvsAtmelStack.txt deleted file mode 100644 index 239c2772b..000000000 --- a/LUFA/DoxygenPages/LUFAvsAtmelStack.txt +++ /dev/null @@ -1,52 +0,0 @@ -/** \file - * - * This file contains special DoxyGen information for the generation of the main page and other special - * documentation pages. It is not a project source file. - */ - -/** - * \page Page_LUFAvsAtmelStack LUFA vs the Atmel 8-bit USB AVR Stack - * - * Atmel offers an official 8-bit USB AVR stack, which may be incorporated into user projects and products. As LUFA and the Atmel - * stack aims to give roughly the same functionality to a design, it is often asked what advantages LUFA carries over the official - * Atmel USB stack for the 8-bit USB AVRs. Below are just some of the advantages to choosing LUFA over the official Atmel stack. - * - * - <b>Licensing:</b> - * LUFA is released under a very permissive MIT license (see \ref Page_LicenseInfo), while the Atmel stack carries several - * restrictions as to how and where it can be used. LUFA's licensing should be suitable for both Commercial and Non-Commercial - * entities alike. - * - * - <b>Demos and Projects:</b> - * Unlike the Atmel stack, LUFA comes with many different Device and Host mode Demos and Projects ready to run out of the box. - * Atmel favors separate downloads for each of their (small set) of USB AVR demos, which requires more time and offers less - * to the end-user. LUFA also contains several open source Bootloaders, which can be modified as the user wishes to suit his or - * her application, instead of being forced to use Atmel's single prebuilt (closed-source) DFU bootloader. - * - * - <b>Central Library Code:</b> - * LUFA is designed to allow the central library core code to be shared amongst several projects, so long as the compiled object - * files are cleaned between different projects. This is in direct contrast to the Atmel library, which is strongly coupled to the - * project it is integrated with. Using LUFA allows for only one copy of the library core to be needed for all applications, and - * makes updating the library used in all projects a trivial copy-and-paste process. - * - * - <b>Clean API:</b> - * One of the main design goals of LUFA is to make the API easy to use. While LUFA is a fluid project which has undergone many - * API improvements, the API is arguably much nicer to use and easier to understand than the equivalent Atmel stack code. LUFA's - * API is also more complete than the Atmel stack, and contains many features to speed up application development. - * - * - <b>Full Hardware Support:</b> - * LUFA supports the full range of Atmel's USB AVR microcontrollers (see \ref Page_DeviceSupport), with porting between chips being - * as simple as a single compile switch in many cases. Atmel's stack requires different libraries to be used based on the USB AVR - * microcontroller series, complicating the process of moving between USB AVR models. In addition, LUFA contains drivers for all the - * hardware contained on Atmel's USB AVR based boards, so you can get started quickly and easily. - * - * - <b>Better Library Support:</b> - * As many people are now using LUFA, there is a community being built around it. You can get answers to your LUFA related questions - * quickly by either emailing the library author (subject to author's schedule) or by posting to the official LUFA support mailing list. - * - * - <b>More Compact Code:</b> - * LUFA is written from the ground up to compile optimally, using clean code and good design. Two demos giving the same functionality - - * the LUFA Low Level API Mouse Demo vs. the Atmel AVR270 HID Mouse application note shows LUFA to be the clear size winner *. - * - * * <i>LUFA Low Level Mouse Demo: 3510 bytes, Atmel AVR270 Mouse Application Note: 4222 bytes, using an identical build environment.</i> - */ - diff --git a/LUFA/DoxygenPages/MainPage.txt b/LUFA/DoxygenPages/MainPage.txt index 377841a04..2ab420a5b 100644 --- a/LUFA/DoxygenPages/MainPage.txt +++ b/LUFA/DoxygenPages/MainPage.txt @@ -39,12 +39,11 @@ * * <b>Subsections:</b> * \li \subpage Page_LicenseInfo - Project source license and commercial use information - * \li \subpage Page_DeviceSupport - Current Device and Hardware Support * \li \subpage Page_Donating - Donating to support this project + * \li \subpage Page_DeviceSupport - Current Device and Hardware Support * \li \subpage Page_ChangeLog - Project Changelog * \li \subpage Page_FutureChanges - Planned Changes to the Library * \li \subpage Page_LUFAPoweredProjects - Other Projects Using LUFA * \li \subpage Page_Resources - LUFA and USB Related Resources - * \li \subpage Page_WhyUseLUFA - What are the advantages of using LUFA? */ diff --git a/LUFA/DoxygenPages/WhyUseLUFA.txt b/LUFA/DoxygenPages/WhyUseLUFA.txt deleted file mode 100644 index b31a2e238..000000000 --- a/LUFA/DoxygenPages/WhyUseLUFA.txt +++ /dev/null @@ -1,47 +0,0 @@ -/** \file - * - * This file contains special DoxyGen information for the generation of the main page and other special - * documentation pages. It is not a project source file. - */ - -/** - * \page Page_WhyUseLUFA Why Use LUFA? - * - * The LUFA Library has many advantages over implementing the code required to drive the USB AVRs directly. - * It is much more preferable to incorporate LUFA into your existing projects - or even make a new project - * using LUFA - than it is to start from scratch and use the USB AVR registers directly. Some of these reasons - * are: - * - * - <b>Portability:</b> - * The LUFA stack is designed to run (at some capacity) on the entire Atmel range of USB AVRs, regardless of the - * exact USB controller revision used. If you decide to implement your own USB stack, you will either need to - * code around the differences between each USB AVR controller's implementation between different chip models, or - * require your code to run on only one specific USB AVR model series. - * - * - <b>Speed of Development:</b> - * LUFA ships with a wide range of pre-made demos, bootloaders and projects for you to try, learn and extend. Each - * of these demos are tested (where possible) across as many USB AVRs and Operating Systems as possible, to ensure - * that they work under as many conditions as possible. In addition, there are inbuilt class drivers for several of - * the USB classes which you can make use of in your projects with minimal effort. - * - * - <b>Maintainability:</b> - * As LUFA takes care of much of the USB implementation, you can be left to focusing on your actual project's - * functionality, rather than being held back developing and debugging the USB stack code. Since LUFA uses clear APIs - * for USB development, your code will be more readable than if it had the low level USB stack code integrated into - * it directly. Updating the LUFA library is a simple folder-replacement and gives new features and bug fixes in - * seconds each time a new release is made. - * - * - <b>Size:</b> - * Not just requiring less code to make complex USB devices, LUFA is written to compile down as much as possible into - * optimal code, to occupy only a small space for its feature set. - * - * - <b>Support:</b> - * Since many people are now using LUFA in their own projects, you can take advantage of other's knowledge when you run - * into difficulties or need some advice. In addition, you can also email the library author to receive personalized - * support when you need it (subject to author's schedule). - * - * <b>Subsections:</b> - * \li \subpage Page_LUFAvsAtmelStack - How does LUFA compare to the Atmel USB AVR stack? - * \li \subpage Page_AlternativeStacks - Alternative USB AVR Stacks - */ - diff --git a/LUFA/makefile b/LUFA/makefile index 8dd3af7f3..b9380f4aa 100644 --- a/LUFA/makefile +++ b/LUFA/makefile @@ -23,50 +23,50 @@ ifeq ($(origin ARCH), undefined) endif # Define module source file lists -LUFA_SRC_USB = $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Device_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Endpoint_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Host_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Pipe_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBController_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBInterrupt_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/EndpointStream_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/PipeStream_$(ARCH).c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/ConfigDescriptor.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/DeviceStandardReq.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/Events.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/HostStandardReq.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Core/USBTask.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Common/HIDParser.c -LUFA_SRC_USBCLASS = $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/AudioClassDevice.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/CDCClassDevice.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/HIDClassDevice.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MassStorageClassDevice.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MIDIClassDevice.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/RNDISClassDevice.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/AudioClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/CDCClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/HIDClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MassStorageClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MIDIClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/PrinterClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/RNDISClassHost.c \ - $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/StillImageClassHost.c -LUFA_SRC_TEMPERATURE = $(LUFA_ROOT_PATH)/Drivers/Board/Temperature.c -LUFA_SRC_SERIAL = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/Serial_$(ARCH).c -LUFA_SRC_TWI = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/TWI_$(ARCH).c +LUFA_SRC_USB = $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Device_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Endpoint_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Host_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Pipe_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBController_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/USBInterrupt_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/EndpointStream_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/PipeStream_$(ARCH).c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/ConfigDescriptor.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/DeviceStandardReq.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/Events.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/HostStandardReq.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Core/USBTask.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Common/HIDParser.c +LUFA_SRC_USBCLASS = $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/AudioClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/CDCClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/HIDClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MassStorageClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/MIDIClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Device/RNDISClassDevice.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/AndroidAccessoryClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/AudioClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/CDCClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/HIDClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MassStorageClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/MIDIClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/PrinterClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/RNDISClassHost.c \ + $(LUFA_ROOT_PATH)/Drivers/USB/Class/Host/StillImageClassHost.c +LUFA_SRC_TEMPERATURE = $(LUFA_ROOT_PATH)/Drivers/Board/Temperature.c +LUFA_SRC_SERIAL = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/Serial_$(ARCH).c +LUFA_SRC_TWI = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/TWI_$(ARCH).c # Check to see if the LUFA_PATH variable has not been set (the makefile is not being included from a project makefile) ifeq ($(origin LUFA_PATH), undefined) - LUFA_VERSION_NUM = $(shell grep LUFA_VERSION_STRING Version.h | cut -d'"' -f2) - - LUFA_SRC_ALL_FILES = $(LUFA_SRC_USB) \ - $(LUFA_SRC_USBCLASS) \ - $(LUFA_SRC_TEMPERATURE) \ - $(LUFA_SRC_SERIAL) \ - $(LUFA_SRC_TWI) - + LUFA_VERSION_NUM = $(shell grep LUFA_VERSION_STRING Version.h | cut -d'"' -f2) + + LUFA_SRC_ALL_FILES = $(LUFA_SRC_USB) \ + $(LUFA_SRC_USBCLASS) \ + $(LUFA_SRC_TEMPERATURE) \ + $(LUFA_SRC_SERIAL) \ + $(LUFA_SRC_TWI) + EXCLUDE_FROM_EXPORT = Documentation DoxygenPages CodeTemplates *.conf *.tar *.o *.lss *.lst *.hex *.elf *.bin all: |