Go Down

### Topic: Help me for solve my code (Read 4677 times)previous topic - next topic

#### PeterH

#15
##### Feb 08, 2013, 07:35 pm

We won't know until the OP replies, but I can't help feeling that there is some confusion between 2400 hours (ie midnight) and the need to allow for 24 hours in the day.

Yeah, the initial mention of 800,1200,2000,2400 Hrs does sound more like times in a 24-hour period rather than a 2400 hour period, but the code does definitely allow for 2400 hours rather than 24 hours. Perhaps the OP is confused about the distinction.

#### shitokung

#16
##### Feb 09, 2013, 03:43 am
Thanks all

I don't want to change Hrs to Day

I have to use Hr:min:sec
so maximum of Hr is 2400 Hrs for usage.
now I try to use button on board like this

http://arduino-info.wikispaces.com/LCD-Pushbuttons

#### UKHeliBob

#17
##### Feb 09, 2013, 08:13 am
So, the alarm is to go off after 800, 1200, 2000 and 2400 hours.

This is going to take a long while to test !
Please do not send me PMs asking for help.  Post in the forum then everyone will benefit from seeing the questions and answers.

#### shitokung

#18
##### Feb 14, 2013, 10:57 am
Hi all
I want to add code ..is
i want to use 5v from pin3, pin3=HIGH for count

Code: [Select]
`if(pin3==1){static unsigned long lastTick = 0;    if (millis() - lastTick >= 1000)     {        lastTick = millis();                       second++;    }    // Move forward one minute every 60 seconds    if (second >= 60) {        minute++;        second = 0; // Reset seconds to zero    }    // Move forward one hour every 60 minutes    if (minute >=60) {        hour++;        minute = 0; // Reset minutes to zero    }    if (hour >=2500) {        hour=0;        minute = 0;         // Reset minutes to zero    }}`

it is not working my display is no counting  00:00:00 always

My goal is use 5V from pin3 order for couning if pin3 = 0v , pin3 is stop counting and if pin3 = 5V is counting.

What should i do new code ??

#### HazardsMind

#19
##### Feb 14, 2013, 12:27 pm
So...
if(pin3 == HIGH) count++;
else do nothing.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories

#### PaulS

#20
##### Feb 14, 2013, 12:56 pm
Code: [Select]
`if(pin3==1){`
Do you have, somewhere above this, a line like:
Code: [Select]
`pins3 = digitalRead(state3);`

It seems silly to store a state in a variable named pin3. It seems silly to name a variable pin3, and then store the value 1 in it. Therefore, it seems silly to expect pin3 to equal 1.
The art of getting good answers lies in asking good questions.

#### PeterH

#21
##### Feb 14, 2013, 01:03 pm

So...
if(pin3 == HIGH) count++;
else do nothing.

Code: [Select]
`if(digitalRead(pin3) == HIGH) count++;`

#### HazardsMind

#22
##### Feb 14, 2013, 02:02 pm
Quote
So...
if(pin3 == HIGH) count++;
else do nothing.

Its just pseudo code, he needs to fill in the gaps.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories

#### PeterH

#23
##### Feb 14, 2013, 02:51 pm

Its just pseudo code, he needs to fill in the gaps.

Using the pin number instead of the value read from the pin is a very common mistake. Even if you meant it to be pseudo code (which is not obvious, since that is syntactically valid C++) it's not doing the OP any favors by encouraging them to make that mistake.

#### HazardsMind

#24
##### Feb 14, 2013, 03:01 pm
Ok, I just thought he would be able to tell the difference between using the pin number and the actual value of the pin.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories

#### shitokung

#25
##### Feb 15, 2013, 03:20 am
Thanks all

I have done.   ^ - ^

#### HazardsMind

#26
##### Feb 15, 2013, 03:22 am
Is good yes?
My GitHub:
https://github.com/AndrewMascolo?tab=repositories

#27
YES. ^ ^

#### shitokung

#28
##### Feb 23, 2013, 05:39 am
I have new idea but i cant

Code: [Select]
`if (minute == 1)    { switch (lcd_key)               // depending on which button was pushed, we perform an actioncase btnLEFT:     {for(j=0;j<1;j++)       lcd.setCursor(0, 1);     lcd.print("      Timer     ");     digitalWrite(led0, LOW);      digitalWrite(led1, LOW);      digitalWrite(led2, LOW);     break;         }   }`
i want to press hold switch LEFT for 30 sec and then it is working go on if dont press hold it can't do that.

#### HazardsMind

#29
##### Feb 23, 2013, 05:53 am
You have to use a timer. Press the button once to start the timer and then keep it held. Using "millis() - timer > 30000UL", it will check to see if the state has changed within that period. If it DOES change within that period, it will NOT do the action. Only when the first state and second state are equal will it do the action.
My GitHub:
https://github.com/AndrewMascolo?tab=repositories

Go Up