Witam. Mam taki oto kod:
Wydaje mi się, że wszystko powinno być ok ale w ogóle mi to nie działa
. Pod Vref mam podłączone 5V, pod PA0 podłączony jest potencjometr i chodzi o to aby podczas kręcenia potencjometrem kręciło się też serwo. PWM'ka jest ustawiona poprawnie.
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#include <stdlib.h>
#define SetBit(x,y) x |= (1<<y)
#define ClrBit(x,y) x &= ~(1<<y)
#define NegBit(x,y) x ^= (1<<y)
int main(void)
{
DDRD=0xFF;
PORTD=0x00;
DDRA=0x00;
PORTA=0x00;
TCCR1A=0b10001000;
TCCR1B=0b00010010;
ICR1=20000;
OCR1A=1500;
ADMUX = 0b01000000;
ADCSRA = 0b11000000; // Zacznij pierwsza konwersję
while(bit_is_set(ADCSRA,ADSC)) {}
int a=1000;
while(1)
{
SetBit(ADCSRA,6); // Konwersja
while(bit_is_set(ADCSRA,ADSC)) {} // Czekaj na zakończenie konwersji
a=2000 - ADC;
OCR1A=a;
}
}
Wydaje mi się, że wszystko powinno być ok ale w ogóle mi to nie działa