Adatum
Ноя
18
2015

Arduino и iButton читаем номер в String

ib
Предлагаю вашему вниманию коротенький Скретч который выводит серийный номер устройства iButton в виде строковой переменной.

1233
Скретч.

#include <OneWire.h>

int IButtonPin = 9;                  // пин iButton
String IButtonNum, IButtonNumOld; 

OneWire ds(IButtonPin);

long previousMillis = 0;
long interval = 5000;                // задержка при нажатии iButton 1000 = 1 секунда
 
void setup() {
 pinMode(IButtonPin, INPUT);
 Serial.begin(9600);
}
 
void loop() {

  unsigned long currentMillis = millis();
  byte addr[8];


  
  if (ds.search(addr)) {
     IButtonNum = String(addr[0],HEX)+String(addr[1],HEX)+String(addr[2],HEX)+String(addr[3],HEX)+String(addr[4],HEX)+String(addr[5],HEX)+String(addr[6],HEX)+String(addr[7],HEX);
     if (String(IButtonNumOld) != String(IButtonNum)){ IButtonNumOld = IButtonNum; }
     if (String(IButtonNumOld) == String(IButtonNum) && currentMillis - previousMillis > interval){previousMillis = currentMillis; Serial.println(IButtonNum);   }
     ds.reset_search();
  }


}

Похожие статьи

Оставить комментарий