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

Dependents:   NUCLEO_F410RB_MAX6675 PanelaSTM

Fork of max6675 by Jason Engelman

Files at this revision

API Documentation at this revision

Comitter:
zelmic
Date:
Mon Jun 11 06:48:27 2018 +0000
Parent:
3:8516e00ad03c
Commit message:
ver 1.

Changed in this revision

max6675.cpp Show annotated file Show diff for this revision Revisions of this file
max6675.h Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show diff for this revision Revisions of this file
diff -r 8516e00ad03c -r f0cdf38c7cfc max6675.cpp
--- 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;
 }
diff -r 8516e00ad03c -r f0cdf38c7cfc max6675.h
--- a/max6675.h	Fri Jun 18 10:44:36 2010 +0000
+++ b/max6675.h	Mon Jun 11 06:48:27 2018 +0000
@@ -6,20 +6,20 @@
 class max6675
 {
     SPI& spi;
-    DigitalOut ncs;
+    DigitalOut ncs;// pin CS для выбора чипа
   public:
   
-    max6675(SPI& _spi, PinName _ncs);
-    void select();
-    void deselect();
+    max6675(SPI& _spi, PinName _ncs); 
+    void select(); //захват линии SPI для данного чипа
+    void deselect();// освобождение SPI
     
-    float read_temp();
+    float read_temp(); //чтение температуры
   private:
     PinName _CS_pin;
     PinName _SO_pin;
     PinName _SCK_pin;
-    int _units;
-    float _error;
+    //int _units;
+    //float _error;
 };
 
 #endif
diff -r 8516e00ad03c -r f0cdf38c7cfc mbed.bld
--- a/mbed.bld	Fri Jun 18 10:44:36 2010 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-http://mbed.org/users/mbed_official/code/mbed/builds/3944f1e2fa4f