Comment programmer le kit velleman k8056
vincent65
-
Fredleemans Messages postés 23 Statut Membre -
Fredleemans Messages postés 23 Statut Membre -
Bonjour,
je voudrais savoir comment programmer le kit k8056 de velleman et avec quel logiciel.
merci d'avance
je voudrais savoir comment programmer le kit k8056 de velleman et avec quel logiciel.
merci d'avance
1 réponse
-
Ici on est sur un site de programmation, alors ... il suffit d'écrire le programme!
Lorsque l'on connait le protocole de cette carte, rien n'est plus facile (n'importe quel language permettant d'accéder au port 'com' fera l'affaire).
Paramètres du port série:
2400, 8 bits, sans parité, 1 stop
On ne fait qu'émettre, il n'y a pas de réception.
Le fabriquant conseille d'émettre 2 fois la commande.
Commande:
1) CHR$ (13)
2) Adresse de la carte (1...255)
3) Instruction (1 caractère ASCII)
4) Adresse (1..255) ou n° relais ('1'..'9' ASCII)
5) checksum (complément 2 de la somme des 4 bytes précédentes+ 1)
Instructions:
‘E’ : Arrêt de secours de toutes les cartes, n'importe l'adresse.
(Attention: des relais activés par des entrées collecteur ouvert ne seront pas arrêtés par cette commande).
‘D’ : Montrer adresse. Toutes les cartes montrent leur adresse de manière binaire. (LD1: MSB, LD8: LSB)
‘S’ : Régler un relais. L'instruction 'S' doit être suivi par le numéro du relais '1' à '8'. ('9' règle tous les relais à la fois)
‘C’ : Effacer un relais. L'instruction 'C' doit être suivi par le numéro du relais '1' à '8'.('9' efface tous les relais à la fois)
‘T’ : Basculer un relais. L'instruction 'T' doit être suivi par le numéro du relais '1' à '8'.
‘A’ : Changer l'adresse actuelle d'une carte. L'instruction 'A' doit être suivi par la nouvelle adresse (1..255)
‘F’ : Mettre toutes les cartes à l'adresse 1 (défaut)
‘B’ : Envoyer un byte. Permet de vérifier l'état de tous les relais en une seule instruction, en envoyant un byte contenant l'état de relais pour chaque relais. (MSB: relais1, LSB: relais8)
Exemple de programme:
Voir le site internet (http:\\www.velleman.be).
Bon courage.-
-
Ce qu'il faut voir c'est qu'une commande est une suite de 5 octets:
1) Le caractère CHR$ (13) c'est à dire 0x13 en hexadécimal (sert de synchronisation pour le récepteur),
2) L'adresse de la carte: comme on peut mettre 255 cartes, chacune doit être identifiable, donc chacune possède une adresse différente (1 par défaut et modifiable par la commande 'A'),
3) L'instruction en ASCII à choisir entre 'E', 'D', 'S', 'C', 'T', 'A', 'F' et 'B',
4) Un paramètre qui peut être en hexa (de 1 à 255) s'il s'agit d'une adresse, ou en ASCII s'il s'agit d'un n° de relais (de '1' à '9' donc de 0x31 à 0x39 en hexa),
5) Un checksum qui permet au récepteur de vérifier si la séquence reçue n'a pas souffert de la transmission. Apparemment il suffit de faire l'addition des 4 octets précedents, d'en faire le complément à 2 et d'ajouter 1, et bien sûr de réduire à une longueur d'un octet. -
-
-
-