Only had a few hours to work on the project today, but I didn’t let that slow me down.
I revised the interface for setting the date, it now works like the channel namer, opposed to how it worked before.
Before:
User could move the cursor left and right, and had to press a third button to select which value to edit, then the user could increase/decrease the value and press the third button to save the new value.
After:
User can only move the cursor from left to right, wrapping at the far-right to the far-left… this is using button 3… Buttons 1 and 2 increase/decrease the value under the cursor, saving it each time.
Added a new ‘screen’ to the display, it cycles through the temperature channels individually now, displaying their names.
Added a new interface for enabling and disabling channels. This effects which channels are displayed by the above mentioned screen.
The code now supports up to ten channels.
I found the source of the intermittent temperature readings by examining the recommended circuit versus what I had built. Maxim recommends a 200 ohm resistor to be placed in series with VCC for the MAX1668 … so, after doing that – no more random drop outs … weird eh?
I also discovered, when writing a rapid fire string of bytes to the eeprom, it likes you to wait ~10ms after each byte … which is mentioned in the eeprom datasheet, but I keep forgetting that.