Ficha 02 · Saídas, comunicação, interrupções e interface de utilizador
Exercício 1 · Duty cycle de um PWM
Um LED deve brilhar a aproximadamente 40% da intensidade máxima, controlado por analogWrite() numa escala de 0 a 255. Calcula o valor a usar e escreve a instrução.
Exercício 2 · Circuito de um relé
Desenha (em texto) o circuito entre um pino digital do microcontrolador e a bobina de um relé, incluindo os dois componentes de proteção/interface necessários, e explica a função de cada um.
Exercício 3 · Escolher entre UART, SPI e I2C
Para cada situação, indica o protocolo de comunicação mais adequado e justifica: (a) ligar 10 sensores de temperatura I2C ao mesmo barramento, com poucos pinos livres; (b) enviar mensagens de diagnóstico de um microcontrolador para o computador durante o desenvolvimento; (c) ligar um cartão SD que exige velocidade elevada de leitura/escrita.
Exercício 4 · Trama e configuração da UART
Dois dispositivos comunicam por UART, mas o monitor série mostra apenas caracteres ilegíveis ("lixo"). O que está provavelmente errado, e como se resolve? Explica também porque é que TX de um lado liga a RX do outro e não TX a TX.
Exercício 5 · Interrupção externa vs polling
Um sistema tem um botão de paragem de emergência, um sensor de luminosidade lido a cada 5 segundos, e um timer que pisca um LED de estado a cada segundo. Para cada um, indica se deve ser tratado por interrupção ou por polling no loop(), e justifica.
Exercício 6 · Escrever uma ISR correta
O código seguinte tenta tratar um botão de emergência por interrupção, mas tem dois erros graves. Identifica-os e corrige.
int emergencia = 0;
void rotinaISR() {
digitalWrite(SIRENE, HIGH);
delay(2000);
emergencia = 1;
}
Exercício 7 · Histerese num sistema de rega
Um sistema deve ligar a rega quando a humidade do solo desce abaixo de 30% e desligá-la só quando sobe acima de 45%, para evitar ligar/desligar a bomba repetidamente perto de um único valor. Escreve a lógica em C.
Exercício 8 · Interface de utilizador: Bluetooth ou Wi-Fi
Um sistema de monitorização de estufa deve enviar alertas para o telemóvel do agricultor mesmo quando ele está longe do terreno, e apresentar um pequeno painel (dashboard) acessível de qualquer lugar. Indica se Bluetooth ou Wi-Fi é a escolha certa, e propõe uma interface local complementar para quem está fisicamente junto ao sistema.