Witam.
Mam następujący problem. Próbuje stworzyć dalmierz ultradźwiękowy.
Sygnał wychodzący na przetwornik ultradźwiękowy podaje na przemian z pinu PB0 na + oraz PB1 na minus.
Po przepuszczeniu tego przez filtr ze wzmocnieniem
Udało mi się osiągnąć taki oto przebieg:

Pierwszy sygnał przefiltrowany i wzmocniony
Drugi sygnał to napięcie już za komparatorem który podaje bezpośrednio na wejście przetwornika ADC.
Teraz chciałbym zmierzyć czas odbicia echa i na jego podstawie określić odległość od przeszkody.
Problem polega na tym że gdy ruszę już program, sygnał strasznie pływa co powoduje powstawanie pików które powodują że ADC wariuje i nie potrafi wyświetlić żadnego wyniku.
I tu pytanie, czy problem polega na złym oprogramowaniu czy złym podłączeniu.
Atmega odfiltrowana w ten sposób jak na schemacie:

Filtr wygląda w ten sposób, z tym że na końcu dodałem jeszcze detektor szczytowy który dałem na komparator lm311.

język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.