MAX6675 и библиотека max6675.h

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Добрый день форумчане.
Накидан простенкий скетчик на основе примера из библиотеки, попытался разметить файлы библиотеки в папке со скетчем, ошибка компилирования - двойное определение объекта.

#include "max6675.h"

int thermoDO = 4;     // к этому пину подключаем клемму (DO) модуля MAX6675
int thermoCS = 5;     // к этому пину подключаем клемму (CS) модуля MAX6675
int thermoCLK = 6;    // к этому пину подключаем клемму (CLK) модуля MAX6675
int LedPin =13;       // Пин подключения светодиода
int thermoMin = 20;   // Минимальная температура
int thermoMax = 30;   // Максимальная температура

MAX6675 MY(thermoCLK, thermoCS, thermoDO); // инициализация модуля MAX6675

volatile float my_Termo;  // Здесь храним считанное значение температуры
                          // если надо с точностью до градуса переменная
                          // должна быть типа int
                          
int vccPin = 7;   // к этому пину подключаем (+) питания модуля MAX6675
int gndPin = 8;   // к этому пину подключаем (-) питания модуля MAX6675
  
void setup() {
  Serial.begin(9600);
  // use Arduino pins 
  pinMode(vccPin, OUTPUT); digitalWrite(vccPin, HIGH);
  pinMode(gndPin, OUTPUT); digitalWrite(gndPin, LOW);
  
  Serial.println("MAX6675 test");
  // ожидание на стабилизацию модуля
  delay(500);
  my_Termo = MY.readCelsius(); // получили температуру
}

void loop() {
    my_Termo = (my_Termo + MY.readCelsius())/2;  // считываем в режиме усреднения
    if(my_Termo < thermoMin || my_Termo > thermoMax)
    { digitalWrite(LedPin,LOW);
    }else{
      digitalWrite(LedPin,HIGH);} //светодиод горит если ситываемая температура
                                  //находится в окне температур между thermoMin и thermoMax    
   Serial.print("C = "); 
   Serial.println(my_Termo,2);
   delay(250);
}  // в главном цикле замер температуры идёт четыре раза в секунду

Что в этой библиотеке (от adafruit) не так?

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Ну, если б Вы ещё и текст сообщения привели. Вроде ж "не первый раз замужем"

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

В строках 3-5 попробуйте поставить #define

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

ЕвгенийП пишет:

Ну, если б Вы ещё и текст сообщения привели. Вроде ж "не первый раз замужем"

да уж, тот скетч удалил, попытался воспроизвести ситуацию сызнова, увы, теперь ошибка не проявляется, всё компилируется на ура...
Жизнь всё чудесатее и, чудесатее...пошёл поштукатурю, это у меня лучше получается видимо )))
PS Студент - пользуйся моей добротой )))