Відповісти

Введіть повідомлення і натисніть Надіслати
Параметри

Назад

Огляд теми (нові повідомленні вгорі)

Зинэтула
2015-11-16 10:51:12
Алексей2015 пише:

подскажите как задать значение не целое число, а например 31.4 при таком параметре значение округляется до 31.

Никак. В датчик можно записать только целое число плюс знак.
Либо можно использовать 2 регистра - TH и TL для одного значения. Однако тогда нужно будет организовывать алгоритм сравнения в МК, иначе датчик не будет отзываться на команду Alarm. Вернее будет, но некорректно.

Зинэтула
2015-11-16 10:51:02
Алексей2015 пише:

подскажите как задать значение не целое число, а например 31.4 при таком параметре значение округляется до 31.

Никак. В датчик можно записать только целое число плюс знак.
Либо можно использовать 2 регистра - TH и TL для одного значения. Однако тогда нужно будет организовывать алгоритм сравнения в МК, иначе датчик не будет отзываться на команду Alarm. Вернее будет, но некорректно.

vvr
2015-10-12 18:06:04

наверное переделать библиотеку

Алексей2015
2015-10-12 01:01:44
BlockThor пише:

Если речь идет о Ардуино, то в библиотеке DallasTemperature есть пример: 'Alarm' и 'AlarmHandle' где описываются эти процедуры.

  // alarm when temp is higher than 30C
  sensors.setHighAlarmTemp(insideThermometer, 30);
  
  // alarm when temp is lower than -10C
  sensors.setLowAlarmTemp(insideThermometer, -10);

подскажите как задать значение не целое число, а например 31.4 при таком параметре значение округляется до 31.

BlockThor
2015-07-07 06:28:04

Если речь идет о Ардуино, то в библиотеке DallasTemperature есть пример: 'Alarm' и 'AlarmHandle' где описываются эти процедуры.

  // alarm when temp is higher than 30C
  sensors.setHighAlarmTemp(insideThermometer, 30);
  
  // alarm when temp is lower than -10C
  sensors.setLowAlarmTemp(insideThermometer, -10);

NoName
2015-06-11 10:24:13

http://datasheets.maximintegrated.com/en/ds/DS18B20.pdf

Figure 7. DS18B20 Memory Map


/* modify scratchpad register to set temp sampling resolution */
  ds.reset();
  ds.select(addr);    
  ds.write(0x4E);          // write scratchpad (starts at byte 2)
  // note:  set high/low temp alarms by changing the next two values 
  ds.write(0x4B);    // default value of TH reg (user byte 1)
  ds.write(0x46);    // default value of TL reg (user byte 2)
  // uncomment one of the following
  //ds.write(0x7F);    // 12-bit sampling resolution (default)
  //ds.write(0x5F);    // 11-bit
  //ds.write(0x3F);    // 10-bit
  ds.write(0x1F);    // 9-bit

  ds.reset();
  ds.select(addr);
  ds.write(0x44,1);    // start conversion, with parasite power on at the end

  delay(1000);     // maybe 750ms is enough, maybe not
  // we might do a ds.depower() here, but the reset will take care of it.

источник
http://www.netfluvia.org/code/ds18B20_test.pde

работает, иль нет - неведомо

lin
2015-06-11 09:54:05

Добрый день.

Подскажите, пожалуйста, как записать значение пределов температуры TH и TL в датчик ds18b20.

Підвал форуму