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



Teraz jest 5 gru 2024, o 04:02


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
Autor Wiadomość
PostNapisane: 22 wrz 2014, o 12:37 
Offline
Nowy

Dołączył(a): 15 sty 2014
Posty: 11
Pomógł: 0

Witam,

Buduję rejestrator ADC z zapisem/odczytem na kartę SD.Układ oparty jest na procesorze Atmega 1284P. Taktowany jest zewnętrznym kwarcem 16MHz. Cały układ pracuje na napięciu 5V poza kartą SD (zasilanie 3.3V + 74LCV125D). Od strony elektronicznej-hardware'owej wszystko pracuje prawidłowo, problemem jest oprogramowanie.

Urządzenie składa się z wyświetlacza, potencjometrów (ADC), przycisków zrobionych na drabince rezystorów oraz podświetlania przycisków za pomocą diód led.
Wyświetlacz 4x40 i podświetlanie przycisków mam zrobione na 3 rejestrach przesuwnych. Dane wysyłam za pomocą sprzętowego SPI.

Na sprzętowym SPI mam również podłączoną kartę SD, na którą chciałbym zapisywać dane.
Na karcie SD chciałbym rejestrować sygnał z 5 kanałów ADC w krótkich odstępach czasowych( np. co 1ms – zależy mi na dokładności) i zapisywać je na karcie SD w formacie .csv. Później chciałbym te dane odtwarzać i sterować wypełnieniem wyjść PWM z taką samą prędkością jak zapis nie zakłócając tym samym pracy wyświetlacza, czy też podświetlania klawiszy.

Główny problem najprawdopodobniej polega na traceniu się wyników pomiędzy przełączaniem się na kolejny bufor. Kolejnym problemem może być choć nie musi sposób wysyłania danych przez SPI. Na jednym sprzętowym SPI jest Karta SD + bufor 74LCV125D oraz 3 rejestry przesuwne 74HC595, do których podłączone są diody oraz wyświetlacz 4x40. Zatrzask dla rejestrów przesuwnych jest na pinie PA7 natomiast CS dla karty jest na pinie PB4.

W temacie topic7793.html#p87881 starałem uzyskać pomoc niestety od dłuższego czasu nikt nie odpowiada.

W moim miasteczku nie ma raczej osoby, która interesowałaby się programowaniem mikrokontrolerów w C. Stąd moja ogromna prośba o zdalną pomoc.

Z góry dziękuję za odpowiedzi i pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 wrz 2014, o 13:01 
Offline
Użytkownik

Dołączył(a): 24 sty 2012
Posty: 1469
Pomógł: 56

A czy próbowałeś zrobić sam zapis na kartę?
Co prawda piszesz, że z częścią sprzętową jest wszystko OK, ale...
Chodzi mi nie o same testy zapisu na kartę, ale o zapis tylko i wyłącznie na kartę
w takim reżimie jak oczekujesz tego po gotowej aplikacji? Czyli 5 ADC co 1ms?
Bez klawiszy, podświetlenia i wyświetlacza.
W tamtym temacie przedstawiłeś kod liczący ponad 1000 linii i trudno to analizować :-(

_________________
Jestem początkujący i moje porady mogą być błędne



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 22 wrz 2014, o 14:17 
Offline
Nowy

Dołączył(a): 15 sty 2014
Posty: 11
Pomógł: 0

Niestety nie wiem jak mam zrobić taki test zapisu na kartę...Chodzi Ci o sprawdzenie prędkości zapisu w Kb/s za pomocą programu wgranego na atmege czy na PC za pomocą jakiegoś oprogramowania służącego do sprawdzania prędkości zapisu??
Widziałem, że na stronie elm-chana były robione takie testy...

Odnośnie programu, który zawarłem w temacie wcześniejszym to chodziło mi o sprawdzenie tylko paru funkcji odnośnie zapisu.

Czy mam poprawną konfigurację ADC?
Czy funkcje "adcinttostr_buf..." zapełniania poszczególnych buforów jest poprawna? Czy konwersja z int na string ma odbywać się tak często?
Czy funkcja "zapis" służąca do przełączania pomiędzy kolejno zapychającymi się buforami jest poprawnie napisana?
Czy funkcja "FatFS_Write" wywoływana jest w odpowiednim miejscu?
Czy funkcja switch do przełączenia się kanałów ADC w przerywaniu od ADC jest poprawna oraz czy warunek (while(ADCSRA & (1<<ADSC));) o zakończonej konwersji Analog Cyfra jest poprawny?
Czy konfiguracja timerów i innych peryferiów jest poprawna?

Między innymi na te pytania chciałem otrzymać odpowiedź....
A wkleiłem cały program żeby nie wklejać osobno poszczególnych funkcji.

Pozdrawiam



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: 3 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 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