freemodbus: add affinity option for modbus stack tasks

This commit is contained in:
aleks
2021-07-28 07:45:13 +02:00
committed by Alex Lisitsyn
parent ba15ac8634
commit 33fe673e85
8 changed files with 47 additions and 13 deletions

View File

@@ -185,12 +185,13 @@ esp_err_t mbc_tcp_slave_create(void** handler)
MB_SLAVE_CHECK((mbs_opts->mbs_notification_queue_handle != NULL),
ESP_ERR_NO_MEM, "mb notify queue creation error.");
// Create Modbus controller task
status = xTaskCreate((void*)&modbus_tcp_slave_task,
status = xTaskCreatePinnedToCore((void*)&modbus_tcp_slave_task,
"modbus_tcp_slave_task",
MB_CONTROLLER_STACK_SIZE,
NULL,
MB_CONTROLLER_PRIORITY,
&mbs_opts->mbs_task_handle);
&mbs_opts->mbs_task_handle,
MB_PORT_TASK_AFFINITY);
if (status != pdPASS) {
vTaskDelete(mbs_opts->mbs_task_handle);
MB_SLAVE_CHECK((status == pdPASS), ESP_ERR_NO_MEM,