DS18S20 - High-Precision 1-Wire Digital Thermometer Block Diagram

A while a go I stumbled across Maxim’s AN214 Tutorial 214 which explains in an abstract level how to implement a 1-wire master bus interface using a microcontroller UART peripheral. This is ideal for me because quite often I use the DS18S20 to quickly add a calibrated temperature sensor onto my clients projects. Unfortunately, the projects that I tend to work on are either low power or the microcontroller is having to drive varies time critical task. Either way, bit banging the 1-wire interface always ended been an issue. Assuming that you have a spare UART on your micro, this is a good way to avoid bit banging the interface.

The Maxim’s tutorial does do a good job at explaining how the 1-wire works and it does give enough information for someone with experience to write their firmware. That said, I’ve writing portable a portable library using Maxims which should help anyone wanting to see a code example of this project or at the very least safe you sometime from having to write the logic.

I writting a portable library takes advance of the
one as well as the and how to UART implementation works so I’m not going to bother to go into the details of 1-wire. Inst

Considering that the alternative would be bit bang your own (which isn’t too bad) or Using  I’ve implemented a set of libraries for communicating with devices through a 1-wire interface. The libraries are portable and should be easy to implement on your target device.

Table Of Content
Table of content


Git Repository

git clone https://github.com/Opticalworm/EmbeddedLibrary.git


Depending on the microcontroller, you can potentially reduce component count. For example, if the microntroller has an open-collector that you can enable on the UART TX line, then you only need a pull-up resistor and you good to go.

1-wire Integrated open-drain buffer

Leave a comment.

Please note that all comments are moderated by a person and so it may take some time for it to show on the site. if you have an urgent issue then please feel free send us a message via our contact form below.

Leave a Reply

Your email address will not be published. Required fields are marked *


This site uses Akismet to reduce spam. Learn how your comment data is processed.

Get in touch.

Whether you have an existing project that you need help with or if you want us to take care of the whole design process, we are happy to talk to you about your project and see if we can help. At the very least we should be able to point you in the right direction.

Comments or questions are welcome.