Pular para conteúdo

Aula 15 - Comunicação e Sincronização: Filas e Mutexes no FreeRTOS ⚙️

Engenharia de Sistemas Embarcados e Microcontroladores


Agenda da Sessão 📅

  1. Contexto & Importância na Indústria
  2. Fundamentos da Arquitetura & Registradores
  3. Operação em Tempo Real
  4. Implementação Prática em C/C++
  5. Melhores Práticas de Projeto & Debug

1. Visão Geral do Problema 🎯

  • Sistemas dedicados a tarefas específicas e contínuas.
  • Restrições severas de energia, memória RAM e tempo de resposta.
  • Exigência de confiabilidade extrema (automotivo, médico, industrial).

2. Princípios Conceituais 🧠

  • FreeRTOS Queues: Base operacional da aula.
  • Semáforo Binário: Estruturação do hardware.
  • Mutex: Diretrizes de implementação.

3. Código Exemplo 💻

// Sincronização de Recurso Compartilhado (I2C) com Mutex
SemaphoreHandle_t xI2CMutex;

void vTaskAccessI2C(void *pv) {
    for (;;) {
        if (xSemaphoreTake(xI2CMutex, portMAX_DELAY) == pdTRUE) {
            // Acesso exclusivo ao barramento I2C

4. Conclusões & Atividades 🚀

  • Concluir a leitura teórica da Aula 15.
  • Realizar o Quiz Interativo de 10 Questões.
  • Resolver a lista de exercícios com gabarito sanfonado.
  • Executar o Desafio de Projeto no Wokwi / Placa física.