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 w 2025? 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 12 kwi 2025, o 08:35


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 6 ] 
    Autor Wiadomość
    PostNapisane: 29 mar 2016, o 20:59 
    Offline
    Użytkownik

    Dołączył(a): 26 lut 2014
    Posty: 227
    Lokalizacja: LDZ
    Pomógł: 22

    Witam.

    Bibliotekę wstawiam na prośbę kolegi maxus. Przykładowy kod nadajnika poniżej:
    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.

    Kod odbiornika:
    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.

    Biblioteka wraz z dokumentacją w załączniku. Aktualnie obsługuje ATmega8, ATmega16, ATmega2560 i ATmega328P. Dokumentacja może być niekompletna lub pozostawiać niejasności (pisałem na szybko), więc w razie pytań piszcie a postaram się odpowiedzieć. Żeby nie było za łatwo to wszystko w języku angielskim ;)
    Trochę bałaganu jest w kodzie, ale poprawiam w wolnym czasie i tylko wieczorami. Mam małą pomocnicę w domu, która uwielbia dopisywać mi dodatkowy kod do programu;)


    PS. No i jak ktoś ma jakieś pomysły co dodać z chęcią wysłucham.

    Pozdrawiam.


    Załączniki:

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



    Ostatnio edytowano 31 mar 2016, o 07:22 przez ryba84, łącznie edytowano 13 razy

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 29 mar 2016, o 23:33 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 28 wrz 2014
    Posty: 1530
    Lokalizacja: Warszawa
    Pomógł: 55

    Cenna rzecz dzięki! Jeszcze 1wire nie odpalałem....

    _________________
    --... ...-- - --- -- . -.-



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 mar 2016, o 06:56 
    Offline
    Użytkownik

    Dołączył(a): 26 lut 2014
    Posty: 227
    Lokalizacja: LDZ
    Pomógł: 22

    To akurat z 1wire ma niewiele wspólnego. Tutaj kodujemy po prostu transmisję kodem manchester i machamy pinem by uzyskać odpowiedni przebieg na wyjściu. Dobrze to działa z tanimi modułami RF. Takimi jak na tej stronie http://www.romanblack.com/RF/cheapRFmodules.htm, jednak ja nie wykorzystuję UART do tego.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 mar 2016, o 15:26 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 27 sty 2015
    Posty: 60
    Pomógł: 0

    Prostota tych przykładów powala :)

    Jeśli masz chwilę to powiedz co pozmieniać żeby działało to na Atmedze328p @11,0592 MHz?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 mar 2016, o 18:13 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 27 sty 2015
    Posty: 60
    Pomógł: 0

    Albo mi się wydaje, albo nazwy rejestrów w atmedze2560 są takie same jak w 328P.
    Więc jak dodam do pliku manchester_lib-mach.h ten kod:
    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.

    to powinno być ok co nie?

    ------------------------ [ Dodano po: 11 minutach ]

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

    Błąd :(
    Plik transmitter.c wyłączyłem z kompilacji, a receiver.c zmieniłem nazwę na main.c



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 30 mar 2016, o 19:19 
    Offline
    Użytkownik

    Dołączył(a): 26 lut 2014
    Posty: 227
    Lokalizacja: LDZ
    Pomógł: 22

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

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

    Co do błędów kompilacji to wywal z kodu w funkcji dataReceived linie z wywołaniem putBuffer (tej funkcji nie ma w przykładzie ona wysyłała odebrane dane przez uart, więc usunąłem ją z przykładu). Sam sobie wymyśl co zrobisz z danymi ;). To co mi się nasuwa to zajrzałeś do dokumentacji? Bo kolejny błąd jest związany z brakiem włączenia odbiornika. Powinieneś to zrobić w preferencjach projektu (w Eclipse: Properties->C/C++ Build->Settings->AVR Compiler->Symbols). Dodaj tam MAN_RXENABLED. W taki sam sposób możesz definiować inne opcje. Więcej w dokumentacji ;)

    PS. Oczywiście możesz zrobić to w pliku manchester_lib.h (#define MAN_RXENABLED), ale nie polecam tego sposobu. Wg. mnie to tak jak byś definiował F_CPU w kodzie ;)

    W Pierwszym poście poprawiłem załącznik. Powinien już chodzić na 328P. Dodatkowo poprawiłem komentarze w przykładach, aby nie myliły.

    PS2. Zapomniałem. Dodaj jeszcze MAN_CHEAPRF jeśli korzystasz z tych tanich modułów, bo inaczej nic nie odbierzesz ;)



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

    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