Vous êtes sur la page 1sur 19

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38 Le but de ce tutoriel

Le but de ce tutoriel est de vous aider à créer votre première application pour les automates Siemens de la série S7 300.

INDEX

1.

2.

3.

1.

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

2.

1.

2.

3.

4.

5.

1.

2.

cet OB1? 2. Les DB 3. Les FC 4. Les FB 5. Les variables 1. Organisation

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

PRESENTATION

- Mis à jour Mercredi, 03 Février 2010 12:38 PRESENTATION Que renferme une application d'automatisme? En

Que renferme une application d'automatisme? En général elle possède au moins une configuration matérielle, une table de mnémoniques et un programme exécutable. Pour la série des API S7-300, un seul logiciel est nécessaire pour gérer tout cela. Il s'agit du SIMATIC MANAGER Nous n'aborderons pas ici l'installation de ce programme. Nous nous concentrerons sur son utilisation.

.

Pré requis

Vous devez disposer d'un ordinateur équipé d'une version de STEP 7 de SIEMENS. Si vous lisez ce tutoriel , c'est que vous possédez déjà un ordinateur

tutoriel , c'est que vous possédez déjà un ordinateur SIMATIC MANAGER le couteau suisse de SIEMENS

SIMATIC MANAGER le couteau suisse de SIEMENS

Eh oui ce logiciel est multi taches! Du coup il peut paraitre compliqué voire fouillis au premier abord. Voila à quoi il ressemble en utilisation courante :

il peut paraitre compliqué voire fouillis au premier abord. Voila à quoi il ressemble en utilisation

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

Les menus sont bien fournis certes , mais rapidement nous allons défricher tout cela. Allez on y va

Pour et de lancer double l'application cliquer dessus. , il suffit de trouver l'icône de STEP 7

dessus. , il suffit de trouver l'icône de STEP 7 Après ouverture du programme , votre

Après ouverture du programme , votre écran doit ressembler à ceci :

du programme , votre écran doit ressembler à ceci : Simatic Manager est une application Windows.
du programme , votre écran doit ressembler à ceci : Simatic Manager est une application Windows.

Simatic Manager est une application Windows. Certains menus vous sont donc déjà familiers.

Le menu FICHIER par exemple nous permet de gérer les fichiers application Step7. C'est ici que l'on crée, ouvre, ferme ou archive les projets.

de gérer les fichiers application Step7. C'est ici que l'on crée, ouvre, ferme ou archive les

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

Le menu AFFICHAGE permet de personnaliser son espace de travail. C'est la que l'on choisi d'afficher ou non les barres d'outils et d'états, que l'on paramètre le rendu de l'affichage des données (taille des icones, filtrage). C'est ici aussi que se cache la commande actualiser.

Le menu FENETRE, comme sur toute application multi fenetre windows, gère la disposition de l'affichage,permet de basculer d'un projet ouvert vers un autre

Le menu EDITION, comme son nom l'indique, vous donne accès aux commandes usuelles de Copier

/

coller

,

sélection et autres Propriètés . Il possède également quelques instructions spécifiques à SIMATIC MANAGER.

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38 Nousmenu lesEDITIONdécouvrirons le temps venu.

Nousmenu lesEDITIONdécouvrirons le temps venu. Quoi ? Que dites vous ? Vous ne voyez pas ce fameux

.premièrePour pouvoirapplication.découvrirAllezle restec'est partides menus!

CRÉATION NOUVELLE APPLICATION

. Vous avez raison! En fait je vais trop vite

de SIMATIC MANAGER, nous devons créer notre

Exécuter la commande [Fichier][Nouveau] comme indiqué ci-dessous

La fenêtre Nouveau Projet doit apparaitre :

