I've always been interested in being able to measure weather data - you know, try to find that perfect week statistically for vacation in the Pacific Northwest. After pricing the various stations on the market I found they were pretty much beyond my means for home and hobby use. Since I thought originally that I wanted to learn about assembly language programming on the 8051 (and its many cousins), I thought developing a stand-alone weather station based on a 8051 microcontroller using assembly language would be a fun learning project. Well, it was fun for a while until I understood the scope of the project.
The system requirements for my homebrew weather station originally were:
Be based on a 8051 family microcontroller variant with 64K of EPROM external program memory
CompactFlash card for storing data weather data when offline
1-wire based, using the same components as the original Dallas Semiconductor
Weather Station kit, that is no longer in production. The 1-wire scheme
is clever in that only a single conductor (plus ground) is needed to transmit
both data and power the devices on the "MicroLan" 1-wire bus.
Some time ago I saw this article (somewhat dated now) about networked temperature monitoring and got jazzed about using the 80C400 TINI microcontroller,(which IS 8051-based) from Dallas/Maxim. This chip is impressive:it has a TCP/IP stack in ROM, has a 1-wire master built in, and runs a Java virtual machine. (Which means I am now in the process of learning Java.) The links above are unfortunately mostly empty for now; I'll be putting stuff in them as the project continues (hopefully).