He conectado 3 LED a ATTINY85 (modo PWM). Cada LED está conectado con NPN3904 y resistencia de 68 ohmios al puerto PB0, PB1 o PB5.
Todo funciona bien, excepto por alguna razón cuando establezco los valores de OCR0A o OCR0B en 0, el valor inferior será BAJO, pero en su lugar continuará emitiendo un señal débil, mientras se configura OCR1B en 0 funciona como se esperaba y PB5 se pone completamente BAJO:
Código:
#define F_CPU 8000000
#include <avr/io.h>
#include <util/delay.h>
void main()
{
DDRB = 1 << DDB4 | 1 << DDB1 | 1 << DDB0;
TCCR0A = 2 << COM0A0 | 2 << COM0B0 | 3 << WGM00;
TCCR0B = 0 << WGM02 | 1 << CS00;
TCCR1 = 0 << PWM1A | 0 << COM1A0 | 1 << CS10;
GTCCR = 1 << PWM1B | 2 << COM1B0;
for (;;)
{
OCR0A = 0x00;
OCR0B = 0x00;
OCR1B = 0x00;
_delay_ms( 1000 );
OCR0A = 0xFF;
OCR0B = 0xFF;
OCR1B = 0xFF;
_delay_ms( 1000 );
}
}
He rotado todos los componentes y he probado con VCC en el rango de 2.7 a 3.5 voltios, pero el resultado es el mismo. El problema parece estar vinculado a los pines PB0 y PB1 específicamente. ¿Alguna pista sobre lo que me estoy perdiendo? Gracias!