ci-dessous La fenêtre Nouveau Projet doit apparaitre : Indiquer le nom de votre nouvelle application (cadre

Indiquer le nom de votre nouvelle application (cadre rouge). Le mieux est de laisser les choix

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

par défaut pour les autres paramètres (le cadre bleu vous indique le chemin de sauvegarde de votre application). Il ne reste plus qu'à valider votre saisie par [OK]

LA STATION SIMATIC

La première chose à ajouter dans notre projet vide, c'est une station Simatic. Il en existe trois principales :

-

Automates de la série 300 : Station Simatic 300

-

Automates de la série 400 : Station Simatic 400

-

Pupitres Opérateurs (ou HMI, pour Human Machin Interface) : Station HMI

Notre choix se fera en fonction du matériel à programmer. Il est possible de déclarer plusieurs stations dans le même projet. Par exemple un API et un afficheur. Dans ce tutoriel nous prendrons une station SIMATIC 300.

Dans ce tutoriel nous prendrons une station SIMATIC 300. Que voyez vous ? Oui effectivement deux

Que voyez vous ? Oui effectivement deux objets supplémentaires sont apparus. Pour l'instant

oubliez les, nous les retrouverons plus loin dans le tuto

apparus. Pour l'instant oubliez les, nous les retrouverons plus loin dans le tuto chaque chose en

chaque

chose en son temps.

apparus. Pour l'instant oubliez les, nous les retrouverons plus loin dans le tuto chaque chose en

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

La configuration matérielle

La structure de notre projet est maintenant déclaré. Vous ne remarquez rien ? Où ? Eh bien dans la façon de présenter le projet. Cela ne vous rappelle t il pas quelque chose de connu ? Si bien sur l'explorateur de fichiers de Microsoft Windows. Eh bien oui , l'application Siemens sera représentée par une structure "Répertoires/fichiers". Le répertoire racine porte le nom de notre application. Le premier sous-répertoire, lui, prend le nom de la station que nous venons de créer. En explorant ce nouveau répertoire , que découvrons-nous?.Un fichier "MATERIEL". Editons le sans plus attendre. Un double-click gauche" et hop l'éditeur de configuration matérielle s'ouvre. Il se nomme aussi HW Config.

matérielle s'ouvre. Il se nomme aussi HW Config. Lui aussi est découpé en deux colonnes. A

Lui aussi est découpé en deux colonnes. A gauche nous aurons la configuration matérielle de notre application. A droite, comme vous pouvez déjà le voir, se situe le catalogue de tous les appareils SIEMENS intégrables dans notre configuration.

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38 j'allaistrèsde ilautresy

j'allaistrèsde

ilautresy

03 Février 2010 12:38 j'allaistrèsde ilautresy

NousAvantest(vousdeJel'alimentationchoisiscartesexclusivementvoicisavezde commencer,standarts.unedoncceux??CPUà quelapour312têtel'onquelqueslesdansd'unveraalimentationsracklepluspetitescataloguevide

De-quoi se compose une configuration automate en générale ?

Des- cartes de sorties TOR (sorties de type booléen)

DesIl estsortieségalementANApossible(sorties d'ajouterde type analogique,d'autres dispositifs,par exemplemais0nous- 10 yVolts)reviendrons plus tard !

Heucatalogue.l'ajouterdroiteenversfait(luiPascelleunet tousrack lesgauche.compliqué venir.produitsn'yDoncendualacatalogue)qu'un!premièreIl seilchose,cachesuffit dedansc'estle "Tirer-coller"dele "dossier"choisir unRACK-300.derackla colonnedans lePourde

C'est bien joli tout cela mais sur quoi on monte toutes ces cartes ?

Des- entrées ANA (entrées de type analogique, ex signal 4-20 mA)

Des- cartes d'entrées TOR (pour Tout Ou Rien - entrées de type booléen)

Unedu -choixCPUde(Lelacerveaustation audedépart)notre configuration, ici obligatoirement une série 300

Une- alimentation (non indispensable, l'alimentation en +24 VCC pouvant être externe)

rappelez-vous

en +24 VCC pouvant être externe) rappelez-vous restetard).précisions.,

restetard).précisions.,

Illeetn'y2lapluspoura,positionneenLequ'àlesfait,rackCPUlequeremplir.surdisposeet8l'emplacementleemplacements3 pourde 11lesemplacements.modules2.pourEt

lesspéciauxtypesLe 1

. Nous n'en mettrons pas, je vous rappelle qu'elle est optionnelle.

mettrons pas, je vous rappelle qu'elle est optionnelle. Voila ce que cela doit vous donner :

Voila ce que cela doit vous donner :

est optionnelle. Voila ce que cela doit vous donner :

Maintenantdevezdonnetutorielvoiraccèsspécifiqueapparaitresiàvoustout(désolé"doubleunlatasfenêtredecliquezparamètragesde propriétésgauche" surdedelalalaCPU.ligneCPU2Cette312.du rackCettepartiedemultitudeferanotresansconfiguration,d'ongletsdoute l'objetvousvousd'un

chaqueCliquez

doncchosesurenlesonboutontemps)propriétés:

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38 Uneseraautomatede sélectionnernouvelleun

Uneseraautomatede sélectionnernouvelleun réseauaurafenêtrel'adresseMPIMPI(1)(protocoleapparait.dans2 etlaleNouspropriétairelisteréseauetallonsdesevaliderdeconnecternommeraSiemenspar leMPI(1).notreboutonse rapprochantCPUPourOK.à unconcrétiserréseau,du PROFIBUS).parla liaisondéfautNotre, ceil suffit

