@AndNovak

Как правильно считать серийный номер IButton?

На работе понадобилось считывать в большом количестве серийные номера с iButton. Необходимо считывать все 16 символом с ключа. Для решения задачи решил использовать arduino nano. Прочитал несколько статей про протокол 1-ware. тут вопросов не возникло. По программе вопросов тоже не возникло использовал вот это код:
#include "<"OneWire.h">"
OneWire ds(4);
byte addr[8];
void setup() {
Serial.begin(9600);
}
void loop() {
if (ds.search(addr)){
for(int i=7; i>-1; i--){
Serial.print(addr[i],HEX);
Serial.print(" ");}
Serial.println();
ds.reset_search();
}
}
Код работает, но считывает числа не совсем так как хотелось. Например число 01 считывает как 1,00 как 0 Почему это происходит я понимаю, а вот как устранить, нет. Подскажите, пожалуйста
  • Вопрос задан
  • 591 просмотр
Решения вопроса 1
a_volkov1987
@a_volkov1987
Инженер-схемотехник
If (addr[i] <0x10) Serial.print("0");
Serial.print(addr[i],HEX);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы