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



Teraz jest 28 kwi 2024, o 09:26


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
Autor Wiadomość
PostNapisane: 16 mar 2014, o 17:16 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Próbuję walczyć bezskutecznie z programem 15_TEST_Petit_FS. Dodane poprawki do programu ze strony z erratą do książki. Bez innych zmian w programie. Kompilacja przeszła bez błędów.
Do mikroprocesora podłączyłem czytnik micro SD adapter ze sklepu ATNEL:
GND i PWR zwarte zworką, CD ... wisi nie podłączony, CS -> SS (PB4), MOSI -> MOSI (PB5), MISO -> MISO(PB6), SCK -> SCK (PB7), VCC -> +5V , GND -> GND.
Karta sformatowana na FAT32 i utworzony na niej plik test.txt z zawartością test 1234 (bez entera na końcu).

Po wgraniu programu i włożeniu karty do czytnika na LCD wyświetla się:
odczyt: test.txt
test 1234


Po kilku sekundach:
zapis-> test.txt
OK, zresetuj


Po resecie mikrokontrolera wyświetla:
odczyt: test.txt
disk init error


Kilkakrotne resetowanie nic nie zmienia. Na karcie jest przez cały czas nie zmieniona zawartość "test 1234". Proszę was o jakieś sugestie gdzie szukać błędu.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 17:39 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

swibno napisał(a):
Proszę was o jakieś sugestie gdzie szukać błędu


Myślę że warto skontaktować się z producentem czytnika karty na początek ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 17:57 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Uznałem że na forum jest wielu zaawansowanych użytkowników, którzy z takimi problemami już nie raz się spotkali i mi pomogą. Nie widziałem potrzeby od razu nękania wielkiego guru bo uznałem, że to musi być jakaś mała błahostka którą przeoczyłem. Po wyjęciu i włożeniu karty odczytuje ją ponownie ale tylko jeden raz bo później ciągle disk init error i brak zapisu do karty SD.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 18:02 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

Wiem, że pisałeś o tym że poprawki ze strony wziąłeś pod uwagę - ale wolę się upewnić:

http://atnel.pl/PetitFS_aktualizacja.html

z drugiej strony - pokaż schemat albo i zdjęcia jak to połączyłeś może ?

Sam fakt, że już odczytuje dane z karty mówi o tym że coś śmiga - ale nie do końca jak widać ... więc błędów trzeba szukać i w kodzie i w połączeniach stąd moje pytania. Pokaż kod z main.c z naniesionymi poprawkami.

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 18:39 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Mój kod wygląda następująco:

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


Schemat podłączenia karty następujący:
_obrazki/o/662/7437d1b441ffe88817a0796e4976e4c4.jpg



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 18:54 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

Ok jak zasilasz procka ? z czego ? jak z filtracją zasilania ?

przy okazji - wiem że to może długo trwać ale sprawdź tak:

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

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 19:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Niestety po zmianie kodu tylko po resecie długo się inicjalizuje, ale też disk init error.

Układ testuję na zestawie innej firmy. Mam go już bardzo długo i nigdy nie miałem żadnych problemów z zasilaniem. Nie złożyłem jeszcze do końca zakupionego ATB GLS z którego będę równorzędnie korzystać. Problem jest właśnie z zakupem w Gdańsku gniazda kart SD do druku :)

_obrazki/o/662/6015663f6bedf6d94746da923e37ad3d.jpg



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 mar 2014, o 19:48 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

swibno napisał(a):
Układ testuję na zestawie innej firmy. Mam go już bardzo długo i nigdy nie miałem żadnych problemów z zasilaniem


Ależ ja nie sugeruję że masz problemy z zasilaniem tym bardziej jeśli to gotowy układ - spodziewałem się raczej po takim schemacie może np hmm stykówki czy własnej płytki PCB, a jeśli to gotowy zestaw to OK - pewnie że tu nie ma co szukać przyczyny w zasilaniu.