PROFIBUS).parla liaisondéfautNotre, ceil suffit OnMaintenantTORsur.

OnMaintenantTORsur.

validelesDC24Vdifférenteségalementajoutons(Pourentréesinfo,doncla fenêtrecelaunedeveutlacartepropriétéscartedired'entréespourqu'unedequ'elleslatensionlogiques.CPUindiquentafincontinueOndechoisitlaunrefermer.deétat24unlogiqueVoltsmoduledevraégalde être16à 1entrées(ouappliquéeVRAI)

é e s ( o u a p p l i q u é e V

Maintenantfenêtre des sipropriétésvous "doublede notrecliquezcartegauche"ETOR.surVoilala lignequi est4 dufait.rack, vous devez voir apparaitre la

lignequi est4 dufait.rack, vous devez voir apparaitre la Cevoirpremierce que cacheonglet l'ongletnous

Cevoirpremierce que cacheonglet l'ongletnous renseigne"adressessur: la désignation et les caractéristiques de la carte. Allons

la désignation et les caractéristiques de la carte. Allons 2 2 4 4 8 1 6

2

244816323284 EntréesSortiesSortiesEntréesSortiesANAANATORTORTOR

16TypeEntréesde carteTOR

Commeon débutel'onenpouvait0 et onlefinisupposer,en 1! C'estcettequoipageça?nous indique les adresses utilisées par la carte. Ici

Rappeleznécessaire16On* y1vient,bit =vous2pouronoctetsy, mémorisernotrevient.= 1cartemotl'étatest dedetypetous16cesentréesbits. Tout Ou Rien. Calculons la plage mémoire

REMARQUEmodifiable.Attention,départ).variées.deIlOccuponsnesorties)resteEnC'estnousplusnousAnalogiquesIleffet,est:iciSiqu'àn'avonsàalorsparill'optionprésentfautenregistrerexempleimposésavoirque(4-20"ValeurdesurvolélaquemAqueparetpartieparquitterpassif,levouschaquel'éditeurlogiciel.défautlogicielle.paramètrerezl'éditeur0-10V,typesystème"dedeconfiguration

L'adressageindiqueIlvosParToutesl'étendueestplagesexempleimportantlesquedecartesd'adressages,nousdeslaici,plagedeencartesd'entrées/sortiesdisposonsremarquerremplaçantmémoired'entrées/sortiesindépendammentdesqueutilisée.leentrées0l'adresseseparconfigurent12,seE 0.0ildefaisantdeseradébut{adressel'emplacementdepossibleaulaestformatmêmedébut}modifiable.d'utiliserOctet,manière.physiqueà E 1.7{adresseleslaVousconfigurationentréesCedespouvezquicarteschangeE12.0deainsisurfin}nousàc'estle.choisirE13.7.rack.

(ouet

Nb octets utilisés

16

)dematérielconfiguration.leesttypecochée,disposede(Initiationsignall'adressageLedematérielpropriétésdesavonscartesnousn'estestdifférentesd'entréesdéclaré,ditplusau

LA PARTIE LOGICIEL

Introduction

Maintenant que nous disposons d'une configuration matérielle, voici à quoi doit ressembler notre application

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38 Comme l'arborescence nous le montre,

Comme l'arborescence nous le montre, un répertoire [programme] est associé à la CPU 312. Celui ci contient,entre autre, un sous répertoire [Blocs]. C'est ici que le programme exécutable par l'API est placé. pour l'instant oubliez le répertoire [sources]

Un programme en blocs

Si vous sélectionnez le répertoire [blocs], vous vous apercevez qu'il contient un fichier nommé OB1. En fait on parlera ici de bloc de programmation OB1 et non de fichier.

Et c'est quoi cet OB1?

C'est en fait le programme minimum imposé par STEP7. OB veut dire Organisation Bloc. Les instructions qu'il contient sont exécutées cycliquement par l'automate.

Il existe d'autres Blocs d'organisation. Chacun d'eux à une fonction particulière. Le tableau ci-dessous vous montre quelques exemples parmi les plus utilisés. Suivant le type de CPU utilisé, vous n'aurez pas accès à tous les blocs OB.

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

 

Bloc

Fonction

 

OB1

Cycle libre:

Exécution cyclique.Dés

que le cycle est achevé, il redémarre.

OB35

Alarme cyclique :

Fréquence d'exécution

défini par l'utilisateur dans les propriétés de la CPU utilisée. Par défaut l'OB35

OB82

Alarme de diagnostic:

utilisée. Par défaut l'OB35 OB82 Alarme de diagnostic: Appelé lorsqu'un module avec fonction de diagnostic

Appelé lorsqu'un module avec fonction de diagnostic pour lequel vous avez validé l'alarme de diagnost

OB85

pour lequel vous avez validé l'alarme de diagnost OB85 Erreur exécution programme: Appelé - lorsqu'il

Erreur exécution programme:

Appelé

-

lorsqu'il existe un événement de déclenchement pour un OB d'alarme, mais que l'OB ne peut pas

-

lorsqu'une erreur est apparue lors de l'accès au bloc de données d'instance d'un bloc fonctionnel

-

lorsqu'une erreur est apparue lors de la mise à jour de la mémoire image du processus (module a

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

OB101

Redémarrage:

à jour Mercredi, 03 Février 2010 12:38 OB101 Redémarrage: La CPU exécute une mise en route

La CPU exécute une mise en route

après mise sous tension

-

lorsque vous actionnez

le commutateur de mode de fonctionnement à partir de STOP "RUN"/"RU

-

 

après sollicitation par une fonction de communication

-

 

après synchronisation en mode multiprocesseur

-

 

dans un système H, après couplage (uniquement sur la CPU de réserve)

OB121

H, après couplage (uniquement sur la CPU de réserve) OB121 Erreur de programmation: Est appelé sur

Erreur de programmation:

sur la CPU de réserve) OB121 Erreur de programmation: Est appelé sur détection d'erreur de programmation.

Est appelé sur détection d'erreur de programmation. Permet d'éviter le crash de la CPU sur erreur. A m

OB122

d'éviter le crash de la CPU sur erreur. A m OB122 Erreur d'accès à la périphérie:

Erreur d'accès à la périphérie:

erreur. A m OB122 Erreur d'accès à la périphérie: Est appelé sur détection d'erreur lié à

Est appelé sur détection d'erreur lié à la configuration matériel (crash d'une carte I/O par exemple, voire

Il est possible d'implémenter votre programme directement dans ces différents OB au moyen des instructions de base (portes logiques, temporisations, bascules RS, etc). Cette solution n'est toutefois pas très recommandée. Il est préférable de structurer votre exécutable. C'est pour cela qu'il existe d'autres types de blocs. Les principaux se nomment FC, FB et DB.

Les DB

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

Les DB (DATA BLOCK) sont appelés communément les blocs de données. Contrairement aux

blocs de code, ils ne contiennent pas d'instructions. Ils sont utilisés pour l'enregistrement des données utilisateur. Leur taille varie suivant le nombre et le type de variables déclarées. On rencontre principalement deux types de DB, les globaux et les instances. Les DB globaux servent à l'enregistrement de données utilisateur pouvant être utilisées par tous les blocs de

codes (OB, FB, FC,

uniquement de mémoire permanente pour les données gérées par le FB. Par opposition avec les DB globaux, on peut dire que ce sont des "DB locaux".

).

Le DB d'instance, lui, est toujours lié à un FB (bloc de fonction). Il sert

Les FC

Le FC (FUNCTION) se nomme aussi fonction. Pour être exécuté, le FC doit être appelé par un autre bloc de code du programme utilisateur. C'est un bloc de code sans mémoire. Les variables utilisées sont perdues à l'achèvement de la fonction. Les FC peuvent faire appel à des blocs de données globaux pour la sauvegarde des données. Comme une fonction ne dispose pas de mémoire associée, vous devez toujours indiquer des paramètres effectifs pour elle et vous ne pouvez pas affecter de valeur initiale aux données locales.

Utilisation :

-

implémentation d'équations mathématiques,

-

programmation de morceaux de programmes répétitifs (discordance actionneur, demarrage moteur,etc)

-

Découpage exécutable en sous-programmes

Les FB

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

FB est l'abréviation de "Function Bloc". Pour résumer on peut dire que les FB sont des FC possédants des variables rémanentes! Ces variables sont dites statiques. Elles sont conservées dans des DB. Ainsi chaque fois qu'un FB est appelé par un autre bloc de code, on doit lui associer un bloc de données. Ce type d'appel est plus communément nommé une instance, Le DB associé est donc naturellement un DB d'instance.

Utilisation

-

programmation de codes répétitifs

-

sous-programmes (organisation du projet complet)

-

macro fonction paramètrable (ex: gestion communication, traitement de défauts, gestion moteurs avec normal/secours, etc)

Les variables

Organisation de la mémoire.

La mémoire utilisateur de l'automate est répartie en différentes zones dont :

-

La mémoire image des entrées (E) : Zone de stockage de l'état des entrées physiques de la configuration matérielle. Cette zone est mise à jour avant chaque début de cycle de l'OB1.

-

La mémoire image des sorties(A) : De même, cette zone stocke l'état des sorties physiques. La mise à jour s'effectue après chaque fin de cycle de l'OB1.

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

-

Les mémentos (M) : appelée zone mémoire de l'automate. Non dédiée, elle est libre d'utilisation.

-

Les blocs de données (DB) : zones regroupant des variables définies par l'utilisateur.

-

Les temporisations et les compteurs (T/Z) : Zone réservée pour le fonctionnement des temporisations et des compteurs

-

Les blocs de code (FB, FC, SFB, SFC) : zone utilisée pour le fonctionnement des blocs fonctions.

Les formats d'adressage

Dans une application Step7 vous rencontrerez quatre formats de variable de base :

-

Le bit (ou un bool)

-

Le byte (ou un Octet)

-

Le Word (ou un mot)

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

-

Le Double Word (ou le double mot)

Quelque soit la zone mémoire utilisée, vous retrouverez ces formats. Seule la syntaxe de programmation changera.

Vous ! Vous vous allez rappelez voir c'est le simple découpage !! Si si de la mémoire décrit un peu plus haut? Non

!! Si si de la mémoire décrit un peu plus haut? Non Adressons ensemble la première

Adressons ensemble la première information booléenne des zones E, A, M et DB. Cela nous donne :

-

E 0.0 pour la mémoire des entrées (ce qui correspond le plus souvent à la 1ere entrée logique

de la 1ere carte d'entrées TOR)

-

A 0.0 pour la mémoire des sorties (de la même façon, cela peut être la 1ere sortie logique de

l'automate)

-

M 0.0 pour la mémoire automate (on entend souvent parler de la zone mémento. Ici c'est un

mémento BOOL)

-

DB1.DBX0.0 pour la zone DB1 (DB1 est le nom du bloc de donnée contenant ce bit )

DB1 (DB1 est le nom du bloc de donnée contenant ce bit ) Pourquoi Nous y

Pourquoi Nous y reviendrons cette syntaxe en en fin x.y de chapitre. Pour l'instant passons au format byte

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

Si je vous dit que la syntaxe pour adresser le BYTE d'entrée 0 est tout simplement EB 0, pouvez-vous deviner les 3 autres ? Facileee

Nous aurons AB 0 , MB 0 et DB1.DBB 0

De même, le WORD d'entrée 0 s'écrivant EW 0 , nous avons respectivement les AW 0, MW 0 et DB1.DB

W

0

Et pour finir le Double WORD d'entrée 0 se nommant ED 0, nous aurons respectivement les

double WORD A

D

0

D 0, MD0 et DB1.DB

respectivement les double WORD A D 0 D 0, M D 0 et DB1.DB INFORMATION IMPORTANTE

INFORMATION IMPORTANTE : Pour chaque zone mémoire, le x 0.0 est un élément du xB 0,

lui Un même petit schéma élément valant du xW mieux 0, lui même qu'un long élément discours du xD 0. Eh oui .

même petit schéma élément valant du xW mieux 0, lui même qu'un long élément discours du
même petit schéma élément valant du xW mieux 0, lui même qu'un long élément discours du

Premiers pas en step7 (en cours de rédaction)

Écrit par Phyloo Lundi, 17 Décembre 2007 12:07 - Mis à jour Mercredi, 03 Février 2010 12:38

REMARQUE : Avec ce schéma, il est facile de découvrir que la variable WORD 1 est "à cheval" sur les emplacements WORD 0 et WORD 2. Arhggg !

En résumé si vous ne voulez pas avoir de soucis de chevauchements de variables, il faudra utiliser 1 word sur 2 , ou un double word sur 4. Comment ça ?? Bah oui les word concécutifs indépendants seront W0, W2, W4, etc. Les double word indépendants seront les D0, D4, D8, etc

REMARQUE 2 : Avec ce schéma tout devient clair également sur l'adressage des BOOL! Non

? Bah si voyons , regardez bien

est composé des BOOL M0.0 à M0.7 Oui et le MB1 ?? il démarre à M 0.8 ??? Eh ben non,trop facile!!! Le MB1 est composé des BIT M1.0 à M1.7.

chaque BYTE est composé de huit BIT. Ainsi le BYTE MB0

Allez on fait une pause , non ?

des BIT M1.0 à M1.7. chaque BYTE est composé de huit BIT. Ainsi le BYTE MB0