I have to say i am astounded by the reponses. A bit more information i have an old water meter that i have removed the broken dial from the middle. Placed a hall effect switch in the cavity and have it flasheing an led everytime the cylinder turns. Every 50 turns equals 1 gallon. This helped me find a slow leak and fix it. (The new water meter outside does not have slow flow indicatior until the sun has turned the display on.) I then wanted to see how much we use on a typical day - hence this project. Whilst i whole heartedly thank you for your help. I also am now a little more cunfused and need to digest my options. I need to look at Input / output again and whetheri can wait for the whole code to finish before the switch gets polled, seems like a delay ! Regarding the bounce, i origianally had problems witht he hall switch bouncing. but i now used a relay for the switch to contact, and have yet no bounce problems when flashing a led with this setup. However this was before i put a PIc in the picture. Once again i thank you. I will look at other languages too, but i think as my book is all Assembly I am going to sturggle redesigning the lcd part. Thanks again Paul Firstly THANK YOU TO ALL. The book i have demonstrates the Assembly language and each chapter increases the knowledge depth. However i think i do not understand as much as i think i do. I am Proud to say i figured the inputs and outputs and using the data sheet assigned one of the input/output pins for the RB4 Switch and RB5 for the LED. I am currently looking at Interupts to see if i can make head nor tail of them and hopefully the interupts would then break into the program and do what it should do if the switch is pressed. If this works i guess i put my increment count into the interrupt routine and then when its finished or back to 0 or off then the rest of the program would continue. Right now the header for the book puts A and B as outputs, do i just change RB4 to a input or and if so how without setting bank B to all inputs. This has stumped me for a an hour now. I have a day off and i said to my wife i would paint but this has been taking me over all day so far. Thanks again Paul Just to update, I am hopelessly new and lost. I was a VB basic guy years ago and remember a little of what I need to do but not a lot. I know I will need a place to store the count, and will have a call list up to 50 so when the count equals 10 I will have a call to put 1+0 on the screen. How do I : Create a place to store the count. Increment 1 to this count when the state changes compare the stored count so when it equals 50 I increment the lcd by 1 I was hoping to find a piece of code out there in Google land to help me but as of yet I have not been successful. However I do feel a sense of achievement coming this far. Any help is of course appreciated. Thanks Paul Hi all. I am trying to make a switch counter that would put on the lcd screen how many times /50 the switch has been opened/closed. I purchased the Book PIC In Practice and have been successful in building the LCD circuit 2x20 and able to put the words I need to the screen. (after spending hours trying to get it to work) What I need and am hopelessly lost at this point, is to count the switch on A0 and put the amount on to the screen. using the lcd Code in the above book. I beg you, this is not for any other purpose than to count the water gallon usage in my house using a hall effect switch on the meter. Can anyone help me with code/ suggestions etc Thanks in advance Paul -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist