lerameur
- 11th November 2011, 05:17
Hi,
Running into a little problem. When My Gosub functions ends, it does not return. Instead it stalls there and Both buttons do not work.. I have RB2 for Select and RB3 for Next (buttons) when it finished the minutes, the LCD freezes and nothing happens... some have a clue??
'/////////////////////////////////////
'/////////// SetProgrammerTime ////////////
'/////////////////////////////////////
SetProgrammerTime:
pause 400
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Time?"
lcdout $FE,$C0, "Next or Select"
pause 300
if NextOption=1 then return 'button NextOption,
wend
ThisYear = 2011
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Year"
lcdout $FE,$C0, dec4 ThisYear
pause 300
if NextOption=1 then ThisYear = ThisYear +1 'Button on NextOption (PORTB.3)
wend
ThisMonth= 1
Pause 500
while Selection = 0 'exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Month"
lcdout $FE,$C0, dec2 ThisMonth
pause 300
if NextOption=1 then ThisMonth=ThisMonth +1 : pause 50
if ThisMonth > 12 then ThisMonth = 1
wend
ThisDay= 1
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Day"
lcdout $FE,$C0, dec2 ThisDay
pause 300
if NextOption=1 then ThisDay=ThisDay +1
if ThisDay > 31 then ThisDay = 1
wend
ThisHour= 0
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Hour"
lcdout $FE,$C0, dec2 ThisHour
pause 300
if NextOption=1 then ThisHour=ThisHour +1
if ThisHour > 59 then ThisHour = 1
wend
ThisMin= 0
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Min"
lcdout $FE,$C0, dec2 ThisMin
pause 300
if NextOption=1 then ThisMin=ThisMin +1
if ThisMin > 59 then ThisMin = 0
wend
Pause 300
'I2CWRITE SDApin,SCLpin,$D0,$00,[$00,ThisMin,ThisHour,$6,ThisDay,ThisMonth,ThisYear ,$00] ' Writes to DS1307
'Pause 30
return
Running into a little problem. When My Gosub functions ends, it does not return. Instead it stalls there and Both buttons do not work.. I have RB2 for Select and RB3 for Next (buttons) when it finished the minutes, the LCD freezes and nothing happens... some have a clue??
'/////////////////////////////////////
'/////////// SetProgrammerTime ////////////
'/////////////////////////////////////
SetProgrammerTime:
pause 400
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Time?"
lcdout $FE,$C0, "Next or Select"
pause 300
if NextOption=1 then return 'button NextOption,
wend
ThisYear = 2011
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Year"
lcdout $FE,$C0, dec4 ThisYear
pause 300
if NextOption=1 then ThisYear = ThisYear +1 'Button on NextOption (PORTB.3)
wend
ThisMonth= 1
Pause 500
while Selection = 0 'exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Month"
lcdout $FE,$C0, dec2 ThisMonth
pause 300
if NextOption=1 then ThisMonth=ThisMonth +1 : pause 50
if ThisMonth > 12 then ThisMonth = 1
wend
ThisDay= 1
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Day"
lcdout $FE,$C0, dec2 ThisDay
pause 300
if NextOption=1 then ThisDay=ThisDay +1
if ThisDay > 31 then ThisDay = 1
wend
ThisHour= 0
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Hour"
lcdout $FE,$C0, dec2 ThisHour
pause 300
if NextOption=1 then ThisHour=ThisHour +1
if ThisHour > 59 then ThisHour = 1
wend
ThisMin= 0
Pause 500
while Selection = 0 ' exit when selection becomes 1 Selection is a buton and next1 is another button on the main panel
lcdout $FE,1, "Set Min"
lcdout $FE,$C0, dec2 ThisMin
pause 300
if NextOption=1 then ThisMin=ThisMin +1
if ThisMin > 59 then ThisMin = 0
wend
Pause 300
'I2CWRITE SDApin,SCLpin,$D0,$00,[$00,ThisMin,ThisHour,$6,ThisDay,ThisMonth,ThisYear ,$00] ' Writes to DS1307
'Pause 30
return