z tym modułem microSD od nas też to musi ruszyć ... hmmm tylko mam prośbę przypomnij mi się jutro w ciągu dnia , jak będę w firmie to sprawdzę u siebie to jeszcze raz ... i coś pomyślimy. W razie czego skontaktuj się ze mną też na Skype ... a gdyby miało na końcu ew okazać się że coś nie tak z modułem to oczywiście i na to szybko poradzimy coś ;) ok ?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 mar 2014, o 14:08 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

Ok, właśnie wgrałem do procka ATmega32 ten dokładnie program z main.c który wkleiłeś wyżej ... zmieniłem tylko pin podświetlenia LCD z PA3 na PA7 bo ja tak mam podłączony

sprawdzam i wszystko śmiga tak jak jest opisane w książce - a zatem ....

1. albo coś jest nie tak z kompilacją lub bibliotekami - może tu coś źle robisz
2. albo coś jest nie tak z samą kartą (twoją kartą)
3. albo coś jest nie tak z modułem microSD (to też musimy założyć)

co teraz zrobić ? jak wyeliminować powyższe punkty aby znaleźć przyczynę, proponuję:

1. wygeneruj i wklej mi tutaj jako załącznik wsad HEX tylko fajnie by było gdybyś wyświetlacz podłączył tak jak ja mam czyli po kolei piny do PORTA: RS, RW, E, D4, D5, D6, D7, Podświetlenie licząc od PA0 - RS i podświetlenie na PA7 - jeśli u mnie będzie to działać to już mamy w razie czego ten punkt wyeliminowany

2. masz może drugą kartę ? jakąś inną żeby na niej sprawdzić ? - też by nam coś to powiedziało

3. jeśli powyższe punkty nie rozwiążą problemu to wtedy umówimy się na wysłanie modułu do nas do sprawdzenia i ew wymiany gdyby było coś nie tak ... Obawiam się tylko tego - że np u mnie będzie to działać .... ale tak czy inaczej coś wymyślimy - tak abyś ty nie był poszkodowany i aby tobie jak najszybciej pomóc w tej kwestii ok ? Tylko wtedy reszta to już w jakimś kontakcie albo mailowym albo telefonicznym albo przez Skype - zapraszam.

------------------------ [ Dodano po: 5 minutach ]

nadmienię tylko - że w tym przykładzie ZAPIS na kartę przy pomocy PetitFS to bardzo wrażliwa i nie do końca dobrze działająca funkcjonalność ponieważ PetitFS został stworzony głównie do ODCZYTU z karty. Więc może jeszcze jedną rzecz sprawdź - przykład z FatFS OK ? Bo jak z tym zadziała to znaczy że z modułem jest wszystko OK ;)

a jeśli chodzi o PetitFS to w Greenbooku masz mnóstwo na 100% działających przykładów w razie czego. A nawet specjalną funkcję do ZAPISU za pomocą PetitFS


Autor postu otrzymał pochwałę

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 17 mar 2014, o 14:48 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Dziękuję za pomoc w rozwiązaniu problemu. Punkt drugi okazał się problemem. Pobiegłem po nową kartę i od razu mam na wyświetlaczu na przemian test ---- oraz test ****. Mogę próbować analizować kod bibliotek które działają. Tak na prawdę nie wiem co z tą kartą może być ponieważ zainstalowana w komputerze widzi plik i nie mam z nią problemów. Nie pomogło nawet pełne formatowanie karty. Może kiedyś rozgryzę tajemniczą zagadkę.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 kwi 2014, o 10:55 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Testując moduł zauważyłem że "disk init error" otrzymuję również, gdy mam podłączony programator USBASP. Czy to normalne że nie można korzystać z karty SD, gdy podłączony jest programator? Programator i karta SD są przecież podłączone razem do MOSI, MISO, SCK. Czy zawsze trzeba odłączać programator aby odczytać dane z SD? Po odłączeniu programatora program petitfs działa.

