Last summer, [Rajendra Bhatt] built himself a simple PIC-based temperature monitor with data logging abilities and recently got around to sharing it on his site. The sensor is based on a PIC12F683 micro controller and measures the ambient temperature on a set interval, storing the values on the MCU’s internal EEPROM.
He used a Maxim DS18B20 temperature sensor, which communicates with the PIC over a 1-wire bus. The sensor is read based upon the interval chosen by the user, and can be configured to measure the temperature every second, every minute, or every 10 minutes. The data is stored on the aforementioned EEPROM and can be uploaded to a computer via a serial connection. The PIC has the ability to store 254 readings before the data must be cleared from the device.
It’s a great beginner project, and has plenty of room for improvement. As [Rajendra] points out, an external EEPROM could be added to expand the recording capacity, and it would be nice to have a real-time clock on hand for accurate time stamping. If we were to build one ourselves, a means of wireless data transfer would be first on our list of potential enhancements.
I’d love to see this expanded to SD card storage.
Small SD cards (<1GB) are fairly easy, since they can be used over a SPI link and has a small blocksize.
Even FAT16/32 is possible with low end micro controllers, so the card can be read in a PC.
Mora, I’ve interfaced a micro with 4GB SD cards. All non micro SD cards can be interfaced with SPI. Per the spec, micro SD cards aren’t guaranteed to support SPI, but I haven’t found one that doesn’t.
Yes up to 4GB can work, but over 1GB there can be a few problems.
http://en.wikipedia.org/wiki/Secure_digital#SD_cards_.28non-SDHC.29_with_greater_than_1.C2.A0GB_capacity
by any chance, can you also post the code for VB? Thanks