## HiPi::Interface::DS18X20

The HiPi::Interface::DS18X20 module provides simple read access for 18S20 and 18B20 temperature sensors connected to the W1 kernel device driver for the 1 Wire bus.

It uses HiPi::Device::OneWire as a backend.

## Class Methods

##### HiPi::Interface::DS18X20->list_slaves();

        Filters a call to HiPi::Device::OneWire->list_slaves()
        to return only devices in the families 10 and 28
        ( temperature sensors of the types 18S20 and 18B20 )

## Object Constructor and Methods

##### my $tmp = HiPi::Interface::DS18X20->new( id => $uniqueid);

        Returns a new instance of the HiPi::Interface::DS18X20 class
        for the temperature device with the unique 1 Wire ID $uniqueid.

        You can optionally provide additional key => value pairs
        specifying
             correction  -  to be added to the temperature
                            value returned from the device.
                            default = 0
             divider     -  applied as a divider to the
                            value returned by the device
                            This is useful if you want to
                            convert the raw value from
                            your device to an actual temperature
                            within this module.
                            default = 1

        my $tmp = HiPi::Interface::DS18X20->new(
              id         => $uniqueid,
              correction => 775,
              divider    => 1000,
         );

##### $tmp->correction( $newval );

        returns the value passed as 'correction' to the constructor.
        if $newval is specified, the correction value is set.

##### $tmp->divider( $newval );

        returns the value passed as 'divider' to the constructor.
        if $newval is specified, the divider value is set.

##### $tmp->temperature();

        returns the value read from the sensor added to the correction
        value, divided by the divider value:

        return ( $sensorval + $correction ) / $divider;

        With default values this is simply
        return ( $sensorval + 0 ) / 1;

HiPi Modules Copyright © 2013 Mark Dootson