Para convertir niveles de señal de 20V a 3.3V no necesita LM317. El esquema más simple (y muy bueno) para tales cosas es el siguiente:
simular este circuito : esquema creado usando CircuitLab
Este esquema tiene una ventaja adicional que protege la entrada de 3.3 V de influencias externas, por ejemplo, picos de voltaje positivos o negativos altos, descargas estáticas, etc.
Dependiendo de la potencia nominal de R1, el esquema puede soportar señales de entrada de varios cientos de voltios por corto tiempo y varios miles de voltios de descarga estática sin dañar la lógica de baja tensión.
Funciona de la siguiente manera:
-
Si el voltaje de entrada es superior a 3.3V + 0.6V = aproximadamente 4V, el diodo D1 se abrirá y sujetará el voltaje en el punto 1 a aproximadamente 4V
-
Si el voltaje de entrada es inferior a -0.6V, el diodo D2 se abrirá y el
La tensión en el punto 1 se sujetará a aproximadamente -0.6V. Si la señal nunca baja de cero, D2 siempre se cierra y puede eliminarse de manera segura. (Pero entonces no habrá protección para las señales de entrada negativas)
-
De esta manera, el voltaje de entrada de 0..20V se reducirá a -0.6 .. + 3.9V que es seguro para todos los dispositivos de 3.3V CMOS. Siempre que esta tensión sea un poco más alta que la tensión de alimentación lógica de CMOS, una pequeña corriente fluirá a través de los diodos de protección de entrada de los circuitos integrados de CMOS; está determinada por la diferencia entre la tensión directa de los diodos de silicio (D1 y D2 ) y los diodos de protección schottky utilizados por la tecnología CMOS y la resistencia de R2. Esta corriente será de aproximadamente unos pocos mA. Si esto es demasiado grande, D1 y D2 se pueden cambiar a diodos schottky de baja corriente y, de esta manera, la corriente de entrada se aproxima a cero.
Puede leer más sobre los esquemas de protección de CMOS en la siguiente nota de la aplicación Fairchild .
Información adicional: Mientras algunas personas piensan que el esquema anterior puede provocar el fallo GPIO IO de la Raspberry Pi, hice un esfuerzo y encontré Especificaciones eléctricas de GPIO . De acuerdo con este documento, los diodos de protección de entrada no son schottky, sino de silicona. De esta manera, el esquema anterior funcionará incluso con una corriente de entrada más pequeña de lo esperado.
Además, aumenté el valor de R2 a 10k para aumentar la confiabilidad del esquema (en el precio de la velocidad máxima).
De todos modos, esta es la última edición realizada por mí mismo en esta respuesta.