Renvoyer le nombre de kOctets disponibles sur la carte SD
Cette instruction FP calcule la capacité disponible en kilooctets sur la carte mémoire SD et enregistre le résultat dans d_kBytes.
Sortie
Nombre de kilooctets disponibles
Voir également Introduction aux instructions de carte mémoire SD.
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.
Le drapeau "Accès mémoire SD terminé" (sys_blsSDMemoryAccessDone) est FALSE lorsque l’instruction est exécutée, et devient TRUE et reste TRUE lorsque l’instruction est terminée.
FALSE : lorsque l’instruction a été exécutée sans erreur.
TRUE : lorsqu’une erreur est apparue lors de l’exécution de l’instruction.
Utilisez sys_iSDMemoryAccessErrorCode pour vérifier le code d’erreur.
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 instrution*)
udiFreeSdSpace: UDINT:=0;
END_VAR
La fonction est exécutée lorsque la variable bStart passe de FALSE à TRUE. Elle calcule le nombre de kilooctets disponibles sur la carte mémoire SD et enregistre la valeur dans d_kBytes.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_F,FP_SD_GET_FREE_KBYTES!,,18,0,31,4,,?DEN?AENO?Cd_kBytes);
B(B_VAROUT,,udiFreeSdSpace,31,2,33,4,);
B(B_CONTACT,,sys_bIsSDMemoryAccessActive,10,1,12,3,N);
B(B_CONTACT,,bStart,2,1,4,3,);
L(1,2,2,2);
L(4,2,10,2);
L(12,2,18,2);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF bStart AND not sys_bIsSDMemoryAccessActive then
FP_SD_GET_FREE_KBYTES(udiFreeSdSpace);
END_IF;