Hello community,
I'm yet another new Arduino (Duemilanove) user and I'm kind of stuck with a strange phenomena I see when using the analog inputs.
Trying to get familiar with the Arduino hard and software I setup some basic circuitry with (in order of adding them to the hardware)
LCD on D2,D3,D4,D5,D10,D11,D12,
Button on D8,
LED on D13
Temperature sensor (LM35DZ) on A0,
Photo transistor (BPX25) on A1,
I2C output extender (PCF8574A) on A4 and A5
While testing each individual circuit all seemed well. I display current/min/max temperatures on the lcd and added the button to reset these values because they sometimes showed extreme values (did not think much of it at the time).
Today I was trying to detect some audio (just show the values on the LCD) on A2 but when I connected the audio to the Arduino input I noticed that my temperature readings went nuts.
I did another test with the photo transistor and (finally) noticed that a high light value also influenced the temperature values (that's why the reset button was added).
I've found out that when I ground unused analog input pins these pins don't report fluctuating values anymore (since they are no longer floating).
But whatever I try I can't get the light values to not interfere with the temperature readings. To me I looks like cross-talk (as seen in RF-circuits) but I can not explain how this can occur with the "slow" DC-signals I'm using.
To make thing even stranger I also see values (up to 14 on a 1024 scale) on the grounded analog pins when I generate full input (5V) on the input connected to the photo transistor...
Has anybody else encountered this strange behavior before? And more important: what causes it and how can it be solved?
Any advice is appreciated.
Mario H