Créer un répertoire sur carte mémoire SD
Cette instruction FP crée le répertoire sur la carte mémoire SD, dont le nom est spécifié par s1_FullDirName.
Entrée
Nom du répertoire : spécifie le nom du répertoire.
Le drapeau "Accès mémoire SD actif" (sys_bIsSDMemoryAccessActive) devient TRUE lorsque le déclencheur EN de l’instruction de carte mémoire SD devient TRUE et reste TRUE jusqu’à ce que l’exécution de l’instruction soit terminée. Pendant ce temps, les autres instructions de carte mémoire SD ne peuvent pas être exécutées.
Un sous-répertoire ne peut être créé directement sous son répertoire parent qu’avec une instruction. Pour les répertoires de niveaux hiérarchiques inférieurs, les répertoires parents doivent être créés en premier.
Si le répertoire qui doit être créé existe déjà, aucune erreur n’apparaît.
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU.Le même en-tête de POU est utilisé pour tous les langages de programmation.
VAR
bStart: BOOL:=FALSE;
(*activates the instruction*)
END_VAR
Lorsque la variable bStart passe de FALSE à TRUE et lorsque la variable système sys_bIsSDMemoryAccessActive n’est pas TRUE, la fonction est exécutée. Elle crée le répertoire 'Test' dans le répertoire racine de la carte mémoire SD.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_VARIN,,'\Test\',21,2,23,4,);
B(B_CONTACT,,bStart,3,1,5,3,R);
B(B_CONTACT,,sys_bIsSDMemoryAccessActive,11,1,13,3,N);
B(B_F,FP_SD_CREATE_DIR!,,23,0,33,4,,?DEN?Ds1_FullDirName?AENO);
L(1,2,3,2);
L(13,2,23,2);
L(5,2,11,2);
L(1,0,1,6);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF DF(bStart)AND not sys_bIsSDMemoryAccessActive then
FP_SD_CREATE_DIR('\Test');
END_IF;