Inviato il: 24/01/2015 11:19:51
|
Dopo il settaggio di valori a due cifre, questo codice permette l'inserimento di valori a 4 cifre esempio codici.
Il sistema e' simile al precedente con la differenza che in questo caso le cifre sono 4 anziche' 2 ed il valore finale puo' essere anche "0000"
Si parte quindi dalla prima cifra che lampeggia e con il bit5 si incrementa il valore di 1,con il bit3 si conferma passando alla successiva e cosi via fino all'ultima cifra.
PRAGMA NO_NUM_LINE
'CODE NAME: SET VALUE WITH FOUR NUMBER VERSION 1_0
'AUTHOR: ECOLOGIX 1971
'STARTED : 24_01_2015
'FINISHED: 24_01_2015
'PPTEA VERSION: 4_2_4
'MEMORY OCCUPED: 242 TOKEN
'BIT5 ADD FLASHING DIGIT
'BIT3 MOVE DIGIT
CONSTANT NUM_DIGIT=4
DIM DIGIT(NUM_DIGIT) AS WORD
DATA 1,&H18,10,2,&H19,10,3,&H1A,10,4,&H1B,10
CODE=1971 'INITIAL CODE
STR_CODE=RIGHT("0"&CODE,4)
REPEAT
A++
DIGIT(A)=MID(STR_CODE,A,1)
UNTIL A<4
READ N_DIGIT, POS,MAX
LCDCLEAR
X=DIGIT(N_DIGIT)
:WAITING
DIGIT(N_DIGIT)=X
IF INPBIT(5)=1 THEN :ADD
IF INPBIT(3)=1 THEN :MOVE
:SHOWING
LCDPOS=POS
LCDWRITE=" "
WAITMS 75
LCDPOS=&H11
LCDWRITE="CODE = "&DIGIT(1)&DIGIT(2)&DIGIT(3)&DIGIT(4)
WAITMS 75
GOTO :WAITING
:ADD
X++
IF X=MAX THEN :RESET_
GOTO :SHOWING
:RESET_
CLR X
GOTO :SHOWING
:MOVE
IF N_DIGIT=(NUM_DIGIT) THEN :FINISH_SET_CODE
READ N_DIGIT, POS,MAX
X=DIGIT(N_DIGIT)
GOTO :SHOWING
:FINISH_SET_CODE
LCDPOS=&H21
LCDWRITE="SAVED CODE"
END
</pre>
|