*
* \section Sec_ChangeLogXXXXXX Version XXXXXX
* <b>New:</b>
- * N/A
+ * - N/A
*
* <b>Changed:</b>
- * N/A
+ * - N/A
*
* <b>Fixed:</b>
* - Fixed AVRISP project sending a LOAD EXTENDED ADDRESS command to 128KB AVRs after programming or reading from
- * the last page of FLASH
+ * the last page of FLASH (thanks to Gerard Sexton)
+ * - Fixed AVRISP project not sending a full erase-and-write EEPROM command to XMEGA targets when writing to the EEPROM
+ * instead of the split write-only command (thanks to Tim Margush)
*
* \section Sec_ChangeLog100513 Version 100513
* <b>New:</b>
* - Fixed AVRISP-MKII clone project not correctly issuing LOAD EXTENDED ADDRESS commands when the extended address
* boundary is crossed during programming or readback (thanks to Gerard Sexton)
* - Fixed warnings when building the AVRISP-MKII clone project with the ENABLE_XPROG_PROTOCOL compile time option disabled
- * - Remove incorrect check for the current device state in the Set Configuration request handler of DevChapter9, which broke
- * Set Configuration requests to the device under most circumstances.
* - Fixed software PDI/TPI programming mode in the AVRISP project not correctly toggling just the clock pin
* - Fixed TWI_StartTransmission() corrupting the contents of the GPIOR0 register
* - Fixed TWI driver not aborting when faced with no response after attempting to address a device on the bus
* }
* \endcode
*/
- #define TASK(name) void name (void)
+ #define TASK(name) void name (void)
/** Defines a task list array, containing one or more task entries of the type TaskEntry_t. Each task list
* should be encased in curly braces and ended with a comma.
* }
* \endcode
*/
- #define TASK_LIST TaskEntry_t Scheduler_TaskList[] =
+ #define TASK_LIST TaskEntry_t Scheduler_TaskList[] =
/** Constant, giving the maximum delay in scheduler ticks which can be stored in a variable of type
* SchedulerDelayCounter_t.
*/
- #define TASK_MAX_DELAY (MAX_DELAYCTR_COUNT - 1)
+ #define TASK_MAX_DELAY (MAX_DELAYCTR_COUNT - 1)
/** Task status mode constant, for passing to Scheduler_SetTaskMode() or Scheduler_SetGroupTaskMode(). */
- #define TASK_RUN true
+ #define TASK_RUN true
/** Task status mode constant, for passing to Scheduler_SetTaskMode() or Scheduler_SetGroupTaskMode(). */
- #define TASK_STOP false
+ #define TASK_STOP false
/* Pseudo-Function Macros: */
#if defined(__DOXYGEN__)
*/
void Scheduler_Init(void);
#else
- #define Scheduler_Start() Scheduler_GoSchedule(TOTAL_TASKS);
+ #define Scheduler_Start() Scheduler_GoSchedule(TOTAL_TASKS);
- #define Scheduler_Init() Scheduler_InitScheduler(TOTAL_TASKS);
+ #define Scheduler_Init() Scheduler_InitScheduler(TOTAL_TASKS);
#endif
/* Type Defines: */
* TaskEntry_t and can be manipulated as desired, although it is preferential that the proper Scheduler
* functions should be used instead of direct manipulation.
*/
- extern TaskEntry_t Scheduler_TaskList[];
+ exter TaskEntry_t Scheduler_TaskList[];
/** Contains the total number of tasks in the task list, irrespective of if the task's status is set to
* TASK_RUN or TASK_STOP.
*
* \note This value should be treated as read-only, and never altered in user-code.
*/
- extern volatile uint8_t Scheduler_TotalTasks;
+ extern volatile uint8_t Scheduler_TotalTasks;
/** Contains the current scheduler tick count, for use with the delay functions. If the delay functions
* are used in the user code, this should be incremented each tick period so that the delays can be
* calculated.
*/
- extern volatile SchedulerDelayCounter_t Scheduler_TickCounter;
+ extern volatile SchedulerDelayCounter_t Scheduler_TickCounter;
/* Inline Functions: */
/** Resets the delay counter value to the current tick count. This should be called to reset the period