diff options
Diffstat (limited to 'LUFA')
32 files changed, 134 insertions, 158 deletions
diff --git a/LUFA/Common/Common.h b/LUFA/Common/Common.h index 4c9aa4932..8b1845a08 100644 --- a/LUFA/Common/Common.h +++ b/LUFA/Common/Common.h @@ -153,8 +153,8 @@ /** Convenience macro to determine the larger of two values. * - * \note This macro should only be used with operands that do not have side effects from being evaluated - * multiple times. + * \attention This macro should only be used with operands that do not have side effects from being evaluated + * multiple times. * * \param[in] x First value to compare * \param[in] y First value to compare @@ -167,8 +167,8 @@ /** Convenience macro to determine the smaller of two values. * - * \note This macro should only be used with operands that do not have side effects from being evaluated - * multiple times. + * \attention This macro should only be used with operands that do not have side effects from being evaluated + * multiple times. * * \param[in] x First value to compare * \param[in] y First value to compare diff --git a/LUFA/DoxygenPages/CompileTimeTokens.txt b/LUFA/DoxygenPages/CompileTimeTokens.txt index 61c6f2757..8c348dd9a 100644 --- a/LUFA/DoxygenPages/CompileTimeTokens.txt +++ b/LUFA/DoxygenPages/CompileTimeTokens.txt @@ -210,7 +210,7 @@ * If enabled, this will indicate that the USB target VBUS line polarity is inverted; i.e. it should be pulled low to enable VBUS to the * target, and pulled high to stop the target VBUS generation. * - * \note On AVR8 architecture devices, this compile time option requires \c NO_AUTO_VBUS_MANAGEMENT to be set. + * \attention On AVR8 architecture devices, this compile time option requires \c NO_AUTO_VBUS_MANAGEMENT to be set. * * - <b>NO_AUTO_VBUS_MANAGEMENT</b> - (\ref Group_Host) - <i>All Architectures</i> \n * Disables the automatic management of VBUS to the target, i.e. automatic shut down in the even of an overcurrent situation. When enabled, VBUS diff --git a/LUFA/DoxygenPages/LUFAPoweredProjects.txt b/LUFA/DoxygenPages/LUFAPoweredProjects.txt index cbac5af79..a4af87375 100644 --- a/LUFA/DoxygenPages/LUFAPoweredProjects.txt +++ b/LUFA/DoxygenPages/LUFAPoweredProjects.txt @@ -89,6 +89,7 @@ * - PSGroove, a Playstation 3 Homebrew dongle: http://github.com/psgroove * - PS/2 to USB adapter: https://github.com/makestuff/p2ukbd * - Reprap with LUFA, a LUFA powered 3D printer: http://code.google.com/p/at90usb1287-code-for-arduino-and-eclipse/ + * - RFPirate, a RF experimentation platform: https://github.com/ebuller/RF-Pirate * - RF Transciever using the MRF49XA: http://alternet.us.com/?page_id=1494 * - SD Card reader: http://elasticsheep.com/2010/04/teensy2-usb-mass-storage-with-an-sd-card/ * - SDR1, a Software Defined Radio firmware: https://code.google.com/p/sdr-mk1/ diff --git a/LUFA/Drivers/Misc/RingBuffer.h b/LUFA/Drivers/Misc/RingBuffer.h index 8ed7a9144..df7e70218 100644 --- a/LUFA/Drivers/Misc/RingBuffer.h +++ b/LUFA/Drivers/Misc/RingBuffer.h @@ -225,9 +225,9 @@ /** Inserts an element into the ring buffer. * - * \note Only one execution thread (main program thread or an ISR) may insert into a single buffer - * otherwise data corruption may occur. Insertion and removal may occur from different execution - * threads. + * \warning Only one execution thread (main program thread or an ISR) may insert into a single buffer + * otherwise data corruption may occur. Insertion and removal may occur from different execution + * threads. * * \param[in,out] Buffer Pointer to a ring buffer structure to insert into. * \param[in] Data Data element to insert into the buffer. @@ -252,9 +252,9 @@ /** Removes an element from the ring buffer. * - * \note Only one execution thread (main program thread or an ISR) may remove from a single buffer - * otherwise data corruption may occur. Insertion and removal may occur from different execution - * threads. + * \warning Only one execution thread (main program thread or an ISR) may remove from a single buffer + * otherwise data corruption may occur. Insertion and removal may occur from different execution + * threads. * * \param[in,out] Buffer Pointer to a ring buffer structure to retrieve from. * diff --git a/LUFA/Drivers/Peripheral/AVR8/ADC_AVR8.h b/LUFA/Drivers/Peripheral/AVR8/ADC_AVR8.h index b4b2b1f97..ec80dd247 100644 --- a/LUFA/Drivers/Peripheral/AVR8/ADC_AVR8.h +++ b/LUFA/Drivers/Peripheral/AVR8/ADC_AVR8.h @@ -253,8 +253,8 @@ /** Retrieves the ADC MUX mask for the given ADC channel number. * - * \note This macro will only work correctly on channel numbers that are compile-time - * constants defined by the preprocessor. + * \attention This macro will only work correctly on channel numbers that are compile-time + * constants defined by the preprocessor. * * \param[in] Channel Index of the ADC channel whose MUX mask is to be retrieved. */ @@ -268,9 +268,8 @@ * * \note This must only be called for ADC channels with are connected to a physical port * pin of the AVR, denoted by its special alternative function ADCx. - * \n\n * - * \note The channel number must be specified as an integer, and <b>not</b> a \c ADC_CHANNEL* mask. + * \warning The channel number must be specified as an integer, and <b>not</b> a \c ADC_CHANNEL* mask. * * \param[in] ChannelIndex ADC channel number to set up for conversions. */ @@ -311,9 +310,8 @@ * * \note This must only be called for ADC channels with are connected to a physical port * pin of the AVR, denoted by its special alternative function ADCx. - * \n\n * - * \note The channel number must be specified as an integer, and <b>not</b> a \c ADC_CHANNEL* mask. + * \warning The channel number must be specified as an integer, and <b>not</b> a \c ADC_CHANNEL* mask. * * \param[in] ChannelIndex ADC channel number to set up for conversions. */ diff --git a/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h b/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h index 17c1e5c27..b9131df3c 100644 --- a/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h +++ b/LUFA/Drivers/Peripheral/AVR8/TWI_AVR8.h @@ -196,8 +196,8 @@ * * The generated SCL frequency will be according to the formula <pre>F_CPU / (16 + 2 * BitLength + 4 ^ Prescale)</pre>. * - * \note The value of the \c BitLength parameter should not be set below 10 or invalid bus conditions may - * occur, as indicated in the AVR8 microcontroller datasheet. + * \attention The value of the \c BitLength parameter should not be set below 10 or invalid bus conditions may + * occur, as indicated in the AVR8 microcontroller datasheet. * * \param[in] Prescale Prescaler to use when determining the bus frequency, a \c TWI_BIT_PRESCALE_* value. * \param[in] BitLength Length of the bits sent on the bus. diff --git a/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h b/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h index e87710a32..e97e7c9d6 100644 --- a/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h +++ b/LUFA/Drivers/USB/Class/Common/AudioClassCommon.h @@ -583,8 +583,8 @@ * about the number of channels, the sample resolution, acceptable sample frequencies and encoding method used * in the device's audio streams. See the USB Audio specification for more details. * - * \note This descriptor <b>must</b> be followed by one or more \ref USB_Audio_SampleFreq_t elements containing - * the continuous or discrete sample frequencies. + * \attention This descriptor <b>must</b> be followed by one or more \ref USB_Audio_SampleFreq_t elements containing + * the continuous or discrete sample frequencies. * * \see \ref USB_Audio_StdDescriptor_Format_t for the version of this type with standard element names. * @@ -630,8 +630,8 @@ * about the number of channels, the sample resolution, acceptable sample frequencies and encoding method used * in the device's audio streams. See the USB Audio specification for more details. * - * \note This descriptor <b>must</b> be followed by one or more 24-bit integer elements containing the continuous - * or discrete sample frequencies. + * \attention This descriptor <b>must</b> be followed by one or more 24-bit integer elements containing the continuous + * or discrete sample frequencies. * * \see \ref USB_Audio_Descriptor_Format_t for the version of this type with non-standard LUFA specific * element names. diff --git a/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h b/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h index 998b0a738..cc0dd1b15 100644 --- a/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h +++ b/LUFA/Drivers/USB/Class/Device/CDCClassDevice.h @@ -53,16 +53,17 @@ * * One major issue with CDC-ACM is that it requires two Interface descriptors, * which will upset most hosts when part of a multi-function "Composite" USB - * device, as each interface will be loaded into a separate driver instance. To - * combat this, you should use the "Interface Association Descriptor" addendum to - * the USB standard which is available on most OSes when creating Composite devices. + * device. This is because each interface will be loaded into a separate driver + * instance, causing the two interfaces be become unlinked. To prevent this, you + * should use the "Interface Association Descriptor" addendum to the USB 2.0 standard + * which is available on most OSes when creating Composite devices. * * Another major oversight is that there is no mechanism for the host to notify the * device that there is a data sink on the host side ready to accept data. This * means that the device may try to send data while the host isn't listening, causing - * lengthy blocking timeouts in the transmission routines. To combat this, it is - * recommended that the virtual serial line DTR (Data Terminal Ready) be used where - * possible to determine if a host application is ready for data. + * lengthy blocking timeouts in the transmission routines. It is thus highly recommended + * that the virtual serial line DTR (Data Terminal Ready) signal be used where possible + * to determine if a host application is ready for data. * * @{ */ @@ -299,7 +300,7 @@ * be used when the read data is processed byte-per-bye (via \c getc()) or when the user application will implement its own * line buffering. * - * \note The created stream can be given as stdout if desired to direct the standard output from all <stdio.h> functions + * \note The created stream can be given as \c stdout if desired to direct the standard output from all <stdio.h> functions * to the given CDC interface. * \n\n * diff --git a/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h b/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h index 58bd98fe8..0ec44e715 100644 --- a/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/AndroidAccessoryClassHost.h @@ -263,7 +263,7 @@ * be used when the read data is processed byte-per-bye (via \c getc()) or when the user application will implement its own
* line buffering.
*
- * \note The created stream can be given as stdout if desired to direct the standard output from all \c <stdio.h> functions
+ * \note The created stream can be given as \c stdout if desired to direct the standard output from all \c <stdio.h> functions
* to the given AOA interface.
* \n\n
*
diff --git a/LUFA/Drivers/USB/Class/Host/CDCClassHost.h b/LUFA/Drivers/USB/Class/Host/CDCClassHost.h index 0beb5b1da..5a8df2414 100644 --- a/LUFA/Drivers/USB/Class/Host/CDCClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/CDCClassHost.h @@ -289,7 +289,7 @@ * be used when the read data is processed byte-per-bye (via \c getc()) or when the user application will implement its own * line buffering. * - * \note The created stream can be given as stdout if desired to direct the standard output from all \c <stdio.h> functions + * \note The created stream can be given as \c stdout if desired to direct the standard output from all \c <stdio.h> functions * to the given CDC interface. * \n\n * diff --git a/LUFA/Drivers/USB/Class/Host/HIDClassHost.h b/LUFA/Drivers/USB/Class/Host/HIDClassHost.h index 2e88679f2..7bdaad18b 100644 --- a/LUFA/Drivers/USB/Class/Host/HIDClassHost.h +++ b/LUFA/Drivers/USB/Class/Host/HIDClassHost.h @@ -148,8 +148,8 @@ * device. This should be called once after the stack has enumerated the attached device, while the host state * machine is in the Addressed state. * - * \note Once the device pipes are configured, the HID device's reporting protocol <b>must</b> be set via a call - * to either the \ref HID_Host_SetBootProtocol() or \ref HID_Host_SetReportProtocol() function. + * \attention Once the device pipes are configured, the HID device's reporting protocol <b>must</b> be set via a call + * to either the \ref HID_Host_SetBootProtocol() or \ref HID_Host_SetReportProtocol() function. * * \param[in,out] HIDInterfaceInfo Pointer to a structure containing a HID Class host configuration and state. * \param[in] ConfigDescriptorSize Length of the attached device's Configuration Descriptor. @@ -167,8 +167,8 @@ * \pre This function must only be called when the Host state machine is in the \ref HOST_STATE_Configured state or the * call will fail. * - * \note The destination buffer should be large enough to accommodate the largest report that the attached device - * can generate. + * \attention The destination buffer should be large enough to accommodate the largest report that the attached device + * can generate. * * \param[in,out] HIDInterfaceInfo Pointer to a structure containing a HID Class host configuration and state. * \param[in] Buffer Buffer to store the received report into. @@ -267,9 +267,8 @@ /** Switches the attached HID device's reporting protocol over to the standard Report protocol mode. This also retrieves * and parses the device's HID report descriptor, so that the size of each report can be determined in advance. * - * \note Whether this function is used or not, the \ref CALLBACK_HIDParser_FilterHIDReportItem() callback from the HID - * Report Parser this function references <b>must</b> be implemented in the user code. - * \n\n + * \attention Whether this function is used or not, the \ref CALLBACK_HIDParser_FilterHIDReportItem() callback from the HID + * Report Parser this function references <b>must</b> be implemented in the user code. * * \note When the \c HID_HOST_BOOT_PROTOCOL_ONLY compile time token is defined, this method is unavailable. * diff --git a/LUFA/Drivers/USB/Core/AVR8/Device_AVR8.h b/LUFA/Drivers/USB/Core/AVR8/Device_AVR8.h index 74920d54c..018a2e7de 100644 --- a/LUFA/Drivers/USB/Core/AVR8/Device_AVR8.h +++ b/LUFA/Drivers/USB/Core/AVR8/Device_AVR8.h @@ -89,7 +89,7 @@ * \n * * \note Restrictions apply on the number, size and type of endpoints which can be used - * when running in low speed mode - refer to the USB 2.0 specification. + * when running in low speed mode - please refer to the USB 2.0 specification. */ #define USB_DEVICE_OPT_LOWSPEED (1 << 0) #endif @@ -138,16 +138,16 @@ * Typically, this is implemented so that HID devices (mice, keyboards, etc.) can wake up the * host computer when the host has suspended all USB devices to enter a low power state. * - * \note This macro should only be used if the device has indicated to the host that it - * supports the Remote Wakeup feature in the device descriptors, and should only be - * issued if the host is currently allowing remote wakeup events from the device (i.e., - * the \ref USB_Device_RemoteWakeupEnabled flag is set). When the \c NO_DEVICE_REMOTE_WAKEUP - * compile time option is used, this macro is unavailable. - * \n\n + * \attention This function should only be used if the device has indicated to the host that it + * supports the Remote Wakeup feature in the device descriptors, and should only be + * issued if the host is currently allowing remote wakeup events from the device (i.e., + * the \ref USB_Device_RemoteWakeupEnabled flag is set). When the \c NO_DEVICE_REMOTE_WAKEUP + * compile time option is used, this function is unavailable. + * \n\n * - * \note The USB clock must be running for this function to operate. If the stack is initialized with - * the \ref USB_OPT_MANUAL_PLL option enabled, the user must ensure that the PLL is running - * before attempting to call this function. + * \attention The USB clock must be running for this function to operate. If the stack is initialized with + * the \ref USB_OPT_MANUAL_PLL option enabled, the user must ensure that the PLL is running + * before attempting to call this function. * * \see \ref Group_StdDescriptors for more information on the RMWAKEUP feature and device descriptors. */ @@ -170,7 +170,7 @@ * \ref EVENT_USB_Device_StartOfFrame() event to fire once per millisecond, synchronized to the USB bus, * at the start of each USB frame when enumerated in device mode. * - * \note Not available when the \c NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Device_EnableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Device_EnableSOFEvents(void) @@ -181,7 +181,7 @@ /** Disables the device mode Start Of Frame events. When disabled, this stops the firing of the * \ref EVENT_USB_Device_StartOfFrame() event when enumerated in device mode. * - * \note Not available when the \c NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Device_DisableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Device_DisableSOFEvents(void) diff --git a/LUFA/Drivers/USB/Core/AVR8/Endpoint_AVR8.h b/LUFA/Drivers/USB/Core/AVR8/Endpoint_AVR8.h index 066fc3d9a..10f69a8fd 100644 --- a/LUFA/Drivers/USB/Core/AVR8/Endpoint_AVR8.h +++ b/LUFA/Drivers/USB/Core/AVR8/Endpoint_AVR8.h @@ -171,8 +171,8 @@ /** Retrieves the maximum bank size in bytes of a given endpoint. * - * \note This macro will only work correctly on endpoint indexes that are compile-time constants - * defined by the preprocessor. + * \attention This macro will only work correctly on endpoint indexes that are compile-time constants + * defined by the preprocessor. * * \param[in] EPIndex Endpoint number, a value between 0 and (\ref ENDPOINT_TOTAL_ENDPOINTS - 1) */ @@ -180,8 +180,8 @@ /** Retrieves the total number of banks supported by the given endpoint. * - * \note This macro will only work correctly on endpoint indexes that are compile-time constants - * defined by the preprocessor. + * \attention This macro will only work correctly on endpoint indexes that are compile-time constants + * defined by the preprocessor. * * \param[in] EPIndex Endpoint number, a value between 0 and (\ref ENDPOINT_TOTAL_ENDPOINTS - 1) */ @@ -245,12 +245,11 @@ * More banks uses more USB DPRAM, but offers better performance. Isochronous type * endpoints <b>must</b> have at least two banks. * - * \note When the \c ORDERED_EP_CONFIG compile time option is used, Endpoints <b>must</b> be configured in - * ascending order, or bank corruption will occur. - * \n\n + * \attention When the \c ORDERED_EP_CONFIG compile time option is used, Endpoints <b>must</b> be configured in + * ascending order, or bank corruption will occur. * - * \note Different endpoints may have different maximum packet sizes based on the endpoint's index - refer to - * the chosen microcontroller model's datasheet to determine the maximum bank size for each endpoint. + * \note Different endpoints may have different maximum packet sizes based on the endpoint's index - please + * refer to the chosen microcontroller model's datasheet to determine the maximum bank size for each endpoint. * \n\n * * \note The default control endpoint should not be manually configured by the user application, as @@ -279,9 +278,6 @@ /** Indicates the number of bytes currently stored in the current endpoint's selected bank. * - * \note The return width of this function may differ, depending on the maximum endpoint bank size - * of the selected AVR model. - * * \ingroup Group_EndpointRW_AVR8 * * \return Total number of bytes in the currently selected Endpoint's FIFO buffer. @@ -835,8 +831,8 @@ * \c FIXED_CONTROL_ENDPOINT_SIZE token - it is recommended that the \c FIXED_CONTROL_ENDPOINT_SIZE token * be used in the device descriptors to ensure this. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ #if (!defined(FIXED_CONTROL_ENDPOINT_SIZE) || defined(__DOXYGEN__)) extern uint8_t USB_Device_ControlEndpointSize; @@ -848,6 +844,8 @@ /** Completes the status stage of a control transfer on a CONTROL type endpoint automatically, * with respect to the data direction. This is a convenience function which can be used to * simplify user control request handling. + * + * \note This routine should not be called on non CONTROL type endpoints. */ void Endpoint_ClearStatusStage(void); diff --git a/LUFA/Drivers/USB/Core/AVR8/Host_AVR8.h b/LUFA/Drivers/USB/Core/AVR8/Host_AVR8.h index 09c58bcd6..1d8071932 100644 --- a/LUFA/Drivers/USB/Core/AVR8/Host_AVR8.h +++ b/LUFA/Drivers/USB/Core/AVR8/Host_AVR8.h @@ -146,7 +146,7 @@ * \ref EVENT_USB_Host_StartOfFrame() event to fire once per millisecond, synchronized to the USB bus, * at the start of each USB frame when a device is enumerated while in host mode. * - * \note Not available when the \c NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Host_EnableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Host_EnableSOFEvents(void) @@ -157,7 +157,7 @@ /** Disables the host mode Start Of Frame events. When disabled, this stops the firing of the * \ref EVENT_USB_Host_StartOfFrame() event when enumerated in host mode. * - * \note Not available when the NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Host_DisableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Host_DisableSOFEvents(void) @@ -203,8 +203,8 @@ * device until the bus has been resumed. This stops the transmission of the 1MS Start Of Frame * messages to the device. * - * \note While the USB bus is suspended, all USB interrupt sources are also disabled; this means that - * some events (such as device disconnections) will not fire until the bus is resumed. + * \attention While the USB bus is suspended, all USB interrupt sources are also disabled; this means that + * some events (such as device disconnections) will not fire until the bus is resumed. */ static inline void USB_Host_SuspendBus(void) ATTR_ALWAYS_INLINE; static inline void USB_Host_SuspendBus(void) diff --git a/LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.h b/LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.h index 5d33da837..86792bf22 100644 --- a/LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.h +++ b/LUFA/Drivers/USB/Core/AVR8/Pipe_AVR8.h @@ -193,9 +193,6 @@ /* Inline Functions: */ /** Indicates the number of bytes currently stored in the current pipes's selected bank. * - * \note The return width of this function may differ, depending on the maximum pipe bank size - * of the selected AVR model. - * * \ingroup Group_PipeRW_AVR8 * * \return Total number of bytes in the currently selected pipe's FIFO buffer. @@ -807,8 +804,8 @@ * descriptor once the USB interface is initialized into host mode and a device is attached * to the USB bus. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ extern uint8_t USB_Host_ControlPipeSize; @@ -842,9 +839,8 @@ * uses more USB DPRAM, but offers better performance. Isochronous type pipes <b>must</b> * have at least two banks. * - * \note When the \c ORDERED_EP_CONFIG compile time option is used, Pipes <b>must</b> be configured in ascending order, - * or bank corruption will occur. - * \n\n + * \attention When the \c ORDERED_EP_CONFIG compile time option is used, Pipes <b>must</b> be configured in ascending order, + * or bank corruption will occur. * * \note Certain microcontroller model's pipes may have different maximum packet sizes based on the pipe's * index - refer to the chosen microcontroller's datasheet to determine the maximum bank size for each pipe. diff --git a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h index c9d1a0867..330dd9814 100644 --- a/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h +++ b/LUFA/Drivers/USB/Core/AVR8/USBController_AVR8.h @@ -227,7 +227,7 @@ * function prototype. * \n\n * - * \note To reduce the FLASH requirements of the library if only fixed settings are are required, + * \note To reduce the FLASH requirements of the library if only fixed settings are required, * the options may be set statically in the same manner as the mode (see the Mode parameter of * this function). To statically set the USB options, pass in the \c USE_STATIC_OPTIONS token, * defined to the appropriate options masks. When the options are statically set, this @@ -271,9 +271,8 @@ /** Indicates the mode that the USB interface is currently initialized to, a value from the * \ref USB_Modes_t enum. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. - * \n\n + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \note When the controller is initialized into UID auto-detection mode, this variable will hold the * currently selected USB mode (i.e. \ref USB_MODE_Device or \ref USB_MODE_Host). If the controller @@ -293,8 +292,8 @@ /** Indicates the current USB options that the USB interface was initialized with when \ref USB_Init() * was called. This value will be one of the \c USB_MODE_* masks defined elsewhere in this module. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ extern volatile uint8_t USB_Options; #elif defined(USE_STATIC_OPTIONS) diff --git a/LUFA/Drivers/USB/Core/DeviceStandardReq.h b/LUFA/Drivers/USB/Core/DeviceStandardReq.h index a319b7ae7..d43db666b 100644 --- a/LUFA/Drivers/USB/Core/DeviceStandardReq.h +++ b/LUFA/Drivers/USB/Core/DeviceStandardReq.h @@ -86,8 +86,8 @@ * different configurations which the host can select between; this indicates the currently selected * value, or 0 if no configuration has been selected. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \ingroup Group_Device */ @@ -97,9 +97,8 @@ /** Indicates if the host is currently allowing the device to issue remote wakeup events. If this * flag is cleared, the device should not issue remote wakeup events to the host. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. - * \n\n + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \note To reduce FLASH usage of the compiled applications where Remote Wakeup is not supported, * this global and the underlying management code can be disabled by defining the diff --git a/LUFA/Drivers/USB/Core/Events.h b/LUFA/Drivers/USB/Core/Events.h index 2fff44046..8d627d4f2 100644 --- a/LUFA/Drivers/USB/Core/Events.h +++ b/LUFA/Drivers/USB/Core/Events.h @@ -183,6 +183,9 @@ * This event is time-critical; exceeding OS-specific delays within this event handler (typically of around * two seconds) will prevent the device from enumerating correctly. * + * \attention This event may fire multiple times during device enumeration on the microcontrollers with limited USB controllers + * if \c NO_LIMITED_CONTROLLER_CONNECT is not defined. + * * \note For the microcontrollers with limited USB controller functionality, VBUS sensing is not available. * this means that the current connection state is derived from the bus suspension and wake up events by default, * which is not always accurate (host may suspend the bus while still connected). If the actual connection state @@ -191,9 +194,6 @@ * and disconnection events may be manually fired, and the \ref USB_DeviceState global changed manually. * \n\n * - * \note This event may fire multiple times during device enumeration on the microcontrollers with limited USB controllers - * if \c NO_LIMITED_CONTROLLER_CONNECT is not defined. - * * \see \ref Group_USBManagement for more information on the USB management task and reducing CPU usage. */ void EVENT_USB_Device_Connect(void); @@ -201,6 +201,9 @@ /** Event for USB device disconnection. This event fires when the microcontroller is in USB Device mode and the device is * disconnected from a host, measured by a falling level on the microcontroller's VBUS sense pin. * + * \attention This event may fire multiple times during device enumeration on the microcontrollers with limited USB controllers + * if \c NO_LIMITED_CONTROLLER_CONNECT is not defined. + * * \note For the microcontrollers with limited USB controllers, VBUS sense is not available to the USB controller. * this means that the current connection state is derived from the bus suspension and wake up events by default, * which is not always accurate (host may suspend the bus while still connected). If the actual connection state @@ -209,9 +212,6 @@ * and disconnection events may be manually fired, and the \ref USB_DeviceState global changed manually. * \n\n * - * \note This event may fire multiple times during device enumeration on the microcontrollers with limited USB controllers - * if \c NO_LIMITED_CONTROLLER_CONNECT is not defined. - * * \see \ref Group_USBManagement for more information on the USB management task and reducing CPU usage. */ void EVENT_USB_Device_Disconnect(void); diff --git a/LUFA/Drivers/USB/Core/HostStandardReq.h b/LUFA/Drivers/USB/Core/HostStandardReq.h index 35c8dd3f2..5bdfe45ef 100644 --- a/LUFA/Drivers/USB/Core/HostStandardReq.h +++ b/LUFA/Drivers/USB/Core/HostStandardReq.h @@ -95,8 +95,8 @@ * * To set a device configuration, call the \ref USB_Host_SetDeviceConfiguration() function. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \ingroup Group_Host */ diff --git a/LUFA/Drivers/USB/Core/UC3/Device_UC3.h b/LUFA/Drivers/USB/Core/UC3/Device_UC3.h index 0781d43d0..36c452f0b 100644 --- a/LUFA/Drivers/USB/Core/UC3/Device_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/Device_UC3.h @@ -73,7 +73,7 @@ * USB interface should be initialized in low speed (1.5Mb/s) mode. * * \note Restrictions apply on the number, size and type of endpoints which can be used - * when running in low speed mode - refer to the USB 2.0 specification. + * when running in low speed mode - please refer to the USB 2.0 specification. */ #define USB_DEVICE_OPT_LOWSPEED (1 << 0) @@ -127,12 +127,11 @@ * Typically, this is implemented so that HID devices (mice, keyboards, etc.) can wake up the * host computer when the host has suspended all USB devices to enter a low power state. * - * \note This macro should only be used if the device has indicated to the host that it + * \note This function should only be used if the device has indicated to the host that it * supports the Remote Wakeup feature in the device descriptors, and should only be * issued if the host is currently allowing remote wakeup events from the device (i.e., * the \ref USB_Device_RemoteWakeupEnabled flag is set). When the \c NO_DEVICE_REMOTE_WAKEUP - * compile time option is used, this macro is unavailable. - * \n\n + * compile time option is used, this function is unavailable. * * \note The USB clock must be running for this function to operate. If the stack is initialized with * the \ref USB_OPT_MANUAL_PLL option enabled, the user must ensure that the PLL is running diff --git a/LUFA/Drivers/USB/Core/UC3/Endpoint_UC3.h b/LUFA/Drivers/USB/Core/UC3/Endpoint_UC3.h index 2c151babc..c919effa7 100644 --- a/LUFA/Drivers/USB/Core/UC3/Endpoint_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/Endpoint_UC3.h @@ -199,8 +199,8 @@ /** Retrieves the maximum bank size in bytes of a given endpoint. * - * \note This macro will only work correctly on endpoint indexes that are compile-time constants - * defined by the preprocessor. + * \attention This macro will only work correctly on endpoint indexes that are compile-time constants + * defined by the preprocessor. * * \param[in] EPIndex Endpoint number, a value between 0 and (\ref ENDPOINT_TOTAL_ENDPOINTS - 1) */ @@ -208,8 +208,8 @@ /** Retrieves the total number of banks supported by the given endpoint. * - * \note This macro will only work correctly on endpoint indexes that are compile-time constants - * defined by the preprocessor. + * \attention This macro will only work correctly on endpoint indexes that are compile-time constants + * defined by the preprocessor. * * \param[in] EPIndex Endpoint number, a value between 0 and (\ref ENDPOINT_TOTAL_ENDPOINTS - 1) */ @@ -273,9 +273,8 @@ * More banks uses more USB DPRAM, but offers better performance. Isochronous type * endpoints <b>must</b> have at least two banks. * - * \note When the \c ORDERED_EP_CONFIG compile time option is used, Endpoints <b>must</b> be configured in - * ascending order, or bank corruption will occur. - * \n\n + * \attention When the \c ORDERED_EP_CONFIG compile time option is used, Endpoints <b>must</b> be configured in + * ascending order, or bank corruption will occur. * * \note Different endpoints may have different maximum packet sizes based on the endpoint's index - refer to * the chosen microcontroller model's datasheet to determine the maximum bank size for each endpoint. @@ -310,9 +309,6 @@ /** Indicates the number of bytes currently stored in the current endpoint's selected bank. * - * \note The return width of this function may differ, depending on the maximum endpoint bank size - * of the selected AVR model. - * * \ingroup Group_EndpointRW_UC3 * * \return Total number of bytes in the currently selected Endpoint's FIFO buffer. @@ -831,8 +827,8 @@ * \c FIXED_CONTROL_ENDPOINT_SIZE token - it is recommended that the \c FIXED_CONTROL_ENDPOINT_SIZE token * be used in the device descriptors to ensure this. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ #if (!defined(FIXED_CONTROL_ENDPOINT_SIZE) || defined(__DOXYGEN__)) extern uint8_t USB_Device_ControlEndpointSize; @@ -844,6 +840,8 @@ /** Completes the status stage of a control transfer on a CONTROL type endpoint automatically, * with respect to the data direction. This is a convenience function which can be used to * simplify user control request handling. + * + * \note This routine should not be called on non CONTROL type endpoints. */ void Endpoint_ClearStatusStage(void); diff --git a/LUFA/Drivers/USB/Core/UC3/Host_UC3.h b/LUFA/Drivers/USB/Core/UC3/Host_UC3.h index 5f998379a..a1655b609 100644 --- a/LUFA/Drivers/USB/Core/UC3/Host_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/Host_UC3.h @@ -143,7 +143,7 @@ * \ref EVENT_USB_Host_StartOfFrame() event to fire once per millisecond, synchronized to the USB bus, * at the start of each USB frame when a device is enumerated while in host mode. * - * \note Not available when the \c NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Host_EnableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Host_EnableSOFEvents(void) @@ -154,7 +154,7 @@ /** Disables the host mode Start Of Frame events. When disabled, this stops the firing of the * \ref EVENT_USB_Host_StartOfFrame() event when enumerated in host mode. * - * \note Not available when the NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Host_DisableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Host_DisableSOFEvents(void) diff --git a/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h b/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h index 1433d8ca2..f17fa5376 100644 --- a/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/Pipe_UC3.h @@ -214,9 +214,6 @@ /* Inline Functions: */ /** Indicates the number of bytes currently stored in the current pipes's selected bank. * - * \note The return width of this function may differ, depending on the maximum pipe bank size - * of the selected AVR model. - * * \ingroup Group_PipeRW_UC3 * * \return Total number of bytes in the currently selected pipe's FIFO buffer. @@ -818,8 +815,8 @@ * descriptor once the USB interface is initialized into host mode and a device is attached * to the USB bus. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ extern uint8_t USB_Host_ControlPipeSize; diff --git a/LUFA/Drivers/USB/Core/UC3/USBController_UC3.h b/LUFA/Drivers/USB/Core/UC3/USBController_UC3.h index 0d25ebebe..92e245ca2 100644 --- a/LUFA/Drivers/USB/Core/UC3/USBController_UC3.h +++ b/LUFA/Drivers/USB/Core/UC3/USBController_UC3.h @@ -184,7 +184,7 @@ * function prototype. * \n\n * - * \note To reduce the FLASH requirements of the library if only fixed settings are are required, + * \note To reduce the FLASH requirements of the library if only fixed settings are required, * the options may be set statically in the same manner as the mode (see the Mode parameter of * this function). To statically set the USB options, pass in the \c USE_STATIC_OPTIONS token, * defined to the appropriate options masks. When the options are statically set, this @@ -224,9 +224,8 @@ /** Indicates the mode that the USB interface is currently initialized to, a value from the * \ref USB_Modes_t enum. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. - * \n\n + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \note When the controller is initialized into UID auto-detection mode, this variable will hold the * currently selected USB mode (i.e. \ref USB_MODE_Device or \ref USB_MODE_Host). If the controller @@ -246,8 +245,8 @@ /** Indicates the current USB options that the USB interface was initialized with when \ref USB_Init() * was called. This value will be one of the \c USB_MODE_* masks defined elsewhere in this module. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ extern volatile uint8_t USB_Options; #elif defined(USE_STATIC_OPTIONS) diff --git a/LUFA/Drivers/USB/Core/USBTask.h b/LUFA/Drivers/USB/Core/USBTask.h index bd367b24c..f040246c7 100644 --- a/LUFA/Drivers/USB/Core/USBTask.h +++ b/LUFA/Drivers/USB/Core/USBTask.h @@ -73,8 +73,8 @@ * or device (i.e. if \ref USB_Init() has been run). If this is false, all other library globals related * to the USB driver are invalid. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \ingroup Group_USBManagement */ @@ -133,12 +133,12 @@ * the compiler via the -D switch. When defined, the corresponding GPIOR register should not be used * in the user application except implicitly via the library APIs. * + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value except in the circumstances outlined above. + * * \note This global is only present if the user application can be a USB device. * \n\n * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value except in the circumstances outlined above. - * * \see \ref USB_Device_States_t for a list of possible device states. * * \ingroup Group_Device diff --git a/LUFA/Drivers/USB/Core/XMEGA/Device_XMEGA.h b/LUFA/Drivers/USB/Core/XMEGA/Device_XMEGA.h index 3712a7e42..85be0f1bf 100644 --- a/LUFA/Drivers/USB/Core/XMEGA/Device_XMEGA.h +++ b/LUFA/Drivers/USB/Core/XMEGA/Device_XMEGA.h @@ -133,11 +133,11 @@ * Typically, this is implemented so that HID devices (mice, keyboards, etc.) can wake up the * host computer when the host has suspended all USB devices to enter a low power state. * - * \note This macro should only be used if the device has indicated to the host that it + * \note This function should only be used if the device has indicated to the host that it * supports the Remote Wakeup feature in the device descriptors, and should only be * issued if the host is currently allowing remote wakeup events from the device (i.e., * the \ref USB_Device_RemoteWakeupEnabled flag is set). When the \c NO_DEVICE_REMOTE_WAKEUP - * compile time option is used, this macro is unavailable. + * compile time option is used, this function is unavailable. * \n\n * * \note The USB clock must be running for this function to operate. If the stack is initialized with @@ -165,7 +165,7 @@ * \ref EVENT_USB_Device_StartOfFrame() event to fire once per millisecond, synchronized to the USB bus, * at the start of each USB frame when enumerated in device mode. * - * \note Not available when the \c NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Device_EnableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Device_EnableSOFEvents(void) @@ -176,7 +176,7 @@ /** Disables the device mode Start Of Frame events. When disabled, this stops the firing of the * \ref EVENT_USB_Device_StartOfFrame() event when enumerated in device mode. * - * \note Not available when the \c NO_SOF_EVENTS compile time token is defined. + * \note This function is not available when the \c NO_SOF_EVENTS compile time token is defined. */ static inline void USB_Device_DisableSOFEvents(void) ATTR_ALWAYS_INLINE; static inline void USB_Device_DisableSOFEvents(void) diff --git a/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h b/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h index 8cea092d0..7828f308a 100644 --- a/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h +++ b/LUFA/Drivers/USB/Core/XMEGA/Endpoint_XMEGA.h @@ -170,8 +170,8 @@ /** Retrieves the maximum bank size in bytes of a given endpoint. * - * \note This macro will only work correctly on endpoint indexes that are compile-time constants - * defined by the preprocessor. + * \attention This macro will only work correctly on endpoint indexes that are compile-time constants + * defined by the preprocessor. * * \param[in] EPIndex Endpoint number, a value between 0 and (\ref ENDPOINT_TOTAL_ENDPOINTS - 1) */ @@ -179,8 +179,8 @@ /** Retrieves the total number of banks supported by the given endpoint. * - * \note This macro will only work correctly on endpoint indexes that are compile-time constants - * defined by the preprocessor. + * \attention This macro will only work correctly on endpoint indexes that are compile-time constants + * defined by the preprocessor. * * \param[in] EPIndex Endpoint number, a value between 0 and (\ref ENDPOINT_TOTAL_ENDPOINTS - 1) */ @@ -316,9 +316,6 @@ /** Indicates the number of bytes currently stored in the current endpoint's selected bank. * - * \note The return width of this function may differ, depending on the maximum endpoint bank size - * of the selected AVR model. - * * \ingroup Group_EndpointRW_XMEGA * * \return Total number of bytes in the currently selected Endpoint's FIFO buffer. @@ -793,8 +790,8 @@ * \c FIXED_CONTROL_ENDPOINT_SIZE token - it is recommended that the \c FIXED_CONTROL_ENDPOINT_SIZE token * be used in the device descriptors to ensure this. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ #if (!defined(FIXED_CONTROL_ENDPOINT_SIZE) || defined(__DOXYGEN__)) extern uint8_t USB_Device_ControlEndpointSize; @@ -806,6 +803,8 @@ /** Completes the status stage of a control transfer on a CONTROL type endpoint automatically, * with respect to the data direction. This is a convenience function which can be used to * simplify user control request handling. + * + * \note This routine should not be called on non CONTROL type endpoints. */ void Endpoint_ClearStatusStage(void); diff --git a/LUFA/Drivers/USB/Core/XMEGA/USBController_XMEGA.h b/LUFA/Drivers/USB/Core/XMEGA/USBController_XMEGA.h index 60f3e127b..2f14f758a 100644 --- a/LUFA/Drivers/USB/Core/XMEGA/USBController_XMEGA.h +++ b/LUFA/Drivers/USB/Core/XMEGA/USBController_XMEGA.h @@ -192,7 +192,7 @@ * function prototype. * \n\n * - * \note To reduce the FLASH requirements of the library if only fixed settings are are required, + * \note To reduce the FLASH requirements of the library if only fixed settings are required, * the options may be set statically in the same manner as the mode (see the Mode parameter of * this function). To statically set the USB options, pass in the \c USE_STATIC_OPTIONS token, * defined to the appropriate options masks. When the options are statically set, this @@ -236,9 +236,8 @@ /** Indicates the mode that the USB interface is currently initialized to, a value from the * \ref USB_Modes_t enum. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. - * \n\n + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. * * \note When the controller is initialized into UID auto-detection mode, this variable will hold the * currently selected USB mode (i.e. \ref USB_MODE_Device or \ref USB_MODE_Host). If the controller @@ -256,8 +255,8 @@ /** Indicates the current USB options that the USB interface was initialized with when \ref USB_Init() * was called. This value will be one of the \c USB_MODE_* masks defined elsewhere in this module. * - * \note This variable should be treated as read-only in the user application, and never manually - * changed in value. + * \attention This variable should be treated as read-only in the user application, and never manually + * changed in value. */ extern volatile uint8_t USB_Options; #elif defined(USE_STATIC_OPTIONS) diff --git a/LUFA/Drivers/USB/USB.h b/LUFA/Drivers/USB/USB.h index edb16e2b5..35b285c6d 100644 --- a/LUFA/Drivers/USB/USB.h +++ b/LUFA/Drivers/USB/USB.h @@ -158,9 +158,6 @@ * before the class driver is used. Each Device mode Class driver typically contains a set of configuration parameters * for the endpoint size/number of the associated logical USB interface, plus any class-specific configuration parameters. * - * \note The \c State section of the \c USB_ClassInfo_* structures are designed to be controlled by the Class Drivers only - * for maintaining the Class Driver instance's state, and should not normally be altered by the user application. - * * The following is an example of a properly initialized instance of the Audio Class Driver structure: * * \code @@ -258,9 +255,6 @@ * before the class driver is used. Each Device mode Class driver typically contains a set of configuration parameters * for the endpoint size/number of the associated logical USB interface, plus any class-specific configuration parameters. * - * \note The \c State section of the \c USB_ClassInfo_* structures are designed to be controlled by the Class Drivers only - * for maintaining the Class Driver instance's state, and should not normally be altered by the user application. - * * The following is an example of a properly initialized instance of the MIDI Host Class Driver structure: * * \code diff --git a/LUFA/Platform/UC3/ClockManagement.h b/LUFA/Platform/UC3/ClockManagement.h index 3a46f9d75..d0d8f71e8 100644 --- a/LUFA/Platform/UC3/ClockManagement.h +++ b/LUFA/Platform/UC3/ClockManagement.h @@ -162,7 +162,7 @@ /** Starts the given PLL of the UC3 microcontroller, with the given options. This routine blocks until the PLL is ready for use. * - * \note The output frequency must be equal to or greater than the source frequency. + * \attention The output frequency must be equal to or greater than the source frequency. * * \param[in] Channel Index of the PLL to start. * \param[in] Source Clock source for the PLL, a value from \ref UC3_System_ClockSource_t. diff --git a/LUFA/Platform/XMEGA/ClockManagement.h b/LUFA/Platform/XMEGA/ClockManagement.h index 20fb6464c..db2bb64a4 100644 --- a/LUFA/Platform/XMEGA/ClockManagement.h +++ b/LUFA/Platform/XMEGA/ClockManagement.h @@ -200,7 +200,7 @@ /** Starts the PLL of the XMEGA microcontroller, with the given options. This routine blocks until the PLL is ready for use. * - * \note The output frequency must be equal to or greater than the source frequency. + * \attention The output frequency must be equal to or greater than the source frequency. * * \param[in] Source Clock source for the PLL, a value from \ref XMEGA_System_ClockSource_t. * \param[in] SourceFreq Frequency of the PLL's clock source, in Hz. diff --git a/LUFA/Scheduler/Scheduler.h b/LUFA/Scheduler/Scheduler.h index 23baebd1e..630fbff9f 100644 --- a/LUFA/Scheduler/Scheduler.h +++ b/LUFA/Scheduler/Scheduler.h @@ -199,7 +199,7 @@ /** Contains the total number of tasks in the task list, irrespective of if the task's status is set to * \ref TASK_RUN or \ref TASK_STOP. * - * \note This value should be treated as read-only, and never altered in user-code. + * \warning This value should be treated as read-only, and never altered in user-application code. */ extern volatile uint_least8_t Scheduler_TotalTasks; |