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 24 lip 2025, o 04:26


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 3 ] 
    Autor Wiadomość
    PostNapisane: 4 sty 2014, o 19:47 
    Offline
    Użytkownik

    Dołączył(a): 02 lut 2013
    Posty: 75
    Pomógł: 0

    Piszę bibliotekę i mam problem z kompilacją warunkową, w pliku nagłówkowym mam np.:

    #define USE_ST7565_CHAR 1
    #define USE_ST7565_STRING 1

    w pliku biblioteki mam:
    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 main jest użycie funkcji st7565_write_string_8x16, podczas kompilacji mam:
    Kod:
    avr-gcc -Wl,-Map,LCD_ST7565.map -mmcu=atmega32 -o"LCD_ST7565.elf"  ./main.o  ./ST7565/ST7565.o   
    ./main.o: In function `main':
    main.c:(.text+0x38): undefined reference to `st7565_write_string_8x16'
    make: *** [LCD_ST7565.elf] Error 1


    czyli funkcja st7565_write_string_8x16 nie jest kompilowana :(
    Korzystam z takiej konstrukcji ponieważ funkcja st7565_write_string_8x16 ma być kompilowana tylko wtedy, gdy USE_ST7565_CHAR = 1 i USE_ST7565_STRING = 1. W przypadku kiedy USE_ST7565_CHAR = 0 funkcja st7565_write_string_8x16 ma nie zostać skompiklowana.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 sty 2014, o 20:29 
    Offline
    Uzytkownik zasłużony dla forum.atnel.pl
    Avatar użytkownika

    Dołączył(a): 16 lip 2012
    Posty: 2088
    Lokalizacja: Leżajsk / Kraków
    Pomógł: 411

    To to skoro wiesz co ma być to dlaczego masz:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    który to warunek jest spełniony gdy USE_ST7565_CHAR = 0 i USE_ST7565_STRING = 1
    Zastąp to:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Autor postu otrzymał pochwałę

    _________________
    Dragonus Cracovus: Biomagia



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 sty 2014, o 20:41 
    Offline
    Użytkownik

    Dołączył(a): 02 lut 2013
    Posty: 75
    Pomógł: 0

    Dziękuję, nie wiedziałem że w dyrektywach można używać iloczyn logiczny.



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

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Bing [Bot] 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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO