Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

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

spy89 15 Mar 2014 12:09 2421 3
  • #1
    spy89
    Level 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:

    Code: c
    Log in, to see the code


    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'
  • #2
    dondu
    Moderator on vacation ...
    Witam.

    Quote:
    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 :)


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

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

    Quote:
    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.
  • #3
    spy89
    Level 12  
    To akurat na sztywno skopiowany kod z książki.

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