eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaavr-gcc - pomijanie "-mmcu" i złe pliki z definicjamiRe: avr-gcc - pomijanie "-mmcu" i złe pliki z definicjami
  • Data: 2013-03-26 22:54:16
    Temat: Re: avr-gcc - pomijanie "-mmcu" i złe pliki z definicjami
    Od: "Grzegorz Niemirowski" <g...@p...onet.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    Jakub Rakus <s...@o...pl> napisał(a):
    > Witajcie,
    > Jest sobie program na atmega8, coś tam mierzy na ADC, mierzy temp. przez
    > DS18B20, wyświetla wszystko na 7-segment i przełącza kilka przekaźników. A
    > problem jest taki - avr-gcc nie wiedzieć czemu (chyba) przy kompilacji
    > używa nieprawidłowych plików z definicjami rejestrów procesora. Oczywiście
    > na początku pliku mam #include <avr/io.h>, a kompilator wywołuje
    > z -mmcu=atmega8. Tylko, że np. taka linijka jest w ogóle
    > pomijana: ADCSRA = _BV(ADEN)|_BV(ADPS1)|_BV(ADPS2);

    Na pewno? Nie spotkałem się jeszcze z tym, żeby kompilator sobie coś
    pomijał. Skąd wiesz, że pimija? W jaki sposób testowałeś?

    > Są też błędy (a może raczej braki) przy konfiguracji innych rejestrów (np.
    > timerów), nie rozpoznaje mi niektórych nazw rejestrów/bitów.

    Jak nie rozpoznaje? Jeśli nie rozpoznaje, to znaczy, że kompilacja kończy
    się błędem.

    > IDE którego używam (CodeBlocks pod Ubuntu), pozwala mi na podejrzenie, w
    > którym pliku znajdują się definicje użytych nazw rejestrów/bitów - i tu
    > ciekawostka, wypluwa mi że definicje wziął z pliku ioat94k.h - tak jakby w
    > ogóle olał parametr mmcu i wybrał sobie pierwszy lepszy plik do którego
    > odnosi się avr/io.h. Przejrzałem ten plik (ioat94k) dokładnie - takie
    > nazwy nie są tam zdefiniowane (w końcu to inny procek), dla porównania
    > podejrzałem w iom8.h - tutaj oczywiście są. Więc faktycznie z jakiegoś
    > nieznanego mi powodu zostaje wywołany nieprawidłowy plik z definicjami -
    > dlaczego?

    Jest sobie warunek:
    #if defined (__AVR_AT94K__)
    # include <ioat94k.h>
    Nie masz czasem zdefiniowanego __AVR_AT94K__?

    > Walczę z tym od wczoraj i skończyły mi się pomysły, próbowałem zmieniać
    > ustawienia wywołania avr-gcc, ale nie ma efektów.

    Dużo nie wymyślimy bez źródeł, przede wszystkim Makefile.

    --
    Grzegorz Niemirowski
    http://www.grzegorz.net/
    OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
    Uptime: 2 days, 3 hours, 48 minutes and 21 seconds

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: