• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
DS3231 problem z kompilacją
#1
Witam

Zacząłem zabawę z zegarem DS3231 i na dzień dobry natknąłem się na problem z kompilacją (Arduino 1.8.4).
Wgrałem automatycznie bibliotekę DS3231.h niestety program wyrzuca błędy kompilacji:

WARNING: Category 'Real-time clock' in library DS3231 is not valid. Setting to 'Uncategorized'

Jedynie co znalazłem w necie to żeby wgrać bibliotekę o innej numeracji co też uczyniłem.
Niestety problem dalej występujeSad

Czy ktoś się orientuje o co chodzi???

Kod:
#include <Wire.h>
#include <DS3231.h>

DS3231 clock;
RTCDateTime dt;

void setup()
{
 Serial.begin(9600);

 // Inicjalizacja DS3231
 Serial.println("Initialize DS3231");;
 clock.begin();

 // Ustawiamy date i czas z kompilacji szkicu
 clock.setDateTime(__DATE__, __TIME__);

 // Lub recznie (YYYY, MM, DD, HH, II, SS
 // clock.setDateTime(2014, 4, 13, 19, 21, 00);
}

void loop()
{
 // Odczytujemy czas i formatujemy za pomoca funkcji dateFormat
 dt = clock.getDateTime();

 Serial.print("Long number format:          ");
 Serial.println(clock.dateFormat("d-m-Y H:i:s", dt));

 Serial.print("Long format with month name: ");
 Serial.println(clock.dateFormat("d F Y H:i:s",  dt));

 Serial.print("Short format witch 12h mode: ");
 Serial.println(clock.dateFormat("jS M y, h:ia", dt));

 Serial.print("Today is:                    ");
 Serial.print(clock.dateFormat("l, z", dt));
 Serial.println(" days of the year.");

 Serial.print("Actual month has:            ");
 Serial.print(clock.dateFormat("t", dt));
 Serial.println(" days.");

 Serial.print("Unixtime:                    ");
 Serial.println(clock.dateFormat("U", dt));

 Serial.println();

 delay(1000);
}
 
Odpowiedź
#2
Ciężko cokolwiek wywróżyć bo nie podajesz źródła biblioteki.
Zacznij od przykładów dostarczonych z biblioteką.
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#3
Biblioteka zainstalowana przez "Dołazcz biblioteke" w Arduino
A jej źródło:
https://github.com/jarzebski/Arduino-DS3231

Program brany z "Przykładów" z Ardiuno.
 
Odpowiedź
#4
Na wersji 1.8.4 przykład kompiluje się prawidłowo. Pokaż pełny wynik kompilacji.
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#5
Co ciekawe teraz cokolwiek kompiluje zawsze mam pierwszą line:
UWAGA: Kategoria 'Real-time clock' w bibliotece DS3231 jest nieprawidłowa. Ustawiono na 'Uncategorized'

Mam nadzieję że o to ci chodzi czy mam włączyć jeszcze opcje: "Pokaż szczegółowe informacje podczas kompilacji"


Kod:
Arduino:1.8.4 (Windows XP), Płytka:"Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

UWAGA: Kategoria 'Real-time clock' w bibliotece DS3231 jest nieprawidłowa. Ustawiono na 'Uncategorized'
sketch_sep26a:5: error: 'RTCDateTime' does not name a type

 RTCDateTime dt;

 ^

E:\Dane\elektronika\programy\Anduino\dane\sketch_sep26a\sketch_sep26a.ino: In function 'void setup()':

sketch_sep26a:13: error: 'class DS3231' has no member named 'begin'

  clock.begin();

        ^

sketch_sep26a:16: error: 'class DS3231' has no member named 'setDateTime'

  clock.setDateTime(__DATE__, __TIME__);

        ^

E:\Dane\elektronika\programy\Anduino\dane\sketch_sep26a\sketch_sep26a.ino: In function 'void loop()':

sketch_sep26a:25: error: 'dt' was not declared in this scope

  dt = clock.getDateTime();

  ^

sketch_sep26a:25: error: 'class DS3231' has no member named 'getDateTime'

  dt = clock.getDateTime();

             ^

sketch_sep26a:28: error: 'class DS3231' has no member named 'dateFormat'

  Serial.println(clock.dateFormat("d-m-Y H:i:s", dt));

                       ^

sketch_sep26a:31: error: 'class DS3231' has no member named 'dateFormat'

  Serial.println(clock.dateFormat("d F Y H:i:s",  dt));

                       ^

sketch_sep26a:34: error: 'class DS3231' has no member named 'dateFormat'

  Serial.println(clock.dateFormat("jS M y, h:ia", dt));

                       ^

sketch_sep26a:37: error: 'class DS3231' has no member named 'dateFormat'

  Serial.print(clock.dateFormat("l, z", dt));

                     ^

sketch_sep26a:41: error: 'class DS3231' has no member named 'dateFormat'

  Serial.print(clock.dateFormat("t", dt));

                     ^

sketch_sep26a:45: error: 'class DS3231' has no member named 'dateFormat'

  Serial.println(clock.dateFormat("U", dt));

                       ^

exit status 1
'RTCDateTime' does not name a type

Ten raport powinien zawierać więcej informacji jeśli w 
File -> Preferencje zostanie włączona opcja "Pokaż
szczegółowe informacje podczas kompilacji"
 
