(09-01-2019 10:33)SP7EZG napisał(a): [ -> ]Pamiętać trzeba o nazwach plików .h.
Mając zainstalowaną wcześniej bibliotekę od NT7S, doinstalowując Si5351mcu Arduino również odwoływało się do tej pierwszej. Receptą jest usunięcie, bądź zmiana nazwy tej pierwszej.
Nie trzeba zmieniać żadnych nazw, bo nie ma potrzeby.
Jeżeli użyta jest jakaś biblioteka specyficzna w projekcie, w tym przypadku si5351mcu, to:
- bezwzględnie zależy podać informację, skąd pochodzi użyta biblioteka, aby inne osoby nie przeszukiwały internetu w poszukiwaniu jej,
- dołączyć ową bibliotekę do katalogu z plikiem *.ino ( tak aby były w jednym katalogu z plikiem *.ino)
Jeżeli taką bibliotekę umieścimy w jednym katalogu z plikiem *.ino, to inkludujemy ją przez
Kod:
#include "si5351mcu.h";
a nie przez
Kod:
#include <si5351mcu.h>;
Wtedy możemy mieć inną bibliotekę w globalnej ścieżce bibliotek Ardunio zainstalowaną przez menedżera bibliotek arduino, nawet o takiej samej nazwie plików *.h, *.cpp
ale kompilator skompiluje tylko tą konkretną wersję, która jest w katalogu projektu.
Jeżeli już robi się zmiany w projekcie i dodatkowo używa innych plików nagłówkowych, zrobionych dla własnych celów, to też należy te pliki umieścić razem z plikiem *.ino.
Ja nie doszukałem się pliku
config.h, który inkludujesz Arturze w Twojej wersji źródeł, a którego nie ma w oryginalnych źródłach - specjalnie przeglądnąłem cały wątek od pierwszej strony w poszukiwaniu tego brakującego pliku.
Jeszcze małe spostrzezenie. W GCC dla procesorków AVR w ostatnich wersjach zmienione zostało podejście do specyfikatora
PROGMEM. Teraz należy dodawać jeszcze specyfikator
const. W przeciwnym wypadku dostaniemy błąd lub warning przy kompilacji.
Np. w pliku DefaultFonts.h
Kod:
#if defined(__AVR__)
#include <avr/pgmspace.h>
#define fontdatatype uint8_t const
Tu do definicji
fontdatatype dodane na końcu
const