Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
assets
.catalog_metadata
OneWireReading.fzz
OneWireReading.ino
README.md

README.md

#219 DS18S20/OneWireReading

Basic interrogation of a DS18S20 using 1-wire protocol

DS18S20

▶️ return to the LEAP Catalog

Notes

The DS18S20 is an inexpensive 1-Wire digital thermometer with a range of -55°C to +125°C, at ±0.5°C Accuracy from -10°C to +85°C.

It comes in TO-92 packaging and may be powered directly (using three pins), or take parasitic power from the data line (using two pins).

Basic Operation

The sequence of operations boils down to this:

  • Send a search request on the wire to find a device
  • Get the device address and ensure the family code is as expected
  • Issue conversion command (0x44)
  • Wait for conversion, then read the conversion scratchpad from the device
  • Process the data received

Family Codes

Model Code
DS18S20 0x10
DS18B20 0x28
DS1822 0x22

Example Code

The OneWireReading.ino sketch is a basic demonstration based on the examples on the OneWire Arduino playground page.

I've refactored a little to make the code more readable.

It constantly polls the DS18S20 device and logs to the serial output. Here's an example:

screenshot

Construction

Breadboard

The Schematic

The Build

Credits and References