Próbuję też już wystartować z fatfs niestety po zapytaniu di0 mam cały czas odpowiedz rc=7 z kartą czy bez. Na di1 mam odpowiedź rc=1. Zakładam, że karta sprawna i połączenie też, bo już z petitfs funkcjonuje. Pin WP->PC3, CD->PC2 + poprawki do programu.
//biblioteka fatfs ruszyła. Okazało się że nie było przejścia na pinie WP między gniazdem a płytką drukowaną. Słabo rozgrzałem podczas lutowania :oops:



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 kwi 2014, o 12:38 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

No dokładnie - na czas programowania najczęściej trzeba wyjąć kartę ... no ale sam podłączony programator nie powinien przeszkadzać ... jaki masz programator ?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 kwi 2014, o 13:05 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 17 lis 2012
Posty: 41
Lokalizacja: Gdańsk
Pomógł: 1

Programator ze sklepu ATNEL: Programator ATB-USBASP.
Obrazek
Gdy złącze Kanada programatora jest wpięte w zestaw zawsze mam na wyświetlaczu "disk init error". Zaraz gdy odłączę odczytuje i zapisuje na kartę. Nie jest to jakimś dużym problemem bo przecież można zawsze odłączyć złącze. Zastanawiało mnie jednak czy to jest normalny objaw. :o W bibliotece Fatfs gdy podłaczony porogramator nie mogę dostać odpowiedzi rc=0, tylko cały czas rc=1.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 5 kwi 2014, o 13:19 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27227
Lokalizacja: Szczecin
Pomógł: 1041

na wszelki wypadek czy zaglądasz tutaj:?

http://atnel.pl/uaktualnienia-programow-do-dvd.html

a dokładniej w ten link?

http://atnel.pl/FatFS_aktualizacja.html

http://atnel.pl/PetitFS_aktualizacja.html

chodzi o to aby chociaż programowo podciągnąć linię CS do VCC

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 2 cze 2015, o 11:39 
Offline
Użytkownik

Dołączył(a): 10 sie 2013
Posty: 66
Lokalizacja: Szczecin
Pomógł: 7

Podepnę się do tematu. Również zauważyłem pewne nieprawidłowości w inicjalizowaniu kart SD i do dziś nie wiem(jeszcze) w czym tkwi błąd. Równocześnie testowałem kilkanaście kart we wszystkich możliwych opcjach i pojemnościach (MMC, SDC, SDHC). Testując bibliotekę (własnej produkcji) do niskopoziomowej obsługi SD dwie karty nie chciały wejść w tryb IDLE (po komendzie 0x40...). Zamiast odpowiedzi 0x01 zwracały 2 bajty 0xFC, 0x07. Oczywiście czytniki i aparaty pracują z tymi kartami bez problemu. Wsad testowałem na MEGA48 (5V) z adapterem Atnel, oraz na XMEGAE5 bez adaptera, żeby wykluczyć błąd sprzętowy. Kod testowałem w C, oraz specjalnie na tę okazję pierwszy etap inicjalizacji w wersji ASM. Oczywiście różne algorytmy, ale wynik zawsze ten sam. Opóźnienia oraz powtarzanie komend również nie pomogło. Inny myk. Kupiłem 2 karty HAMA (obie identyczne) jedna śmiga, a druga wykłada się na komendzie CMD8. Dodam jeszcze, że karty podpinałem do procka za pomocą 20cm przewodów do płytek stykowych. Przy karcie kond 100uF, oraz 100nF, wydajność prądowa stab. 3,3V = 300mA.
Najświeższe odkrycie: wykonałem PCB z prockiem i gniazdem karty. Oczywiście te 2 felerne karty już się inicjalizują, natomiast jedna HAMA nadal martwa. Częściowo można założyć, że problem leżał w przewodach stykowych, chociaż z drugiej strony oglądając ostatnio poradniki Mirka o SD też wszystko „wisi” na kablach, a działa. Myślę właśnie, aby wykonać dokładnie to samo co Mirek i sprawdzić posługując się wsadem do „testera kart”.

_________________
Build:succeeded or up-to-date, 0 failed, 0 skipped



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

Strefa czasowa: UTC + 1


Kto przegląda forum

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


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:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO