В библиотеке ххх.h имеются строки, задающие служебные пины в таком виде
Код: Выделить всё
const int ADSхххх_DRDY_PIN = 2;
const int ADSхххх_CS_PIN = 10;
const int ADSхххх_START_PIN = 1;
const int ADSхххх_PWDN_PIN = 7;
Код: Выделить всё
const int ADSхххх_DRDY_PIN = 2;
const int ADSхххх_CS_PIN = 10;
const int ADSхххх_START_PIN = 1;
const int ADSхххх_PWDN_PIN = 7;
Крайне нежелательно это делать. Вы нарушите область видимости констант. Это может привести к трудно отлавливаемым ошибкам. А так, запретить вам это сделать никто не может.
Я не знаю последствия в случае недопустимых комбинаций (если такой перенос не работает) для микросхемы и как уже написал, у меня их мало (чисто на тесты).
В моем случае библиотека имеет всего два файла ххх.h и ххх.cpp. Объявление констант есть только в xxx.h сразу после дефайнов и к ним не относится (по условиям). В xxx.cpp эти константы (пины) просто используются...
Отправлено спустя 3 минуты 45 секунд:
Код: Выделить всё
d:\PortableFLProg_7-3-8_Win64\ideV7\libraries\ProtoCentral_ads1262-master\src/ads1262.h:44:11: error: uninitialized const 'ADS1262_DRDY_PIN' [-fpermissive]
const int ADS1262_DRDY_PIN;
^~~~~~~~~~~~~~~~
d:\PortableFLProg_7-3-8_Win64\ideV7\libraries\ProtoCentral_ads1262-master\src/ads1262.h:45:11: error: uninitialized const 'ADS1262_CS_PIN' [-fpermissive]
const int ADS1262_CS_PIN;
^~~~~~~~~~~~~~
d:\PortableFLProg_7-3-8_Win64\ideV7\libraries\ProtoCentral_ads1262-master\src/ads1262.h:46:11: error: uninitialized const 'ADS1262_START_PIN' [-fpermissive]
const int ADS1262_START_PIN;
^~~~~~~~~~~~~~~~~
d:\PortableFLProg_7-3-8_Win64\ideV7\libraries\ProtoCentral_ads1262-master\src/ads1262.h:47:11: error: uninitialized const 'ADS1262_PWDN_PIN' [-fpermissive]
const int ADS1262_PWDN_PIN;
Да, поскольку назначить/задекларировать в генерируемый скеч константы получается, но из .cpp вызовы идут по имени в .h, а там ...
А тут неудача... у меня распаян 328pb
А пользуетесь другой, какой?
А в чем принципиальная разница? Вы же сами эту библиотеку и дали
Это я затупил. Нужно было через сохранение в библиотеку блоков. Иначе при смене камня ПБ исчезает с поля...
А почему бы просто не поубирать спецификатор <const> перед объявлением этих переменных в библиотеке (само собой без комментирования этих строк)? Ну а далее, как и хотел ТС, переназначить им значения в начале секции Setup ?
Чисто визуально проблемы не вижу, но ведь что то где то есть.
Я заменил из присланного Вами последнего варианта только .h (в .срр отличий не увидел). И после прописки ПБ в библиотеку Flprog собрал проект заного с новым блоком. Назначил пины и залил в камень. Результат - висяк.
В хедере создаёшь новую функцию с аргументами пинами. Вызовешь в setup.
...слабо разбирающемся в Си...
Мне самому удивительно..., но я понял, что Саша предложил