出力比較モードで高速 pwm を使用して、PB4 と PB5 から同じアナログ pwm 出力電圧を取得するためのコードがあります。しかし、それらからの電圧は異なります。この理由は何でしょうか?また、どちらのピンからの電圧も 1.23 V に近くありません。これは、出力電圧であるべきです。
これがコードです。
#include <`avr/io.h`>
#include <`avr/interrupt.h`>
ISR(TIMER0_COMP_vect)
{
cli();
PORTB &= ~(1<<PB5);
sei();
}
ISR(TIMER0_OVF_vect)
{
cli();
PORTB |= (1<<PB5);
sei();
}
void init(void)
{
TCCR0 |= (0<<FOC0)|(1<<WGM01)|(1<<WGM00)|(1<<COM01)|(1<<COM00)|(1<<CS02)|(1<<CS01)|(1<<CS00);
OCR0 = 63;
TIMSK |= (1<<OCIE0)|(1<<TOIE0);
}
int main(void)
{
DDRB = 0xFF;
PORTB = 0xFF;
init();
sei();
while(1);
}