Skip to main content

A tiny Temperature Data Logger using PIC12F683 and DS1820

For past few days, I have been working on a PIC12F683 based temperature data logger. I just finished this project and the product is available on my PIC12F683 blog page.This is how the finished product looks like.

It reads temperature values from a DS1820 sensor and stores in its internal EEPROM. It has 3 selectable sampling intervals (1 sec, 1 min, and 10 min). Three tact switches provides 7 functions, and this runs with 3  AAA batteries. It can be interfaced to a PC through serial port, and also has an ISCP header for firmware upgrade.

Read rest of the project. 


  1. hi
    after few trails the output shows 255 c even though the max range is 125c
    i have used the exact code which u had posted in electronics lab
    plz help me out

  2. Try the new code posted here.

    If you see readings 255, it means you are not reading data from the temperature sensor correctly.

  3. ya 255 is just an add of the pic i guess
    and thanks for the link ;)

  4. and does it mean that the pic has blown off????

  5. and what should if i get the reading as 255

  6. Hey Vivek,
    Tell me more detail about the symptoms. Do you mean that you are receiving all 255 values on hyperterminal window? If so, then PIC is alright. What sensor are you using? This program works for DS1820? If you are using DS18B20, this will require some modifications.

  7. yes i am getting all 255 values....
    i am using DS1820
    i tried rebuilding the whole ckt again and i put the new code from the link u gave even after that i am getting as 255 on hyperterminal..
    is it an hardware problem ?????

  8. This could be a hardware problem, but I believe your PIC is working because it is sending data to PC. Check your connections with DS1820 and microcontroller.

  9. hi sir,
    i am santhosh doing a final year project in temperature data logger
    i want to know how to add a external memory to increase the memory capacity

  10. Many pic circuit ideas on

  11. If you need a professional pcb board for your circuit. Try 5pcs 2 layer boards (max size 50x50mm) for only 37.95$ with shipping!


Post a Comment

Popular posts from this blog

Contact less tachometer using PIC16F628A

Tachometer is a device that gives you the information about the rotational speed of any shaft or disc. It usually measures the speed in revolutions per minute (RPM). Today we are going to make a simple tachometer that could measure the rotation speed of a disk without making any physical contact (that's why it is contact less) with the rotating object. The range of this tachometer is 0 - 9999 RPM and displays the RPM on a multiplexed 4-digit seven-segment display. Of course, we are going to do this project on our usual PIC16F628A development board.

Infrared sensor
Contact-less measurement of RPM will be achieved through an IR sensor. An IR diode will send a beam of infrared towards the rotating disc, and any reflected pulse will be received by a photo diode. The resistance of a photo diode drops drastically when exposed to infrared. An infrared is reflected by a white surface and absorbed by the dark ones. The test disc for this project is shown below. You can see the …

Experiment No. 2 : Push Button and Seven Segment Display Interface

In this experiment, we will program the PIC16F628A as an UP/DOWN Decade Counter. The count value will be displayed on a Seven-Segment Display and will be incremented/decremented by two push buttons on the board.

Experimental Setup:
The board has built in interface for a multiplexed 4-digit seven segment display (HS-5461AS2 from will select only one digit by connecting a Digit Select pin to Vcc, as shown in figure below. A black jumper wire is used for this purpose. The seven segments will be driven through PORTB (already wired on the board). Connect Push Buttons (PB3 and PB4) to RA1 and RA0 female headers using jumper wires.

PIC16F628A Development Board

The development board we are going to make for our experimental microcontroller PIC16F628A will look like this. Here are the features it is going to have:
Access to all I/O pins through female header pins4 Push Buttons for Input4 LEDs for OutputAn LCD Interface PortA 4-digit Seven-Segment Display InterfaceLCD Backlight Switch and Contrast AdjustmentICSP Programming (Very Important)