RANGEL SOARES SILVA
14/04/2023 09:59:27
Bom dia Professor
Para uma aplicação de um carrinho usando arduino, ponte H, dois motores, sensor ultrassônico e modulo com sensor infra red eu gostaria de criar uma task na intenção de ter um processamento rápido das informações, pois o projeto será usado em uma competição de robô da faculdade. Minha duvida é, eu terei uma velocidade maior de processamento usando apenas uma task e não a função void loop ou devo criar mais tasks, pois em termos de execução o void loop e uma task possuem a mesma velocidade?
FERNANDO SIMPLICIO DE SOUSA
14/04/2023 14:39:33
Olá. A função loop() do arduino é chamada a partir de uma task. Ao utilizar o ESP32 com o SDK-IDF ou Arduino CORE você já optou em usar um RTOS. Portanto, todos os códigos que você desenvolver já fazem o uso de uma task. A questão mais importante é qual a prioridade que você deseja atribuir em cada uma das tasks do seu Robô... isso depende de sua aplicação.
RANGEL SOARES SILVA
14/04/2023 14:50:14
Entendi, então eu posso criar uma task para ser dedicada apenas para leitura dos sensores (prioridade 1) e outra para chamara as funções de avança e recua(prioridade 2), pois se eu criar apenas uma task para fazer toas essas funções será semelhante a execução da função void loop, correto?