Salir de un voltaje dado de un PIC18F4550

-2

¿Cómo puedo obtener una tensión constante en el puerto A (o en cualquier otro puerto) de un chip PIC18F4550? No quiero usar PWM.

void main() {
    adcon1 = 0x00;
    trisa = 0x00;
    for(;;) {
        //how to put 2.5v at porta.b0 (or any other voltage on any other port)?
    }
}
    
pregunta Carpsen90

2 respuestas

6
¿Cómo puedo obtener una tensión constante en el puerto A de un chip PIC18F4550? No quiero usar PWM.

Dado que el PIC 18F4550 no tiene un D / A incorporado, solo puede emitir voltajes digitales directamente. Estos solo pueden ser Vss o Vdd.

"No quiero" no es una razón de ingeniería válida, por lo que la PWM filtrada de paso bajo es la siguiente opción obvia si necesita más de dos niveles. PWM tiene la ventaja de ser altamente lineal y monotónico, y se puede configurar para diferentes resoluciones. El único inconveniente real es que la resolución se intercambia con velocidad. Cuanta más resolución desee, más lento tendrá que ir. Sin embargo, si el PWM incorporado puede lograr una combinación de velocidad y resolución que funcione para su aplicación, entonces ese es el camino a seguir.

De lo contrario, debe agregar D / As externo. Hay muchos disponibles, con interfaces digitales que incluyen paralelo, SPI e IIC. Mircochip, entre muchos otros, hace que D / As sea adecuado para conectarse a microcontroladores.

    
respondido por el Olin Lathrop
1

Olin tiene razón, pero si realmente significa constante , es decir, solo necesita 2.5V y nunca requerirá ningún otro voltaje, puedes usar una división de voltaje simple, y puedes requerir un seguidor de voltaje como amortiguador dependiendo de lo que estés tratando de manejar.

Otro enfoque, ahora que lo pienso, sería un circuito de condensador conmutado, en el que se puede cambiar una frecuencia de reloj para alterar la resistencia efectiva de un circuito de tapa conmutada. Necesitarías filtrar las frecuencias de tu reloj. Sin embargo, este enfoque es mucho más problemático que el PWM, hasta el punto de que no podía comenzar a entender por qué querría hacer esto.

    
respondido por el Scott Seidman

Lea otras preguntas en las etiquetas