logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[CVAVR] - Błąd kompilatora z wbudowanej biblioteki

kiclaw 02 Wrz 2013 12:51 1536 8
  • #1 12694521
    kiclaw
    Poziom 16  
    Witam

    Otóż mam taki problem, mianowicie przerabiam nie swój kod w CVAVR, no i pojawił mi się taki błąd:

    Error: C:\cvavr\inc\ds1307.h(23), #included from: rfid.c: ',' expected


    Gdzie rfid.c to mój plik. Po prostu gdziekolwiek zainkluduje #include <ds1307.h>
    to wywala mi błąd (from: moj_plik.c).

    Co radzicie? :) Biblioteka jest wbudowana, więc teoretycznie nie powinno być z nią problemów.
  • #2 12694596
    xamrex
    Poziom 28  
    Spróbuj może skopiować te bibliotekę do tego samego folderu co masz projekt i zainkluduj poprzez
    #include "ds1307.h"
  • #3 12694930
    kiclaw
    Poziom 16  
    Niestety to samo :(
  • #4 12695184
    tmf
    VIP Zasłużony dla elektroda
    Takie dziwne błędy są najczęściej wynikiem błędów gdzieś dużo wcześniej, być może w includowanym pliku. Gdzieś brakuje średnika, lub tego typu sprawy. Zobacz, czy przed błędem nie występuje jakieś ostrzeżenie i się mu dokładniej przyjrzyj. Problemem mogą być też jakieś niestandardowe rozszerzenia i makra - np. PROGMEM, __attribute__ cośtam, #pragma itd. Także jeśli przenosisz coś pomiędzy kompilatorami to zazwyczaj jest to nieco wyższa szkoła jazdy i trzeba byc przygotowanym na problemy w różnych dziwnych miejscach.
  • #5 12695188
    BlueDraco
    Specjalista - Mikrokontrolery
    Popatrz, co masz w programie przed tym #include albo na końcu pliku inkludowanego wcześniej.

    Nie widząc zawartości pliku nikt Ci raczej bardziej nie pomoże.
  • #6 12695385
    Fredy
    Poziom 27  
    A nie wpisałeś :
    #include <ds1307,h>
    zamiast #include <ds1307.h>

    Gdzieś masz problem z przecinkiem.
    A co się stanie jak kompilujesz bez tego include?
  • #7 12698158
    kiclaw
    Poziom 16  
    Poprzedni programista używał (niestety) bibliotek wbudowanych w CVAVR, więc nie mogę tego nie inkludować.

    Oto kod gdzie jest błąd:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod


    I jeszcze raz kod błędu:

    Kod: Bash
    Zaloguj się, aby zobaczyć kod


    Czyli błąd jest w linijce:

    Kod: C / C++
    Zaloguj się, aby zobaczyć kod
  • #8 12698625
    BlueDraco
    Specjalista - Mikrokontrolery
    spróbuj przenieść dyrektywę #include włączającą ten plik wyżej, np. tak, żeby był włączany jako pierwszy, a w każdym razie przed innymi plikami nagłówkowymi własneh roboty.

    Wygląda to tak, jakby ktoś zdefiniował gdzieś przed włączeniem tego pliku symbol rs, sqwe albo out.
  • #9 12698938
    Fredy
    Poziom 27  
    Używasz programowego I2C? Jeśli tak to w Project|Configure|C Compiler|Libraries|I2C musisz włączyć I2C i wskazać gdzie jest SDA i SCL , oraz ustawiasz tam prędkość transmisji. W starych wersjach CodeVision trzeba było dawać wstawkę asemblerową - poszukaj o tym w helpie.
REKLAMA