Le FORTH est peut-être avec PAC Opto22 et Linux (3 / 4 étapes)

Étape 3 :

STRUCTURE GÉNÉRALE D’UN PROGRAMME

Maintenant, avoir un outil de gestion de PAC très basique, les fichiers de stratégie de contrôle ont été étudiés en détail, et les informations recueillies sont les suivantes :

  • Tous les fichiers avec l’extension .crn1, .crn2, .crn3, devrait avoir le même nom que le programme « principal »
  • fichier .crn1 contient la ligne : nom du fichier. " PNAME "; où PNAME est le nom de « principale » du programme. Le reste des lignes de ce fichier n’a jamais changé lorsque différents programmes ont été créés
  • .CRN2 fichiers contiennent les noms des tâches ou des « charts » que compose un programme, les variables à utiliser et les e/s broche assignation
  • .crn3 fichiers contient des initialisations : tâches, de variables et de matériel de I/O
  • Il devrait y avoir un fichier .ccd pour chaque tâche qui compose un programme, le nom devrait coïncider avec les informations contenues dans le fichier .crn2

Une stratégie de contrôle d’échantillon « BLINK » a été créée. Il est composé de deux tâches : active/désactive une sortie numérique et incrémente un compteur chaque seconde. L’autre regarde si le compteur est exactement divisible par 5 (modulo 5) et une sortie numérique s’allume si la condition est valide, sinon elle s’éteint

BLINK.crn1

Dans ce fichier, il y a une ligne où se trouve le nom du programme « BLINK ». Le reste de l’apparence de lignes comme une sorte d’assignation de l’espace mémoire pour les variables et les e/s. Aucune modification n’ont été constatées dans ces lignes avec différents programmes téléchargés et analysées.

DERNIER NOUVEAU $$$. COURIR

: NOM DE FICHIER. " CLIGNER DES YEUX ";

1 $VAR 0 * _HSV_SEMA

1024 $VAR 0 * _HSV_TEMP

200 $VAR 0 * _HSV_INIT_IO

IVAR 0 ^ _HNV_INIT_IO

BLINK.crn2

Dans ce fichier, trois choses trouvées :

  • Les tâches qui composent le programme : mise sous tension, slowblink, _INI_IO. Powerup est la tâche par défaut, ne peut être renommé ni supprimé. slowblink a été créé dans le programme du fabricant, et _INIT_IO est probablement est une tâche interne qui initialise le matériel automatiquement.

  • Les variables utilisées dans le programme : countervar et modvar
  • Alias de broche I/O matériel : dans ce cas particulier les broches numériques 0 et 3 ont été assignés alias : DIGITAL_OUT_1 et DIGITAL_OUT_4

0 tâche & _INIT_IO

0 tâche & Powerup

0 tâche & slowblink

IVAR 0 ^ countervar

IVAR 0 ^ modvar

$0000000000000000... 32769 1.000000 0.000000 0,010000 2001 7F000001 $ MBOARD 0 % SELF_RACK SPOINT 0,0 0 % SELF_RACK DE SORTIE

POINT 0 ~ DIGITAL_OUT_1

SORTIE DE SPOINT 0,0 % 3 SELF_RACK

POINT 0 ~ DIGITAL_OUT_4

BLINK.crn3

Ce fichier est un peu plus long que la précédente. On dirait que dans la première partie, tâches et tous les types de variables sont regroupés dans des tableaux et près de l’initialisation de fin de countervar et modvar à 0 sont visibles. Notez également que les broches numériques sont entrées par défaut « 0 », et ceux qui serviront de sorties doit être écrits sur "1" ($... 0009 broches 0 et 3)

: W_INIT_IO CONFIG_PORTS $0000000000000009... PERMET DE SELF_RACK % !

"% SELF_RACK (1/1)" * _HSV_INIT_IO $MOVE 0 ^ _HNV_INIT_IO

PERMETTRE À % SELF_RACK

« Initialisation des variables » * _HSV_INIT_IO $MOVE

0 ^ countervar

0 ^ modvar

« « * _HSV_INIT_IO $MOVE

Fichiers de travail (Powerup.ccd, slowblink.ccd)

Ces fichiers se trouve le code de programme, pour chaque tâche programmée. Il y a deux choses ici : blocs de code et la liste de blocage du code vers la fin.

T: T0

MANNEQUIN

0_0

0_1

0_3

0_5

0_7

0_10

T ; & mise sous tension « T0 SETTASK

Chaque bloc est étiqueté a_b, où a est le numéro de la tâche et b un id de « bloc » à l’intérieur de cette tâche particulière. Numéros de bloc coïncident avec les numéros de bloc illustrés à la demande du fabricant et sont probablement utilisés pour le mode de débogage bloc par bloc.

Voici un exemple d’un bloc de code :

: 1_1

VRAI

1 LIGNE. NUM

^ modvar

1 <

LAND

SI-4 SINON -3 PUIS SAUTER ;

Chaque étiquette est précédée par un signe deux-points (:)), ensuite la ligne. Instruction de NUM précédée d’un numéro de ligne. Le numéro de cette ligne coïncide avec les numéros de ligne figurant dans développement application les directives du fabricant et sont probablement utilisés pour le mode débogage en ligne

Certaines parties du code, sont très proches de suite spécialement l’instruction IF où l’État était avant le mot « IF » !

Un bloc se termine par une instruction de saut, suivie d’un point-virgule (;). Instructions de saut sont relative et non absolue.

Articles Liés

Tippie haut : C’est peut-être le plus amusant chose que j’ai jamais faite

Tippie haut : C’est peut-être le plus amusant chose que j’ai jamais faite

