Boas notícias! Isso vai ser barato! :-)
Um divisor de resistor simples reduzirá os 12 V aos 5 V que um Arduino pode digerir. A tensão de saída pode ser calculada como
VO UT= R 2R 1 + R 2VEuN
Valores de resistores na faixa de 10 kΩ são uma boa opção. Se o seu R2 é 10 kΩ, então R1 deve ser 14 kΩ. Agora 14 kΩ não é um valor padrão, mas 15 kΩ é. Sua tensão de entrada será de 4,8 V em vez de 5 V, mas o Arduino continuará vendo isso como um nível alto. Você também tem um pouco de espaço para o caso de os 12 V serem um pouco altos demais. Mesmo 18 kΩ ainda fornecerão 4,3 V suficientemente altos, mas você precisará começar a pensar nos 12 V um pouco mais baixos. A tensão ainda será vista como alta? Eu ficaria com os 15 kΩ.
editar
Você menciona um ambiente automotivo e precisa de alguma proteção extra. Os 12 V do carro nunca são exatamente 12 V, mas na maioria das vezes são mais altos, com picos de vários volts acima dos 12 V. nominais (na verdade, nominal é mais parecido com 12,9 V, a 2,15 V por célula.) Você pode colocar um zener de 5 V em diodo em paralelo com R2, e isso deve cortar qualquer voltagem superior ao 5 V. do zener. Mas a voltagem do zener varia com a corrente, e na corrente de entrada baixa que os resistores fornecem, ele cortará em voltagens mais baixas. Uma solução melhor seria ter um diodo Schottky entre a entrada do Arduino e a fonte de 5 V. Então, qualquer tensão de entrada superior a cerca de 5,2 V fará a conduta do diodo Schottky, e a tensão de entrada será limitada a 5,2 V. Você realmente precisa de um diodo Schottky para isso, um diodo PN comum tem 0.
O melhor
acoplador óptico de Michael é uma boa alternativa, embora um pouco mais cara. Você costuma usar um acoplador óptico para isolar a entrada da saída, mas também pode usá-lo para proteger uma entrada como você deseja aqui.
Como funciona: a corrente de entrada ilumina o LED infravermelho interno, que causa uma corrente de saída através do fototransistor. A relação entre a corrente de entrada e saída é chamada CTR , para a taxa de transferência atual. O CNY17 possui uma CTR mínima de 40%, o que significa que você precisa de uma entrada de 10 mA para uma saída de 4 mA. Vamos para a entrada de 10 mA. Então R1 deve ser (12 V - 1,5 V) / 10 mA = 1 kΩ. O resistor de saída terá que causar uma queda de 5 V a 4 mA, então deve ser 5 V / 4 mA = 1250 Ω. É melhor ter um valor um pouco maior, a tensão não cairá mais do que 5 V de qualquer maneira. Um 4,7 kΩ limitará a corrente a cerca de 1 mA.
Vcc é a fonte de 5 V do Arduino, Vout vai para a entrada do Arduino. Observe que a entrada será inversa: será baixa se os 12 V estiverem presentes, alta quando não estiver. Se você não quiser, pode trocar a posição da saída do acoplador óptico e do resistor de pull-up.
editar 2
Como a solução do acoplador óptico não resolve o problema de sobretensão? O divisor do resistor é ratiométrico: a tensão de saída é uma razão fixa da entrada. Se você calculou 5 V a 12 V in, então 24 V in dará 10 V out. Não está bom, daí o diodo de proteção.
No circuito do acoplador óptico, você pode ver que o lado direito, conectado ao pino de entrada do Arduino, não possui voltagem superior a 5 V. Se o acoplador óptico estiver ligado, o transistor consumirá corrente, usei 4 mA no exemplo acima. Um 1,2 kΩ causará uma queda de tensão de 4,8 V, devido à Lei de Ohm (corrente vezes resistência = tensão). Então a tensão de saída será de 5 V (Vcc) - 4,8 V no resistor = 0,2 V, que é um nível baixo. Se a corrente for menor, a queda de tensão também será menor e a tensão de saída aumentará. Uma corrente de 1 mA, por exemplo, causará uma queda de 1,2 V e a saída será de 5 V - 1,2 V = 3,8 V. A corrente mínima é zero. Então você não tem uma tensão através do resistor, e a saída será de 5 V. Esse é o máximo, existe '
E se a tensão de entrada se tornar muito alta? Você acidentalmente conecta uma bateria de 24 V em vez de 12 V. Em seguida, a corrente do LED dobrará, formando 10 mA a 20 mA. A CTR de 40% causará corrente de saída de 8 mA em vez dos 4 mA calculados. 8 mA através do resistor de 1,2 kΩ seria uma queda de 9,6 V. Mas de uma fonte de 5 V seria negativa, e isso é impossível; você não pode ir abaixo de 0 V aqui. Portanto, embora o optocoupler deseje 8 mA, o resistor limitará isso. A corrente máxima através dela é quando os 5 V completos estão do outro lado. A saída será realmente 0 V e a corrente 5 V / 1,2 kΩ = 4,2 mA. Portanto, seja qual for a fonte de alimentação conectada, a corrente de saída não será maior que isso e a tensão permanecerá entre 0 V e 5 V. Nenhuma proteção adicional é necessária.
Se você espera sobretensão, terá que verificar se o LED do acoplador óptico pode lidar com o aumento da corrente, mas os 20 mA não serão um problema para a maioria dos acopladores ópticos (geralmente são classificados com um máximo de 50 mA) e, além disso, é o dobro tensão de entrada, o que provavelmente não acontecerá IRL.