Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 5 sty 2025, o 12:35


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 
Autor Wiadomość
PostNapisane: 13 lip 2015, o 09:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sie 2012
Posty: 159
Pomógł: 1

Witam!

Postawiłęm sobie całkiem fajne zadanie, a mianowicie chcę zbudowac mały odtwarzacz wav przy użyciu przetwornika DAC z STM32. Niestety w internecie znalazłem bardzo okrojone kody i nie mam jak się na nich opierać. Postanowiłem więc, że sam napiszę taki play'erek w oparciu o przykład do generowania sinusoidy za pomoca wyżej wymienionego przetwornika. Kod tego przykładu:

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


oczywiście bardzo ładnie działa, wszystko słychać. Jednak chcę pójść dalej i odtworzyć póki co załóżmy 1s utworu. Tutaj pojawia sięmoje pytanie - jak mam to zrobić ? Próbuję to tak :

odczytuję spory bufor z sd ( na początku pomijam nagłówek ( przesuwam o 44 bajty), bo wiem jakie ma on wartości), a następnie przez DMA przekazuję go do przetwornika, dokładnie tak samo jak przekazywana jest sinusoida w przykładzie. Poniżej kod :

Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Czy coś od razu rzuca się Wam w oczy ? Co moge robić źle ? Dodam, że słychać jakieś króciutkie trzaski, ale gdy przesuwam wskaźnik w głąb pliku staja się takie same niezależnie od odległości od nagłówka. Może są jakieś pliki dźwiękowe które ułatwiłby mi uruchomienie playera ?

pozdrawiam,
Piotrek


EDIT : OK posiedziałem trochę i poszło. Jeśi ktoś byłby zainteresowany kodem proszę pisać, jednka nie ma tu nic skomplikowanego... ;)

pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 13 lip 2015, o 23:11 
Offline
Użytkownik

Dołączył(a): 26 lip 2012
Posty: 291
Lokalizacja: okolice Opola
Pomógł: 20

Powiedz jeszcze co leży w zmiennej BUFF bo powinna tam być długość pliku minus te 44 bajty. Kodu DMA i reszty na razie nie sprawdzam gdyż nigdy nie korzystałem z tych "śmiesznych" bibliotek. Druga sprawa to przy takiej obsłudze twój bufor musi zmieścić w sobie tyle bajtów ile ma zmienna BUFF

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 2 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 3 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO