Skocz do zawartości

Pomocna odpowiedź

Napisano

witam

gratuluje kursu, bardzo dobry dla nowych w temacie.

Probuje zrobic pomiar temperatury ale na DMA. W wyniku dostaje w STMstudio same zera.

W rzeczywistosci mierzone jest napiecie z przetwornika.

Gdzie zrobic przeliczenie na temperature?

Jak powinien wygladac ten projekt przy uzyciu DMA?

pozdrawiam

RTY, za pomocą DMA możesz odczytać dane z przetwornika ADC. Przeliczanie na temperaturę powinieneś wykonywać tam gdzie chcesz zamienić ADC na temperaturę (czyli np. w momencie wyświetlania jej na LCD). DMA raczej nie ma z tym wiele wspólnego 😉

witam

dzięki za odp.

ostawiłem zmienna globalna

uint16_t pom[0];

w sekcji main uruchomiłem pomiar przez DMA

HAL_ADC_Start_DMA(&hadc1,(uint32_t*)pom,1);

W ten sposób zrealizowałem pomiar wielkości wejściowej.

Pozostało przeliczenie wartości wejściowej na temperaturę.

Rozumiem, że mogę to zrobić przy pobieraniu z pamieć i wysyłaniu na zewnątrz np LCD.

I tu pojawia się dylemat

Załóżmy, ze mam pomiary ADC z użyciem DMA oraz wysyłam dane przez UART z DMA do PC.

Po drodze muszę wykonać pewien zbiór obliczeń na danych zmierzonych zanim wyśle je do PC

Gdzie to lepiej zrobić, przy pomiarze, przy wysyłaniu, czy jeszcze inaczej?

Czy muszę zrezygnować z któregoś DMA aby przejść na przerwania?

pozdrawiam

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...