Skip to main content

Commande : Vérifier la mémoire pour l'application active

Une fonction: La commande lance le vérification de la mémoire pour l'application active.

Appel: Déboguer menu

Exigence: Le CODESYS Memory Tools le paquet est installé. L'application est en mode en ligne.

La zone mémoire de l'application active est vérifiée pour les éléments suivants :

Les résultats de la vérification sont affichés dans la vue des messages. Les violations des critères de test sont répertoriées comme des avertissements.

Tableau 1.

ID d'avertissement (si le critère de contrôle n'est pas rempli)

Critère de vérification

MC0001

BOOL variables doivent être soit 0 ou 1 dans la mémoire.

MC0002

Les variables d'énumération ne peuvent prendre que des valeurs définies dans l'énumération.

MC0003

Les variables d'un type de sous-plage ne peuvent prendre que des valeurs comprises dans cette sous-plage.

MC0004

Toutes les chaînes doivent se terminer par zéro.

MC0005

Les pointeurs doivent toujours pointer vers des adresses dont l'alignement est correct.

Les pointeurs doivent pointer vers des emplacements de mémoire dont l'adresse est alignée sur la granularité du type, ou 0 ou -1.

MC0006

Les pointeurs doivent pointer vers la mémoire de l'application.

Les pointeurs de fonction du projet doivent pointer vers la mémoire gérée par CODESYS Memory Tools.

Les pointeurs de fonction vers des POU de bibliothèque ou des POU externes sont exclus car ils peuvent se trouver dans une mémoire externe.

MC0007

Les pointeurs doivent faire référence à des variables du type correct (par exemple, lorsqu'un POINTER TO STRING pointe vers un REAL).

MC0008

Cohérence interne des structures du compilateur

Les adresses des pointeurs de fonction doivent être cohérentes en interne.

MC0009

Cohérence interne des structures du compilateur

Les variables d'interface et les pointeurs des tables de fonctions doivent être cohérents en interne.

MC0010

Cohérence interne des structures du compilateur

MC0011

Le code téléchargé ne doit pas avoir changé depuis le téléchargement.

Le code des POU compilés doit rester inchangé.

Remarque : Les POU compilés avec des points d'arrêt sont exclus de la vérification car le code est manipulé pour ceux-ci lors de l'exécution.

MC0012

Les valeurs d'une constante ne doivent pas avoir changé depuis le téléchargement.

Variable de type de bloc constant (STRUCT, ARRAY, etc.) doivent rester inchangées par rapport à leurs valeurs d'initialisation.

MC0013

Cohérence interne des structures du compilateur

MC0014

Cohérence interne des structures du compilateur



Double-cliquer sur un message ouvre le Mémoire vue où l'emplacement correspondant est surligné en orange.

Le Mémoire la vue peut également être ouverte au moyen du Affichage → Mémoire commande.

Le contrôle peut être limité au moyen du 'memory check' attribut.