Poutant...... c'Est simple comme bonjour!!!
DEVICE 12F629
All_Digital = TRUE
DIM VH AS BYTE
DIM LH AS BYTE
DIM EJECTDVD AS BYTE
DIM BOUTON AS BYTE
'****************************************************************
' DEFINITION DES ENTREES ET SORTIES *
'****************************************************************
Symbol SW1 = GPIO.4
Symbol LEDVERTE = GPIO.5
Symbol LEDROUGE = GPIO.6
SYMBOL NANDPROTECT = GPIO.7
CALL LECTURE_EEPROM
IF NANDPROTECT = 0 THEN GOTO NAND_PROTECT_ENABLE
IF NANDPROTECT = 1 THEN GOTO NAND_PROTECT_DISABLE
'****************************************************************
' CONFIGURATION DU BOUTON EJECT *
'****************************************************************
BOUTON_ENFONCER:
SW1 = 0
If SW1 = 1 Then GoTo VALEURSW1
Return
VALEURSW1:
For BOUTON = 0 To 255
DelayMS 20
If SW1 = 0 Then EJECTDVD = 1 : Return
Next BOUTON
GoTo VALEURSW1
'****************************************************************
' CONFIGURATION DU NAND PROTECT ENABLED *
'****************************************************************
NAND_PROTECT_ENABLE:
IF SW1 = 0 THEN GOTO NAND_PROTECT_ENABLE
Call BOUTON_ENFONCER
If EJECTDVD = 1 Then NANDPROTECT = 1 : EWRITE 1, [NANDPROTECT] : HIGH LEDVERTE : GOTO NAND_PROTECT_DISABLE
GOTO NAND_PROTECT_ENABLE
'****************************************************************
' CONFIGURATION DU NAND PROTECT DISABLE *
'****************************************************************
NAND_PROTECT_DISABLE:
IF SW1 = 0 THEN GOTO NAND_PROTECT_DISABLE
Call BOUTON_ENFONCER
If EJECTDVD = 1 Then NANDPROTECT = 0 : EWRITE 1, [NANDPROTECT] : HIGH LEDROUGE : GOTO NAND_PROTECT_ENABLE
GOTO NAND_PROTECT_DISABLE
'****************************************************************
' LECTURE DU PARAMETRE POUR NANDPROTECT *
'****************************************************************
LECTURE_EEPROM:
NANDPROTECT = EREAD 1
RETURN
END