библиотека для подключения модуля термопары к микроконтроллеру

Dependents:   NUCLEO_F410RB_MAX6675 PanelaSTM

Fork of max6675 by Jason Engelman

Revision:
4:f0cdf38c7cfc
Parent:
2:661ac326e3b3
--- a/max6675.cpp	Fri Jun 18 10:44:36 2010 +0000
+++ b/max6675.cpp	Mon Jun 11 06:48:27 2018 +0000
@@ -13,22 +13,22 @@
     uint8_t highByte=0;
     uint8_t lowByte=0;
     
-    select();
-    wait(.25); //This delay is needed else it does'nt seem to update the temp
+    select();  //выбор чипа устанавливает CS в 0
+    wait(.25); //Эта задержка нужна для обновления данных о температуре
 
-    highByte = spi.write(0);
-    lowByte = spi.write(0);
-    deselect();
+    highByte = spi.write(0); // отправляем два пустых
+    lowByte = spi.write(0);  // байта, при этом одновременно получаем два байта с данными 
+    deselect(); //устанавливаем CS в 1 (освобождаем SPI интерфейс) после того как считали температуру.
 
 
-    if (lowByte & (1<<2)) {
-        error("No Probe");
+    if (lowByte & (1<<2)) {  // проверяем третий бит, если равен 1, то термопара отключена
+        return -1;
     } else {
-        value = (highByte << 5 | lowByte>>3);
+        value = (highByte << 5 | lowByte>>3); // выделим из полученных данных инф. о температуре (с 3 по 14 бит)
     }
 
-    temp = (value*0.25); // Multiply the value by 0.25 to get temp in ˚C or
-                         //  * (9.0/5.0)) + 32.0;   // Convert value to ˚F (ensure proper floats!)
+    temp = (value*0.25); // умножаем значение на чтобы получить ˚C или
+                         //  * (9.0/5.0)) + 32.0;   // чтобы получить ˚F 
 
 return temp;
 }