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 13 lip 2025, o 09:17


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 1 ] 
    Autor Wiadomość
    PostNapisane: 8 sie 2014, o 02:01 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 27 maja 2013
    Posty: 562
    Lokalizacja: Bydgoszcz
    Pomógł: 23

    W ramach mojego uczenia się na rzeczach bliżej mi nie znanych i tajemniczych chciałbym zaprezentować napisany przeze prosty program komunikujący się przez magistralę I2C z 3-osiowym akcelerometrem ADXL 345 , który
    zakupiłem sobie w formie modułu stąd: http://botland.com.pl/akcelerometry-moduly/1912-adxl345-3-osiowy-akcelerometr-cyfrowy-i2c-spi-modul.html

    Focia sklepowa :) :
    Obrazek

    Żeby ułatwić sobie z nim pracę i zapewnić możliwość współpracy jego z napięciem 5V i co za tym idzie wyświetlaczem LCD zrobiłem konwerter napięć 3,3V/5V zbudowany na układzie MAX3378 wraz z popularnym stabilizatorem napięcia 3,3V LM1117.
    Dodatkowo na module dodałem dwa piny do podłączenia analizatora stanów logicznych, które ułatwiły mi dogadywanie się z czujnikiem.

    Schemat oraz zdjęcia poglądowe konwertera (w załączniku dodaję pliki z Eagla):
    ObrazekObrazekObrazekObrazek


    Do obsługi wyświetlacza LCD i sprzętowej komunikacji I2C wykorzystuję biblioteki Mirka z Blue Booka, wszystko jest wpięte w sposób standardowy do zestawu ATB.
    Za PINY sterujące wyświetlaczem LCD odpowiada PORT A, a do komunikacji z czujnikiem wykorzystuję PINY PC0 (SCL) i PC1 (SDA).

    Kod programu:

    main.c

    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.


    adxl_345.h

    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.


    adxl_345.c

    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.


    Starałem się żeby program był czytelny a opis jego działania zawarłem w komentarzach. Jeśli jednak jest coś nie zrozumiałe oraz ktoś dostrzega błędy w programie/konwerterze napięć, ma uwagi bądź widzi co by można poprawić zmienić czy udoskonalić to oczywiście proszę o sugestie. Należy jeszcze wspomnieć iż owy akcelerometr komunikuje się również przez magistralę SPI oraz ma bardzo ciekawe dwa wyjścia przerwań INT1 i INT2, ja na razie tego nie oprogramowałem ale możliwe że zrobię kolejną wersję programu testowego bądź już takiego co robi coś konkretniejszego i wtedy stosowna implementacja ich obsługi w kodzie się pojawi, póki co w planach mam połączenie go z matrycą diod LED 8x8, która zapalała by odpowiednie diody podczas poruszania, prace nad tym w zasadzie już trwają.

    Dodaję poniżej jeszcze filmik poglądowy działania obecnej wersji w/w programu:



    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



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

    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