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.

Atmega8A, Atmel Studio - Atmel Studio nie rozpoznaje niektórych komend/zmiennych

spy89 15 Mar 2014 12:09 2088 3
  • #1 15 Mar 2014 12:09
    spy89
    Poziom 12  

    Witam
    Po namowach wielu forumowiczów postanowiłem przesiąść się z 8051 na AVR. Niestety już na samym początku napotykam różne przeszkody. Największą dla mnie przeszkodą jest to, że przykładowe programy które są w sieci nie kompilują mi się. Korzystam z Atmel Studio 6.1. Sciągnałem sobie fajny poradnik "Podstawy AVR-GCC" i chciałem z niego korzystać. Najpierw sobie troche poczytałem i wszystko jest fajnie przedstawione, ale gdy skopiuje sobie przykładowy program do mojego środowiska to nagle mam pełno ostrzeżeń i błędów. Z niektórymi jestem w stanie sobie poradzić, ale nie o to chodzi. Pytanie teraz czemu tak się dzieje? Przecież u niektórych to normalnie działa po samym skopiowaniu.

    Przykładowy program z sterowaniem PWM:

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Błędy i ostrzeżenia:
    Warning 1 #warning "This header file is obsolete. Use <avr/interrupt.h>."
    Error 2 'PWM10' undeclared (first use in this function)
    Message 3 each undeclared identifier is reported only once for each function it appears in C:\Users\....
    Error 4 'PWM11' undeclared (first use in this function)
    Warning 5 implicit declaration of function 'PWM_out'

    0 3
  • #2 15 Mar 2014 12:36
    dondu
    Moderator Mikrokontrolery Projektowanie

    Witam.

    Cytat:
    Warning 1 #warning "This header file is obsolete. Use <avr/interrupt.h>."

    Przecież pisze co masz zrobić - używać nagłówka interrupt.h, a nie przestarzałego signal.h, a Ty wstawiłeś oba, a w dodatku przerwań nie używasz :)


    Cytat:
    Error 2 'PWM10' undeclared (first use in this function)

    Gdybyś sprawdził w datasheet ATmega8A to znalazłbyś informację:

    Cytat:
    The following control bits have changed name, but have same functionality and register
    location:
     PWM10 is changed to WGM10.
     PWM11 is changed to WGM11.
     CTC1 is changed to WGM12.


    itd.

    Po prostu korzystasz z bardzo starych materiałów.

    0
  • #3 15 Mar 2014 12:40
    spy89
    Poziom 12  

    To akurat na sztywno skopiowany kod z książki.

    A gdzie mogę znaleźć jakieś nowsze (równie dobre) poradniki?

    0