You don't need the interrupt (timer1) for your project, the Arduino system is already having that infrastructure for you (millis() function).
There is absolutely no code in your sketch that would produce output on your LCD. Try with the examples of the LiquidCrystal library and get familiar with it's API.
I know there is no code that would write to the lcd, my question is where to put the lcdWrite in the code so that it will work.
And i do need the interupt timer, as i want the light to come on at certain times of the day. Thats why i have the hours, minutes and seconds.
i know that writing to lcd takes more time than other processes, so puting it in the interupt makes it go nuts after a while - it starts to display wierd and wonderful things, but thats not what i want
so in short, the timer interupt controls the light, the void loop() will control everything else that is not on a "schedule"
well the thing is a did have it without the timer interupt, but using delays of 12 hours didnt work out and proved to be unreliable + it was holding up other things that i wanted the program to do.
So the solution was to have the timer interupt control the light (12h on and 12h off) and the loop do everything else.
My problems started when i tried to write to the LCD with the interupt timer.
i just want to know, how can i write to the LCD the hours, minutes, temp and if the light (relay) is on or off
Get rid of your interrupt and put everything into the loop(). Take a look at the BlinkWithoutDelay example to get an impression of how to do timed things without using the delay() function.
No.
You can keep most of the code of your interrupt function, just add the "blink without delay" functionality at the very top, and call the function each time through "loop()".
The hh:mm:ss variables don't need to volatile now, but keep them global for convenience.
"loop()" will get called a lot, and it probably isn't necessary to calculate the temperature every time through (each time you do an "analogRead", it costs you 100us - temperature probably ins't going to change all that much. Maybe update once every five or ten seconds?)).