Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Atmega8 i błąd biblioteki PCF8574

mysior103 12 Lut 2015 02:36 1290 1
  • #1 12 Lut 2015 02:36
    mysior103
    Poziom 6  

    Witam wszystkich,
    Jest to mój pierwszy post, gdyż dopiero zaczynam przygodę z mikrokontrolerami. Mianowicie mam układ wykorzystujący PCF8574 i gdy wszystko jest podłączone do Arduino Leonardo to śmiga pięknie. Jednak, gdy w Arduino IDE zmienie płytkę na Atmega8 i programator na USBasp, chcąc przenieść moj cały układ na mikrokontroler wywala mi błąd kompilacji:


    In file included from C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCF8574.cpp:2:0:
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h:4:4: error: 'PCMSK0' was not declared in this scope
    &PCMSK0,
    ^
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h:5:4: error: 'PCMSK1' was not declared in this scope
    &PCMSK1,
    ^
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h:6:4: error: 'PCMSK2' was not declared in this scope
    &PCMSK2
    ^
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h: In function 'void PCattachInterrupt(uint8_t, void (*)(), int)':
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h:49:3: error: 'PCICR' was not declared in this scope
    PCICR |= 0x01 << port;
    ^
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h: In function 'void PCdetachInterrupt(uint8_t)':
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h:70:5: error: 'PCICR' was not declared in this scope
    PCICR &= ~(0x01 << port);
    ^
    Błąd kompilacji.

    Kod programu:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Ogólnie jest to układ do zliczania punktów w grze. Wyświetlacze 7-segmentowe są podłączone przez multipleksowanie.


    EDIT:
    Wydaje mi się, że moja ATMEGA8 miała problem z obsługą I2C, zamieniłem na ATMEGA328 i śmiga bez problemu.

    Użyte biblioteki:

    0 1
  • #2 16 Lut 2015 11:54
    dondu
    Moderator Mikrokontrolery Projektowanie

    mysior103 napisał:
    C:\Users\Rafał\Documents\Arduino\libraries\PCF8574\PCint.h:70:5: error: 'PCICR' was not declared in this scope

    Wydaje mi się, że moja ATMEGA8 miała problem z obsługą I2C, zamieniłem na ATMEGA328 i śmiga bez problemu.

    Przecież to ładnie widać w pokazanym błędzie - rejestr PCICR nie występuje w ATmega8.
    Podobnie pozostałe komunikaty.
    Oj, czytaj dokumentacje mikrokontrolerów.

    0
  Szukaj w 5mln produktów