AT90USBxxx Mouse + Mass Storage demonstration
Use of this program is subject to Atmel's End User License Agreement.
Please read file lic_page for copyright notice.
- V2.0.3
USB Stack
- Fix bug during attach (the interrupt must be disable during attach to don't freeze clock)
- Class MSC :
- Fix bug in sense command (USB MS device mode)
- Fix bug on Write Protect Management under MAC OS
- Improve MSC compliance
- Add MSC compliance for Linux 2.4 kernel
- V2.0.2
USB Stack
- improve USB Chap9 and MSC compliance
- V2.0.1
USB Stack
- Add three possibilities for SN on USB
- Move VBus interrupt to VBus pooling
- Fix USB constant about Device Status
New watchdog driver
Update SPI driver
Fix & Clean DataFlash driver
Fixed Set/Clear prescaler
- V2.0.0
- First release
This embedded application source code illustrates how to implement a composite device that gather an HID mouse and a Mass Storage device over the AT90USBxxx controller.
The sample code is delivered for STK526.
As illustrated in the figure bellow, the application entry point is located is the main.c file. The main function first performs the initialization of a scheduler module and then runs it in an infinite loop. The scheduler is a simple infinite loop calling all its tasks defined in the conf_scheduler.h file. No real time schedule is performed, when a task ends, the scheduler calls the next task defined in the configuration file (conf_scheduler.h).
The sample dual role application is based on two different tasks:
- The usb_task (usb_task.c associated source file), is the task performing the USB low level enumeration process in device mode.
- The mouse task performs mouse events decoding and report construction to the USB host.
- The storage_task handles Mass Storage class commands, and manages low level memory drivers
Generated on Fri Sep 11 14:39:50 2009 for ATMEL by
1.5.3