Estoy trabajando con el dev de Teensy ++ 2.0. tablero. Utiliza el microcontrolador AVR 16 MHz AT90USB1286 de 8 bits. Estoy usando el microcontrolador para conducir un pequeño relé de estado sólido.
Estafuesolounasimulaciónbásicaqueejecuté.EnrealidadestoyusandounreléTLP222AenlugardelMOC205.El5Vdelmicrocontrolador,atravésdelaresistenciade390ohmios(factorizandoelvoltajedirectodeldiodo)medará~12mAdecorrientedirecta.Heprobadoestecircuitoconunafuentedealimentacióndebancocomomi"microcontrolador" para suministrar 5V, y funcionó muy bien.
En mi tablero Teensy ++, puedo medir 5V en el pin sin carga. Pero tan pronto como lo conecto en el circuito, mi salida de voltaje es de solo 1V.
void initialize (void) {
DDRB=0b11111111;
}
int main(void)
{
// set for 16 MHz clock, and make sure the LED is off
CPU_PRESCALE(0);
LED_CONFIG;
LED_OFF;
usb_init();
while(1) {
PORTB = 0b11111111;
LED_ON;
_delay_ms(3000);
PORTB = 0b00000000;
LED_OFF;
_delay_ms(3000);
}
}
Lo anterior es un poco de mi código. La pieza principal es que configuro DDRB en salidas y luego, en mi bucle while, activo y desactivo la salida.
Confío en que no haya problemas con la resistencia o el relé, ya que funcionan correctamente cuando utilizo una fuente de alimentación de banco en lugar del microcontrolador. He probado múltiples pines / puertos desde la placa.
¡Gracias por la ayuda! ¡Es muy apreciado!