Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Erik Strand
lufa
Commits
8a28fd8e
Commit
8a28fd8e
authored
Jul 20, 2009
by
Dean Camera
Browse files
Added extra DoxyGen documentation to the new PrinterHost demo.
parent
3ee3ed2d
Changes
5
Hide whitespace changes
Inline
Side-by-side
Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.c
View file @
8a28fd8e
...
@@ -28,6 +28,12 @@
...
@@ -28,6 +28,12 @@
this software.
this software.
*/
*/
/** \file
*
* Printer Device commands, to send/recieve data to and from an attached USB
* printer, and to send and receive Printer Class control requests.
*/
#include
"PrinterCommands.h"
#include
"PrinterCommands.h"
/** Sends the given data directly to the printer via the data endpoints, for the sending of print commands in printer
/** Sends the given data directly to the printer via the data endpoints, for the sending of print commands in printer
...
...
Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.h
View file @
8a28fd8e
...
@@ -28,6 +28,11 @@
...
@@ -28,6 +28,11 @@
this software.
this software.
*/
*/
/** \file
*
* Header file for PrinterCommands.c.
*/
#ifndef _PRINTER_COMMANDS_H_
#ifndef _PRINTER_COMMANDS_H_
#define _PRINTER_COMMANDS_H_
#define _PRINTER_COMMANDS_H_
...
...
Demos/Host/LowLevel/PrinterHost/PrinterHost.c
View file @
8a28fd8e
...
@@ -54,6 +54,7 @@ int main(void)
...
@@ -54,6 +54,7 @@ int main(void)
}
}
}
}
/** Configures the board hardware and chip peripherals for the demo's functionality. */
void
SetupHardware
(
void
)
void
SetupHardware
(
void
)
{
{
/* Disable watchdog if enabled by bootloader/fuses */
/* Disable watchdog if enabled by bootloader/fuses */
...
@@ -69,18 +70,33 @@ void SetupHardware(void)
...
@@ -69,18 +70,33 @@ void SetupHardware(void)
USB_Init
();
USB_Init
();
}
}
/** Event handler for the USB_DeviceAttached event. This indicates that a device has been attached to the host, and
* starts the library USB task to begin the enumeration and USB management process.
*/
void
EVENT_USB_DeviceAttached
(
void
)
void
EVENT_USB_DeviceAttached
(
void
)
{
{
puts_P
(
PSTR
(
ESC_FG_GREEN
"Device Attached.
\r\n
"
ESC_FG_WHITE
));
puts_P
(
PSTR
(
ESC_FG_GREEN
"Device Attached.
\r\n
"
ESC_FG_WHITE
));
LEDs_SetAllLEDs
(
LEDMASK_USB_ENUMERATING
);
LEDs_SetAllLEDs
(
LEDMASK_USB_ENUMERATING
);
}
}
/** Event handler for the USB_DeviceUnattached event. This indicates that a device has been removed from the host, and
* stops the library USB task management process.
*/
void
EVENT_USB_DeviceUnattached
(
void
)
void
EVENT_USB_DeviceUnattached
(
void
)
{
{
puts_P
(
PSTR
(
ESC_FG_GREEN
"
\r\n
Device Unattached.
\r\n
"
ESC_FG_WHITE
));
puts_P
(
PSTR
(
ESC_FG_GREEN
"
\r\n
Device Unattached.
\r\n
"
ESC_FG_WHITE
));
LEDs_SetAllLEDs
(
LEDMASK_USB_NOTREADY
);
LEDs_SetAllLEDs
(
LEDMASK_USB_NOTREADY
);
}
}
/** Event handler for the USB_DeviceEnumerationComplete event. This indicates that a device has been successfully
* enumerated by the host and is now ready to be used by the application.
*/
void
EVENT_USB_DeviceEnumerationComplete
(
void
)
{
LEDs_SetAllLEDs
(
LEDMASK_USB_READY
);
}
/** Event handler for the USB_HostError event. This indicates that a hardware error occurred while in host mode. */
void
EVENT_USB_HostError
(
uint8_t
ErrorCode
)
void
EVENT_USB_HostError
(
uint8_t
ErrorCode
)
{
{
USB_ShutDown
();
USB_ShutDown
();
...
@@ -92,20 +108,22 @@ void EVENT_USB_HostError(uint8_t ErrorCode)
...
@@ -92,20 +108,22 @@ void EVENT_USB_HostError(uint8_t ErrorCode)
for
(;;);
for
(;;);
}
}
/** Event handler for the USB_DeviceEnumerationFailed event. This indicates that a problem occurred while
* enumerating an attached USB device.
*/
void
EVENT_USB_DeviceEnumerationFailed
(
uint8_t
ErrorCode
,
uint8_t
SubErrorCode
)
void
EVENT_USB_DeviceEnumerationFailed
(
uint8_t
ErrorCode
,
uint8_t
SubErrorCode
)
{
{
puts_P
(
PSTR
(
ESC_FG_RED
"Dev Enum Error
\r\n
"
));
puts_P
(
PSTR
(
ESC_FG_RED
"Dev Enum Error
\r\n
"
));
printf_P
(
PSTR
(
" -- Error Code %d
\r\n
"
),
ErrorCode
);
printf_P
(
PSTR
(
" -- Error Code %d
\r\n
"
),
ErrorCode
);
printf_P
(
PSTR
(
" -- Sub Error Code %d
\r\n
"
),
SubErrorCode
);
printf_P
(
PSTR
(
" -- In State %d
\r\n
"
ESC_FG_WHITE
),
USB_HostState
);
printf_P
(
PSTR
(
" -- In State %d
\r\n
"
ESC_FG_WHITE
),
USB_HostState
);
LEDs_SetAllLEDs
(
LEDMASK_USB_ERROR
);
LEDs_SetAllLEDs
(
LEDMASK_USB_ERROR
);
}
}
void
EVENT_USB_DeviceEnumerationComplete
(
void
)
/** Task to set the configuration of the attached device after it has been enumerated, and to send some test page
{
* data to the attached printer.
LEDs_SetAllLEDs
(
LEDMASK_USB_READY
);
*/
}
void
USB_Printer_Host
(
void
)
void
USB_Printer_Host
(
void
)
{
{
uint8_t
ErrorCode
;
uint8_t
ErrorCode
;
...
...
Demos/Host/LowLevel/PrinterHost/PrinterHost.h
View file @
8a28fd8e
...
@@ -28,6 +28,11 @@
...
@@ -28,6 +28,11 @@
this software.
this software.
*/
*/
/** \file
*
* Header file for PrinterHost.c.
*/
#ifndef _MASS_STORE_HOST_H_
#ifndef _MASS_STORE_HOST_H_
#define _MASS_STORE_HOST_H_
#define _MASS_STORE_HOST_H_
...
...
Demos/Host/LowLevel/PrinterHost/PrinterHost.txt
0 → 100644
View file @
8a28fd8e
/** \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.
*/
/** \mainpage Printer Host Demo
*
* \section SSec_Compat Demo Compatibility:
*
* The following table indicates what microcontrollers are compatible with this demo.
*
* - AT90USB1287
* - AT90USB1286
*
* \section SSec_Info USB Information:
*
* The following table gives a rundown of the USB utilization of this demo.
*
* <table>
* <tr>
* <td><b>USB Mode:</b></td>
* <td>Host</td>
* </tr>
* <tr>
* <td><b>USB Class:</b></td>
* <td>Printer Device</td>
* </tr>
* <tr>
* <td><b>USB Subclass:</b></td>
* <td>Bidirectional Protocol</td>
* </tr>
* <tr>
* <td><b>Relevant Standards:</b></td>
* <td>USBIF Printer Class Specification, PCL Language Specification</td>
* </tr>
* <tr>
* <td><b>Usable Speeds:</b></td>
* <td>Low Speed Mode, Full Speed Mode</td>
* </tr>
* </table>
*
* \section SSec_Description Project Description:
*
* Printer host demonstration application. This gives a simple reference
* application for implementing a USB Printer host, for USB printers using
* the bidirectional data encapsulation protocol and PCL language.
*
* Upon connection of a compatible printer, the printer's device ID is sent
* to the AVR's serial port, and a simple test page is printed using the PCL
* printer language.
*
* \section SSec_Options Project Options
*
* The following defines can be found in this demo, which can control the demo behaviour when defined, or changed in value.
*
* <table>
* <tr>
* <td>
* None
* </td>
* </tr>
* </table>
*/
\ No newline at end of file
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment