Não É Mais Regra Universal
Microprocessadores antigos (8080, 6800, Z80) favoreciam interrupções active-low; MCUs modernos (ARM Cortex-M, RISC-V, PIC, AVR) suportam ambas polaridades, frequentemente configuráveis por software.
Razões Históricas para Active-Low
- Características da lógica TTL: Saídas TTL drenam corrente fortemente (low) mas fornecem fracamente (high). Barramento de interrupção wired-OR com resistor pull-up funciona naturalmente com active-low, drivers open-collector.
- Pull-up simples: Um resistor mantém linha alta (inativa); qualquer dispositivo puxa low para solicitar serviço.
- Debounce de chave: Chaves mecânicas para terra dão bordas active-low limpas com pull-up.
- Imunidade a ruído: Estado low de baixa impedância resiste melhor a acoplamento capacitivo que high de alta impedância.
Por Que Active-High É Comum Agora
- Simetria CMOS: Drive igual high/low; pull-up não necessário para active-high.
- Flexibilidade: Mais fácil fazer OR/AND de fontes mistas em controladores de interrupção programáveis (NVIC, GIC, PLIC).
- Sensível a nível vs. borda: Controladores modernos desacoplam polaridade do tipo de trigger.
Conselho Prático
- Verifique o datasheet específico de cada periférico/CPU.
- Configure polaridade da interrupção nos registradores do controlador de vetor/interrupção.
- Nível da placa: case driver (open-drain vs. push-pull) com polaridade escolhida.
Active-low é convenção legada, não necessidade técnica hoje.