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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 16 lip 2025, o 22:44


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 
    Autor Wiadomość
    PostNapisane: 26 mar 2013, o 23:23 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    Witam.

    Zabrałem się za obsługę kart SD przy pomocy PetitFs. Tym tematem jeszcze się nie zajmowałem dlatego postanowiłem uruchomić przykład z płyty DVD na zestawie ATB 1.04 z procesorem Atmega32.
    Program działa dobrze do momentu zresetowania procesora. Po resecie na wyświetlaczu wyświetla się "disk init error". Po wyciągnięciu i powtórnym włożeniu karty albo kilkukrotnym resecie jest to samo czyli odczyt, zapis a po resecie ten sam błąd.
    Pomyślałem sobie, że skoro jednorazowa inicjalizacja karty nie daje rezultatu to może by tak ją inicjalizować do skutku. Więc inicjalizację karty umieściłem w petli do...while
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    i ku mojemu zdziwieniu program zaczął działać poprawnie.
    Czy taki objaw może zależeć od egzemplarza karty?
    Na razie nie mam innej karty żeby to sprawdzić. Aktualnie używam takiej: SDHC 4GB class4.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 26 mar 2013, o 23:34 
    Offline
    Moderator
    Avatar użytkownika

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

    To jest tylko PetitFS - niestety operacje zapisu potraktowane zostały po macoszemu ... ale i słusznie poniekąd bo dzięki temu udało się DRASTYCZNIE odchudzić bibliotekę FatFS przecież ....

    więc po operacjach zapisu bywa właśnie nieciekawie i tak właśnie jest - często pomaga kilkakrotna inicjalizacja więc się nie martw. A w drugiej książce

    http://atnel.pl/jezyk-c-pasja-programowania.html

    pokazuję jak podejść do PetitFS'a żeby było z tym lepiej i dlatego też wprowadziłem programowe sterowanie zasilaniem karty w celu jej PEŁNEGO resetu. Poza tym stworzyłem i opisałem pewną funkcję do zapisu na kartę - wprawdzie nadal obarczoną pewnymi mankamentami i wadami ale da się nawet na takim Petitku zrobić prosty Datalogerek jeśli nie potrzebujemy zbyt często zapisywać danych na karcie i działa to całkiem fajnie wtedy

    a na ATB 1.04 elektronika przewiduje korzystanie z tego sterowania zasilaniem (więc fajnie te ćwiczenia można przeprowadzić)

    sam efekt pracy takiego datalogerka wygląda tak:

    http://www.mirekk36.blogspot.com/2012/0 ... ch-do.html

    _________________
    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: 26 mar 2013, o 23:39 
    Offline
    Moderator
    Avatar użytkownika

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

    Antystatyczny napisał(a):
    Jacek, jeśli możesz... opisuj tutaj wszelkie problemy z PetitFS, bo mam potworne problemy z uruchomieniem tego softu zarówno na ATB jak i na innych modułach i róznych źródłach zasilania. Podmiany kart też nic nie dają. Twoje doświadczenia być może i mi pomogą


    Anty - najbardziej mnie martwi że z samym odczytem masz kłopoty na PetitFS bo to powinno ślicznie śmigać ... ale wiesz że czekam na ciebie na Skype i jestem do usług ;) w tym zakresie

    _________________
    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: 27 mar 2013, o 10:27 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lis 2011
    Posty: 534
    Lokalizacja: Mierzyn
    Pomógł: 9

    Mi dziala inicjalizacja odczyt , problem z zapisem ale to Mirek w greenbooku wyjasnil co trzeba robic :) Testowalem dla 5 roznych kart.

    _________________
    pozdrawiam
    Jachu



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 mar 2013, o 19:01 

    Pomógł: 0

    Sam ostatnio z tym walczyłem. Zadziałało na glsie podlaczenia dokladnie wg książki. Ale gryzie sie coś jak jednocześnie uruchomilem LCD po i2c, jutro może podepne analizator pod szyny i zobacze w ktorym momencie sie krzaczy



    Góra
      
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 mar 2013, o 22:18 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    Widzę, że nie tylko ja mam problemy z zapisem. Generalnie odczyt działa mi dobrze. Nic się nie wiesza.
    W sumie to PetitFs będę używał raczej do odczytu bo w planach mam zamiar zrobić malutki wav playerek, którego chcę zamontować do zabawki mojego synka zamiast oryginalnego "grajka", który gada po angielsku i do tego bardzo niewyraźnie. Po głowie chodzi mi również jakiś mały serwer na avr-ku ze stroną www zapisaną na karcie SD zamiast we flashu.

    Ale jeśli PetitFs zapewnia również zapis to szkoda aby to nie działało i nie korzystać z tego. Będę musiał dokładnie przeczytać rozdział o Datalogerze.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 mar 2013, o 23:42 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lis 2011
    Posty: 534
    Lokalizacja: Mierzyn
    Pomógł: 9

    jacekk232 napisał(a):
    Widzę, że nie tylko ja mam problemy z zapisem. Generalnie odczyt działa mi dobrze. Nic się nie wiesza.
    W sumie to PetitFs będę używał raczej do odczytu bo w planach mam zamiar zrobić malutki wav playerek, którego chcę zamontować do zabawki mojego synka zamiast oryginalnego "grajka", który gada po angielsku i do tego bardzo niewyraźnie. Po głowie chodzi mi również jakiś mały serwer na avr-ku ze stroną www zapisaną na karcie SD zamiast we flashu.

    Ale jeśli PetitFs zapewnia również zapis to szkoda aby to nie działało i nie korzystać z tego. Będę musiał dokładnie przeczytać rozdział o Datalogerze.


    masz zielona ksiazke ? Z tego co pamietam trzeba wykonywac reset przed kazdym zapisem ale musze slokanc a knige mam w pracy .

    _________________
    pozdrawiam
    Jachu



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 1 kwi 2013, o 22:20 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    Mam pytanie odnośnie funkcji pf_readdir. Napisałem programik, który odczytuje zawartość folderu "sample" i odczytane pliki wyświetla na LCD.
    Składnia: [ Pobierz ] [ Ukryj ] [ Zaznacz wszystko ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    W folderze są 3 pliki. Funkcja pf_readdir ładnie odczytuje nazwy plików. Po odczytaniu nazwy ostatniego pliku kolejny odczyt zawartości folderu zwraca pustą nazwę pliku. Z tego co wyczytałem to następne wywołanie funkcji pf_readdir powinno odczytać nazwę pierwszego pliku w folderze. A u mnie tak nie jest. Pętla while(1) się kręci bo dioda LED miga ale funkcja pf_readdir nic nie odczytuje. Dioda przy karcie SD tez się nie świeci.
    Ale jeśli po odczytaniu pustej nazwy pliku opuszczę pętlę while i ponownie otworze folder "sample" funkcją pf_opendir to kolejny odczyt zawartości folderu zwraca już poprawnie nazwę pierwszego pliku w folderze.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Czy to działanie funkcji pf_readdir jest poprawne czy może ja się czepiam?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 2 kwi 2013, o 00:08 
    Offline
    Moderator
    Avatar użytkownika

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

    Wydaje mi sie ze powinno dzialac tak jak piszesz, mi tak chyba dziala ale nie mam jak teraz spr. Pisze z fona. A ty sprobuj to samo ale z folderu glownego karty 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: 2 kwi 2013, o 14:59 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 29 sty 2012
    Posty: 777
    Lokalizacja: Karpicko k. Wolsztyna
    Pomógł: 197

    Pliki z folderu głównego odczytuje tak samo.
    Ogólnie to nie jest jakiś poważny problem. Bo po każdym odczycie mogę sprawdzać czy dostałem pustą nazwę. A jeśli tak to wystarczy ponownie otworzyć folder.

    Przeglądając kod Wav Playera zauważyłem fragment, który powinien tak samo działać
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    czyli jeśli funkcja odczyta pustą nazwę to następuje jej przerwanie i program wraca do pętli wyżej gdzie następuje ponowne otwarcie folderu głównego.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 2 kwi 2013, o 17:01 
    Offline
    Moderator
    Avatar użytkownika

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

    o widzisz pan ;) faktycznie - jednak tak też robi sam autor PetitFS'a więc chyba nawet tak trzeba - bo to jest konstrukcja od niego zapożyczona

    _________________
    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  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 11 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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