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 17 maja 2025, o 04:21


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 29 ] 
    Autor Wiadomość
    PostNapisane: 27 lis 2019, o 19:13 
    Offline
    Użytkownik

    Dołączył(a): 05 gru 2017
    Posty: 430
    Lokalizacja: Puck
    Pomógł: 7

    Witam

    Mam mały problem po przeniesieniu biblioteki LCD z ćwiczenia LCD_I2C_PCF8574 zawartego w BB
    do mojego projektu, pojawił się błąd w tej bibliotece, wygląda on następująco

    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.


    Nie wiem co z tym zrobić
    tor I2C jest ok sprawdzony na programie LCD_I2C_PCF8574 zawartego w BB

    Na pewno nie ma błędu w bibliotece ale coś nie chce razem działać z moim kodem i nie wiem co
    Proszę o pomoc



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 lis 2019, o 19:16 
    Offline
    Użytkownik

    Dołączył(a): 05 sty 2015
    Posty: 393
    Lokalizacja: Mielec
    Pomógł: 14

    Wrzuć swój kod C, bo z fusów od kawy nic nie wychodzi hehehe, libsow Mirkowych oczywiście nie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 lis 2019, o 20:27 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 05 lut 2015
    Posty: 24
    Pomógł: 1

    Chyba w dyrektywie #include masz jakieś błędy.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 lis 2019, o 20:47 
    Offline
    Użytkownik

    Dołączył(a): 29 paź 2017
    Posty: 232
    Pomógł: 26

    Dla porządku stworzyłem nowy projekt i skopiowałem katalogi z Mirkowego projektu. Skompilowałem - działa. Może za dużo od razu chciałeś zrobić.

    _________________
    Jestem na GG 31324
    Nowy soft, nowa nadzieja.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 lis 2019, o 20:57 
    Offline
    Użytkownik

    Dołączył(a): 05 gru 2017
    Posty: 430
    Lokalizacja: Puck
    Pomógł: 7

    includy są chyba ok

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


    inkludy z kodu z BB z ćwiczenia LCD_I2C_PCF8574

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


    includy z biblioteki LCD

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



    warningi z miejsc w bibliotece

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


    warning 2

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


    Jak przełączę bibliotekę na zwykłą pracę z LCD to jest ok
    Ale jak włączę I2C to wtedy wyskakują te błędy



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 27 lis 2019, o 22:01 
    Offline
    Użytkownik

    Dołączył(a): 22 kwi 2017
    Posty: 99
    Lokalizacja: Piła
    Pomógł: 4

    USE_I2C masz na 1?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2019, o 07:54 
    Offline
    Użytkownik

    Dołączył(a): 05 gru 2017
    Posty: 430
    Lokalizacja: Puck
    Pomógł: 7

    Tak
    USE_I2C=1
    Ma pracować w trybie I2C



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2019, o 10:07 
    Offline
    Użytkownik

    Dołączył(a): 29 paź 2017
    Posty: 232
    Pomógł: 26

    Czy jesteś pewny że wstawiłeś do pliku odpowiednią wersję biblioteki lcd44780.h
    W liniach od 160 jest:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Może to po prostu stara biblioteka bez tych makr.
    Zobacz na projekt z BB 04_LCD. Tam tego nie ma.

    _________________
    Jestem na GG 31324
    Nowy soft, nowa nadzieja.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2019, o 13:39 
    Offline
    Użytkownik

    Dołączył(a): 05 gru 2017
    Posty: 430
    Lokalizacja: Puck
    Pomógł: 7

    Masz rację w ćwiczeniu 04_LCD. z BB nie ma obsługi magistrali I2C
    i tego wpisu tam nie znajdziesz

    JarekB napisał(a):
    //Makra uproszczające obsługę magistralii I2C
    #define SEND_I2C // tu rozwiniecie makra
    #define RECEIVE_I2C // tu rozwiniecie makra


    Ale budowałem sobie układ dla wyświetlacza LCD z scalakiem PCF8574A
    pracujący na magistrali I2C, bo potrzebowałem zwolnić troszkę portów
    Testowałem go z kodem LCD_I2C_PCF8574 z BB i działał super
    dlatego wziąłem bibliotekę właśni z tego miejsca bo była sprawdzona i działała
    tylko z moim kodem coś się nie lubi ;)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2019, o 15:34 
    Offline
    Użytkownik

    Dołączył(a): 05 gru 2017
    Posty: 430
    Lokalizacja: Puck
    Pomógł: 7

    Co powoduje tego typu zgłoszenie błędu ?

    error: ld returned 1 exit status



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2019, o 15:52 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Ale to masz tylko podsumowanie. Błąd jest wcześniej opisany



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 lis 2019, o 17:54 
    Offline
    Użytkownik

    Dołączył(a): 05 gru 2017
    Posty: 430
    Lokalizacja: Puck
    Pomógł: 7

    Problem rozwiązany

    Zrobiłem kopię całego swojego programu i zacząłem wywalać całe biblioteki
    zaczynając od zegara ,menu , i ustawień portów , błąd pojawiał się nadal
    więc podmieniłem bibliotekę I2C_TWI z kodu LCD_I2C_PCF8574 i problem zniknął
    Porównałem obie biblioteki I2C_TWI którą używałem w swoim projekcie z tą z BB
    LCD_I2C_PCF8574 i okazało się że w mojej brakowało
    funkcji do odczytu z EXPANDERA PCF8574

    Wniosek z tego taki, mimo że biblioteki mają takie same nazwy I2C_TWI to nie są takie same
    zależnie od ćwiczenia w BB

    Po przeniesieniu obu bibliotek I2C_TWI oraz LCD ( bo też się różni od innych ) z LCD_I2C_PCF8574
    do mojego projektu wszystko elegancko ruszyło

    Dzięki kolegom za poświęcony mi czas i chęć pomocy :D



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 cze 2021, o 20:13 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 kwi 2021
    Posty: 15
    Pomógł: 0

    Cześć.
    Próbuję uruchomić LCD po magistrali I2C, mam LCD 2x16 z ekspanderem PCF8574T z pinami A0, A1, A2 podciągniętymi do VCC (addr = 0x4E) i program wiesza się podczas wykonywania lcd_init w linii 624 czyli wysyłanie komend do LCD (nie wiem czy mogę wkleić tu kod).
    Po I2C scanner ekspander się pokazuje, (jako NAJLEPSZY CZUJNIK WILGOTNOŚCI :-)) a podczas odpalania lcd_init zwiecha.
    Ktoś miał taki problem?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 cze 2021, o 21:56 
    Offline
    Moderator
    Avatar użytkownika

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

    Przede wszystkim wklej kod z pliku *.h gdzie widać jak skonfigurowałeś w bibliotece ten wyświetlacz. I jaki masz ten konwerterek ? ten chiński ?

    Poza tym oczywiście możesz wkleić ale ten fragment kodu w którym uważasz, że się wiesza i opisz jak to zbadałeś

    _________________
    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: 28 cze 2021, o 22:20 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 kwi 2021
    Posty: 15
    Pomógł: 0

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


    ten konwerterek mam kupiony z wyświetlaczem w Botlandzie, nie wiem czy Chiński, pewnie tak... z andruino, zanim trafiłem na Twoje produkty, działał, więc zakładam, że sprawny... w I2C scanner się pokazuje... i zmiany adresu tez wykazuje... (jak zwieram A0, A1, A2 dp GND).

    ...a debugowałem LEDem... przeklejałem led_on(1) i w chwili, kiedy już się nie zaświeciła przyjąłem, że to tu program nie idzie dalej...



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 cze 2021, o 23:35 
    Offline
    Moderator
    Avatar użytkownika

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

    Ok czyli pewnie masz ten sam chiński co ja. (nie ma innych niż chińskie tych konwerterków na rynku) czyli ten który ja miałem w poradniku. Ale nie pokazałeś konfiguracji pinów przecież ;) a zrobiłeś tą konfigurację pinów ? trzeba je koniecznie i poprawnie przypisać - może tam ci się wkradł jakiś błąd albo może masz jednak inaczej w nim coś podłączone

    _________________
    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: 29 cze 2021, o 04:51 
    Offline
    Nowy
    Avatar użytkownika

    Dołączył(a): 06 kwi 2021
    Posty: 15
    Pomógł: 0

    Tak jest... problemem było połączenie ekspandera z LCD, a konkretnie...

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


    ...a w ekspanderze jest:

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


    Dzięki za naprowadzenie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 18:06 
    Offline
    Nowy

    Dołączył(a): 06 sty 2022
    Posty: 6
    Pomógł: 0

    Witam, nie chciałem zakładać nowego tematu, więc podpiąłem się tutaj. Przesiadam się z Arduino na C, buduję sobie stację meteo, czujnik DHT11 odpowiada, natomiast mam problem ze skompilowaniem całości z czujnikiem ciśnienia BMP180. Kompilator ma problem z biblioteką I2C. Czy ktoś wie w czym rzecz?

    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 18:14 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Trzeba było założyć nowy wątek ;)
    W Twoim przypadku odwołujesz się do pliku i2cmaster.h w folderze i2chw.
    A, z tego, co widzę, plik masz w innym folderze.
    Zmień w pliku bmp085.c
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    na
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    I, z tego, co pamiętam, pliki z projektu dołączamy, umieszczając je w "", a pliki biblioteczne umieszczamy w <>
    Z tego, co pamiętam, linker (?) szuka plików umieszczonych w "" względem pliku, w którym są umieszczone, natomiast tych w <> w ścieżkach... systemowych (?) (Mirku, popraw nazewnictwo, zawsze mam z tym problem)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 18:43 
    Offline
    Nowy

    Dołączył(a): 06 sty 2022
    Posty: 6
    Pomógł: 0

    Zmieniałem, ale kompilator uparł się na ścieżkę ../i2chw/i2cmaster.h, mimo, że skasowałem ten folder, a pliki i2cmaster.h i .c umieściłem bezpośrednio w workspace_mars i w ogóle gdzie się dało... :?
    "Clean" nie pomaga

    Obrazek

    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 19:51 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Zapisz i wtedy kompiluj.
    Strasznie dziwny ten wpis. Tak było w arduino?

    EDYTOWANE:
    Teraz widzę, że bmp085.h masz w folderze bmp085. Więc poprawny include będzie
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 20:39 
    Offline
    Nowy

    Dołączył(a): 06 sty 2022
    Posty: 6
    Pomógł: 0

    Plik "i2cmaster.h" umieściłem w folderze "stacja METEO" tak jak wszystkie inne, które działają. Dlaczego kompilator uparł się na to "../i2chw/i2cmaster.h"? :(

    Obrazek



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 23:08 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Ech, arduino.
    Źle dodajesz bibliotekę. Robi się to tak, jak masz wyżej.
    Jeśli gdzieś dalej wykorzystujesz to I2CFLEURYPATH, to musisz użyć dyrektywy
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Jak wyglądał ten plik na arduino?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 6 sty 2022, o 23:47 
    Offline
    Nowy

    Dołączył(a): 06 sty 2022
    Posty: 6
    Pomógł: 0

    Ale tu nie ma żadnego pliku z Arduino... Ja się przesiadam z Arduino, ale to nie ma wiele do rzeczy. Co do ścieżki, to wpisywałem tam już #define I2CFLEURYPATH "i2cmaster.h", podawałem pełną ścieżkę z C:, kombinowałem i nic



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 sty 2022, o 18:59 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Pytałem o arduino, bo dziwny jest ten twór.
    Bibliotekę do obsługi i2c dołącz tak, jak inne biblioteki:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    Przed kompilacją zapisz zmiany! Bo wydaje mi się, że tego nie robisz



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 7 sty 2022, o 21:39 
    Offline
    Nowy

    Dołączył(a): 06 sty 2022
    Posty: 6
    Pomógł: 0

    Jest postęp, jeszcze raz wkleiłem "bmp085.h" i ruszyło, ale teraz nie tworzy pliku hex. Zaznaczam, że pod młotkiem mam "release", a nie "debug"

    Obrazek

    Nie wiem o co chodzi z "wielokrotną definicją bmp085_init" z konsoli?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 sty 2022, o 20:49 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Masz wielokrotnie definiowane funkcje. Zrób clean projektu, spakuj do .zip i wrzuć tu na forum jako załącznik.
    Ze screenów nie da się znaleźć błędu. Jak złapię chwilę, to przejrzę, co tam masz.

    A pliku .hex nie ma, bo nie zbudował Ci się projekt. Te właśnie wielokrotne definicje przeszkadzają.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 sty 2022, o 21:10 
    Offline
    Nowy

    Dołączył(a): 06 sty 2022
    Posty: 6
    Pomógł: 0

    Dzięki za pomoc Marhef, nie będę ci już zawracał głowy. Pobawię się sam, nie będę robił bałaganu w czyimś temacie



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 8 sty 2022, o 23:06 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 sty 2016
    Posty: 1170
    Lokalizacja: Kraków
    Pomógł: 93

    Po to jest forum, żeby sobie pomagać. Każdy był kiedyś początkujący (nawet Mirek :-P)
    Jeśli zdecydujesz się wrzucić projekt, usuń biblioteki od Mirka, tylko napisz, z jakuego projektu użyłeś.
    Albo wrzuć tu tekst z konsoli, ale nie jako obrazek, może tak uda się pomóc.
    Możesz też nowy temat założyć



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

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 16 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:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO