FreeRTOS configuration.
Copyright (c) 2012-2018 Microchip Technology Inc. and its subsidiaries.
Functions | |
int | main (void) |
Main function. Execution starts here. More... | |
static void | main_memories_trans_task (void *pvParameters) |
void | main_msc_disable (void) |
Called by MSC interface Callback running when USB Host disable MSC interface. More... | |
bool | main_msc_enable (void) |
Called by MSC interface Callback running when USB Host enable MSC interface. More... | |
void | main_msc_notify_trans (void) |
Called when a data transfer on MSC must be executed Thus, the udi_msc_process_trans() function must be called. More... | |
void | main_resume_action (void) |
Called by UDD when the USB line exit of suspend state. More... | |
void | main_sof_action (void) |
Called when a start of frame is received on USB line. More... | |
void | main_suspend_action (void) |
Enters the application in low power mode Callback called when USB host sets USB line in suspend state. More... | |
void | vApplicationIdleHook (void) |
This function is called by FreeRTOS idle task. More... | |
Variables | |
static volatile bool | main_b_msc_enable = false |
static xSemaphoreHandle | main_trans_semphr = NULL |
Handle to the semaphore protecting memories transfer. More... | |
int main | ( | void | ) |
Main function. Execution starts here.
References Assert, board_init(), cpu_irq_enable(), irq_initialize_vectors, main_memories_trans_task(), memories_initialization(), NULL, sleepmgr_init(), sysclk_init(), tskIDLE_PRIORITY, udc_start(), ui_init(), ui_powerdown(), vSemaphoreCreateBinary, vTaskStartScheduler(), and xTaskCreate.
|
static |
References pdTRUE, udi_msc_process_trans(), UNUSED, and xSemaphoreTake.
Referenced by main().
void main_msc_disable | ( | void | ) |
Called by MSC interface Callback running when USB Host disable MSC interface.
References main_b_msc_enable.
bool main_msc_enable | ( | void | ) |
Called by MSC interface Callback running when USB Host enable MSC interface.
true | if MSC startup is ok |
References main_b_msc_enable.
void main_msc_notify_trans | ( | void | ) |
Called when a data transfer on MSC must be executed Thus, the udi_msc_process_trans() function must be called.
References pdFALSE, and xSemaphoreGiveFromISR.
void main_resume_action | ( | void | ) |
Called by UDD when the USB line exit of suspend state.
Turn on a led to notify active mode Called when the USB line is resumed from the suspend state.
References ui_wakeup().
void main_sof_action | ( | void | ) |
Called when a start of frame is received on USB line.
Manages the leds behaviors Called when a start of frame is received on USB line each 1ms.
References main_b_msc_enable, udd_get_frame_number(), and ui_process().
void main_suspend_action | ( | void | ) |
Enters the application in low power mode Callback called when USB host sets USB line in suspend state.
Turn off all leds Callback running when USB Host set USB line in suspend state.
Called by UDD when a suspend is received Callback running when USB Host set USB line in suspend state.
References ui_powerdown().
void vApplicationIdleHook | ( | void | ) |
This function is called by FreeRTOS idle task.
vApplicationIdleHook() will only be called if configUSE_IDLE_HOOK is set to 1 in FreeRTOSConfig.h. It will be called on each iteration of the idle task. It is essential that code added to this hook function never attempts to block in any way (for example, call xQueueReceive() with a block time specified, or call vTaskDelay()). If the application makes use of the vTaskDelete() API function (as this demo application does) then it is also important that vApplicationIdleHook() is permitted to return to its calling function, because it is the responsibility of the idle task to clean up memory allocated by the kernel to any task that has since been deleted.
References sleepmgr_enter_sleep().
Referenced by portTASK_FUNCTION().
Referenced by main_msc_disable(), main_msc_enable(), and main_sof_action().
|
static |
Handle to the semaphore protecting memories transfer.