Move beepTask and rfDecodeTask to Core 0 to keep Core 1 free for the main loop
This commit is contained in:
@@ -30,10 +30,9 @@ void InterruptHandler_Init(void)
|
|||||||
beepSemaphore = xSemaphoreCreateBinary();
|
beepSemaphore = xSemaphoreCreateBinary();
|
||||||
rfEventQueue = xQueueCreate(RF_QUEUE_SIZE, sizeof(RfEvent_t));
|
rfEventQueue = xQueueCreate(RF_QUEUE_SIZE, sizeof(RfEvent_t));
|
||||||
|
|
||||||
/* beepTask: replaces beep logic that was in timerIsr — high priority so it responds within one tick */
|
/* beepTask and rfDecodeTask do little work per activation — pin to Core 0 to keep Core 1 free for the main loop */
|
||||||
xTaskCreatePinnedToCore(beepTask, "beepTask", 2048, NULL, 5, NULL, 1);
|
xTaskCreatePinnedToCore(beepTask, "beepTask", 2048, NULL, 5, NULL, 0);
|
||||||
/* rfDecodeTask: replaces receiver ISR calls that were in pinLevelChangeIsr */
|
xTaskCreatePinnedToCore(rfDecodeTask, "rfTask", 3072, NULL, 4, NULL, 0);
|
||||||
xTaskCreatePinnedToCore(rfDecodeTask, "rfTask", 3072, NULL, 4, NULL, 1);
|
|
||||||
|
|
||||||
attachInterrupt(digitalPinToInterrupt(DIN_FUNK), pinLevelChangeIsr, CHANGE);
|
attachInterrupt(digitalPinToInterrupt(DIN_FUNK), pinLevelChangeIsr, CHANGE);
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user