Odpowiedź
#6
Daj szczegółowe informacje. Z logu wynika że najprawdopodobniej do kompilacji została wybrana inna biblioteka.
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#7
Arduino:1.8.4 (Windows XP), Płytka:"Arduino Pro or Pro Mini, ATmega328P (5V, 16 MHz)"

C:\Program Files\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files\Arduino\hardware -hardware C:\Documents and Settings\XAX\Ustawienia lokalne\Dane aplikacji\Arduino15\packages -tools C:\Program Files\Arduino\tools-builder -tools C:\Program Files\Arduino\hardware\tools\avr -tools C:\Documents and Settings\XAX\Ustawienia lokalne\Dane aplikacji\Arduino15\packages -built-in-libraries C:\Program Files\Arduino\libraries -libraries E:\Dane\elektronika\programy\Anduino\dane\libraries -fqbn=arduino:avr:pro:cpu=16MHzatmega328 -ide-version=10804 -build-path C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277 -warnings=none -build-cache C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_cache_646300 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\Arduino\hardware\tools\avr -verbose E:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231\examples\echo_time\echo_time.pde
C:\Program Files\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files\Arduino\hardware -hardware C:\Documents and Settings\XAX\Ustawienia lokalne\Dane aplikacji\Arduino15\packages -tools C:\Program Files\Arduino\tools-builder -tools C:\Program Files\Arduino\hardware\tools\avr -tools C:\Documents and Settings\XAX\Ustawienia lokalne\Dane aplikacji\Arduino15\packages -built-in-libraries C:\Program Files\Arduino\libraries -libraries E:\Dane\elektronika\programy\Anduino\dane\libraries -fqbn=arduino:avr:pro:cpu=16MHzatmega328 -ide-version=10804 -build-path C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277 -warnings=none -build-cache C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_cache_646300 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude.path=C:\Program Files\Arduino\hardware\tools\avr -verbose E:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231\examples\echo_time\echo_time.pde
Using board 'pro' from platform in folder: C:\Program Files\Arduino\hardware\arduino\avr
Using core 'arduino' from platform in folder: C:\Program Files\Arduino\hardware\arduino\avr
UWAGA: Kategoria 'Real-time clock' w bibliotece DS3231 jest nieprawidłowa. Ustawiono na 'Uncategorized'
Detecting libraries used...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\sketch\echo_time.pde.cpp" -o "nul"
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\sketch\echo_time.pde.cpp" -o "nul"
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "-IC:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\sketch\echo_time.pde.cpp" -o "nul"
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "-IC:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src" "E:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231\DS3231.cpp" -o "nul"
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "-IC:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src\Wire.cpp" -o "nul"
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "-IC:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src\utility\twi.c" -o "nul"
Generating function prototypes...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics  -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "-IC:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\sketch\echo_time.pde.cpp" -o "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files\Arduino\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\preproc\ctags_target_for_gcc_minus_e.cpp"
Kompilowanie szkicu...
"C:\Program Files\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10804 -DARDUINO_AVR_PRO -DARDUINO_ARCH_AVR   "-IC:\Program Files\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files\Arduino\hardware\arduino\avr\variants\eightanaloginputs" "-IE:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231" "-IC:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire\src" "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\sketch\echo_time.pde.cpp" -o "C:\DOCUME~1\XAX\USTAWI~1\Temp\arduino_build_359277\sketch\echo_time.pde.cpp.o"
E:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231\examples\echo_time\echo_time.pde: In function 'void setup()':

echo_time:33: error: 'Century' was not declared in this scope

       Serial.print(Clock.getMonth(Century), DEC);

                                   ^

echo_time:37: error: 'h12' was not declared in this scope

       Serial.print(Clock.getHour(h12, PM), DEC); //24-hr

                                  ^

echo_time:37: error: 'PM' was not declared in this scope

       Serial.print(Clock.getHour(h12, PM), DEC); //24-hr

                                       ^

echo_time:44: error: a function-definition is not allowed here before '{' token

 void loop() {}

             ^

echo_time:44: error: expected '}' at end of input

 void loop() {}

              ^

Użycie biblioteki DS3231 w wersji 1.0 z folderu: E:\Dane\elektronika\programy\Anduino\dane\libraries\DS3231 
Użycie biblioteki Wire w wersji 1.0 z folderu: C:\Program Files\Arduino\hardware\arduino\avr\libraries\Wire 
exit status 1
'Century' was not declared in this scope
 
Odpowiedź
#8
Kompilujesz plik z rozszerzeniem pde a takiego nie ma w przykładach dostarczonych z biblioteką. Myślę że używasz jakiejś starszej wersji. Sciągnij tą bibliotekę: https://github.com/jarzebski/Arduino-DS3...master.zip wypakuj do katalogu "libraries" a poprzednią przenieś w inne miejsce.Skompiluj przykłady i daj znać co i jak.
Pomagam za darmo więc szanuj mój czas.
Wklejaj tekst a nie jego zdjęcie.
Nie pisz następnego postu jak nie odpowiedziałeś na poprzedni.
Jak mądrze zadawać pytania
 
Odpowiedź
#9
Dzięki działa Smile
Program skompilował się bezbłędnie ale jeszcze nie miałem czasu podłączyć zegara do płytki arduino.
Ciekawe że samo arduino proponuje w automatycznym instalowaniu bibliotek, bibliotekę już nieaktualną Sad
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości