Okay, roughly one out of three issues answered... remaining are:
- no serial setup
- why you use the not operator, what you hope it does.. oh sorry you did answer that but you are completely off base. Not even close. '!' is for use in boolean expressions, and shouldn't normally be used with integers.