cela tournait sur mon tour d'un petit morceau de noyer claro que j'avais dans la boutique. Il était à l'origine d'un sac de bois de chauffage, que j'ai acheté.Je l'ai tourné dans une quinzaine de minutes, mais il fallait anthère 30 minutes pour obten
Etui de lunettes (peut être coupé laser) en cuir

Etui de lunettes (peut être coupé laser) en cuir

Hi Folks !Même si l'été commence à faiblir (dans l'hémisphère Nord), les jours restent brillants, à l'est, en France ! Donc je viens d'acheter une nouvelle paire de lunettes de soleil, puisque mes précédents avaient trop de rayures. Voici le pourquoi
Programar PAC Opto22 Usando FORTH En Linux

Programar PAC Opto22 Usando FORTH En Linux

CONTROLADORES INDUSTRIALES PAC, LINUX Y PLCCet article est également disponible en anglais en cliquant iciEl soporte para linux que se ofrece un matériel industriel tipo PAC ans PLC, por lo menos en el caso de los fabricantes mas grandes y conocidos
Arduino basé compteur d’énergie solaire PV avec connectivité Xively (peut être surveillée sur android ou iPhone)

Arduino basé compteur d’énergie solaire PV avec connectivité Xively (peut être surveillée sur android ou iPhone)

Ça fait environ deux jours que j'ai fait la génération Arduino PV compteur, mais c'était une erreur de ne pas de prendre des photos étape par étape avant de continuer pour les tests finaux. Et c'était une idée terrible pour afficher la boîte de brute
Vous-même avec une 3d modèle (peut-être votre famille trop)

Vous-même avec une 3d modèle (peut-être votre famille trop)

pour créer un modèle 3d de vous-même à l'aide d'une imprimante 3d, vous devez utiliser un programme tel que ceux de la famille 123D pour créer un modèle 3d de vous-même. Vous devez prendre plusieurs photos de vous sous différents angles et mettez-les
Ce qui peut être fait de couvercles de bouteille ?

Ce qui peut être fait de couvercles de bouteille ?

https://www.youtube.com/watch?v=a-Icu7fOCao&feature=youtu.beÉtape 1: C'est un projet très simple et ne nécessite qu'un cure-dent plus léger, casquettes, de bouteille en plastique, ciseaux ! Je montre comment modifier un bouchon de bouteille en plasti
Peinture peut four avec accessoires, perdu mousse coulée et bien plus encore !

Peinture peut four avec accessoires, perdu mousse coulée et bien plus encore !

Quand j'ai commencé à la fonte d'aluminium, l'objectif final était de construire une tour à partir de zéro suite à l'atelier d'usinage gingembre dave de série métal de rebut de livres. Maintenant que j'ai effectué sur le tour, je n'aurez pas besoin n
Motoriser votre fenêtre avec une perceuse sans fil

Motoriser votre fenêtre avec une perceuse sans fil

Dans ce instructable vous apprendrez comment réutiliser une ancienne perceuse pour motoriser une fenêtre curseur afin qu'il peut être actionné par une personne qui est trop court pour atteindre le loquet de la fenêtre ou n'a pas assez de force pour a
Nature Tracker : mappage de paramètre avec l’Edison Intel

Nature Tracker : mappage de paramètre avec l’Edison Intel

Données sont belles. Et loin de « détruire la poésie de l'arc-en-ciel » (Keats), une approche scientifique peut nous aider à mieux apprécier les choses que nous avons plaisir à faire. Ici, nous avons pris un kit de goodies Ito et été assemblés dans u
Comment obtenir la musique gratuite de PP sans les programmes spéciaux en plus peut-être de windows media 9 10

Comment obtenir la musique gratuite de PP sans les programmes spéciaux en plus peut-être de windows media 9 10

cette instructable va vous apprendre comment faire pour obtenir gratuitement de la musique auprès du fournisseur de la playlist gratuit, projet Playlist.(Mon premier Instructable ftw!)Les choses que vous aurez besoin :1. un ordinateur (duh)2. Interne
Ce qui peut être fait de bouteille en plastique couvercles

Ce qui peut être fait de bouteille en plastique couvercles

https://www.youtube.com/watch?v=n3XvtZWPvUA&feature=youtu.beÉtape 1: je montre comment modifier un bouchon de bouteille en plastique dans une buse. Le bouchon de la bouteille en plastique est chauffé sur un briquet jusqu'à ce qu'il devient malléable
Smart personnel thermomètre avec Arduino

Smart personnel thermomètre avec Arduino

Cette instructable est préparée dans le cadre de notre mission pour TfCD (technique au service du Concept Design) cours de TU Delft. Ce instructable qui suit est préparé par :Bo Koperdraat : 4209567Karthik mandon : 4501578Dans ce instructable vous ap
[Hack] lumière dans la nuit et peut-être même partie

[Hack] lumière dans la nuit et peut-être même partie

Cette instructable a été effectuée pour la nuit de construire de janvier avec le néon Cool.Taiwan est plein des néons, un cadre très naturel pour la culture locale : les marchés de la nuit animée, la multitude de magasins, les sites touristiques, le
Arduino OLED thermomètre et hygromètre avec DHT11 pour les débutants

Arduino OLED thermomètre et hygromètre avec DHT11 pour les débutants

Salut! Je vais vous montrer comment faire un Arduino OLED thermomètre et hygromètre * avec DHT11.L'OLED aujourd'hui, nous allons utiliser est 1.3 pouce de taille, caractéristiques 128 × 64 pixels et utilise le Bus SPI. Sur l'étape suivante, vous trou