Ecriture sur une Puce RFID en Visual basic
Zeke_52
Messages postés
42
Date d'inscription
Statut
Membre
Dernière intervention
-
khalilmaster -
khalilmaster -
Bonjour, nous sommes 2 étudiants à être sur un stage sur les Puces RFID.
On nous a demandé de réaliser un programme en VB qui permet de lire les données d'une puce RFID. On affiche les données dans une feuille Excel.
La lecture marche très bien mais nous avons beaucoup de problèmes pour réaliser l'écriture.
Voilà le code que nous avons fait pour l'écriture :
Private Sub Ecriture_Click()
'Procedure d'écriture du TAG
longueur = Len(Cells(27, 11))
reste = 56 - longueur
For k = 1 To 56
If k <= longueur Then
tableau_char(k) = Asc(Mid(Cells(27, 11), k, 1))
Else
tableau_char(k) = 32
End If
Next
'Trame pour l'écriture du tag se situant dans le champ de l'antenne.
chaine_ecriture = Chr(1) & Chr(0) & Chr(87) & Chr(66) & Chr(0) & Chr(56) & Chr(1) & Chr(tableau_char(1)) & Chr(tableau_char(2)) & Chr(tableau_char(3)) & Chr(tableau_char(4)) & Chr(tableau_char(5)) & Chr(tableau_char(6)) & Chr(tableau_char(7)) & Chr(tableau_char(8)) & Chr(tableau_char(9)) & Chr(tableau_char(10)) & Chr(tableau_char(11)) & Chr(tableau_char(12)) & Chr(tableau_char(13)) & Chr(tableau_char(14)) & Chr(tableau_char(15)) & Chr(tableau_char(16)) & Chr(tableau_char(17)) & Chr(tableau_char(18)) & Chr(tableau_char(19)) & Chr(tableau_char(20)) & Chr(tableau_char(21)) & Chr(tableau_char(22)) & Chr(tableau_char(23)) & Chr(tableau_char(24)) & Chr(tableau_char(25)) & Chr(tableau_char(26)) & Chr(tableau_char(27)) & Chr(tableau_char(28)) & Chr(tableau_char(29)) & Chr(tableau_char(30))
chaine_ecriture = chaine_ecriture & Chr(tableau_char(31)) & Chr(tableau_char(32)) & Chr(tableau_char(33)) & Chr(tableau_char(34)) & Chr(tableau_char(35)) & Chr(tableau_char(36)) & Chr(tableau_char(37)) & Chr(tableau_char(38)) & Chr(tableau_char(39)) & Chr(tableau_char(40)) & Chr(tableau_char(41)) & Chr(tableau_char(42)) & Chr(tableau_char(43)) & Chr(tableau_char(44)) & Chr(tableau_char(45)) & Chr(tableau_char(46)) & Chr(tableau_char(47)) & Chr(tableau_char(48)) & Chr(tableau_char(49)) & Chr(tableau_char(50)) & Chr(tableau_char(51)) & Chr(tableau_char(52)) & Chr(tableau_char(53)) & Chr(tableau_char(54)) & Chr(tableau_char(55)) & Chr(tableau_char(56)) & Chr(4) & Chr(13)
MSComm1.Output = chaine_ecriture
End Sub
On écrit le mot dans une cellule excel, et grâce à un tableau, on sépare les caractères pour les convertir en ASCII et ensuite les envoyer au lecteur. Au début de la trame le 1 correspond au bit de start, 87 66 corrrespond au code WB (Write Block), 56 correspond à la longueur des données, et 1 correspond au numéro du bloc.
La variable "reste" correspond aux espaces qu'il faut mettre pour complèter l'ensemble de la mémoire de la Puce.
Mais rien ne marche. Pourtant nous avons essayé de transmettre exactement la même trame qu'envoie la console du lecteur pour l'écriture et ça ne marche toujours pas. Parfois ça plante même.
Quelqu'un sait-il pourquoi ça ne marche pas. SVP Aidez nous.
On nous a demandé de réaliser un programme en VB qui permet de lire les données d'une puce RFID. On affiche les données dans une feuille Excel.
La lecture marche très bien mais nous avons beaucoup de problèmes pour réaliser l'écriture.
Voilà le code que nous avons fait pour l'écriture :
Private Sub Ecriture_Click()
'Procedure d'écriture du TAG
longueur = Len(Cells(27, 11))
reste = 56 - longueur
For k = 1 To 56
If k <= longueur Then
tableau_char(k) = Asc(Mid(Cells(27, 11), k, 1))
Else
tableau_char(k) = 32
End If
Next
'Trame pour l'écriture du tag se situant dans le champ de l'antenne.
chaine_ecriture = Chr(1) & Chr(0) & Chr(87) & Chr(66) & Chr(0) & Chr(56) & Chr(1) & Chr(tableau_char(1)) & Chr(tableau_char(2)) & Chr(tableau_char(3)) & Chr(tableau_char(4)) & Chr(tableau_char(5)) & Chr(tableau_char(6)) & Chr(tableau_char(7)) & Chr(tableau_char(8)) & Chr(tableau_char(9)) & Chr(tableau_char(10)) & Chr(tableau_char(11)) & Chr(tableau_char(12)) & Chr(tableau_char(13)) & Chr(tableau_char(14)) & Chr(tableau_char(15)) & Chr(tableau_char(16)) & Chr(tableau_char(17)) & Chr(tableau_char(18)) & Chr(tableau_char(19)) & Chr(tableau_char(20)) & Chr(tableau_char(21)) & Chr(tableau_char(22)) & Chr(tableau_char(23)) & Chr(tableau_char(24)) & Chr(tableau_char(25)) & Chr(tableau_char(26)) & Chr(tableau_char(27)) & Chr(tableau_char(28)) & Chr(tableau_char(29)) & Chr(tableau_char(30))
chaine_ecriture = chaine_ecriture & Chr(tableau_char(31)) & Chr(tableau_char(32)) & Chr(tableau_char(33)) & Chr(tableau_char(34)) & Chr(tableau_char(35)) & Chr(tableau_char(36)) & Chr(tableau_char(37)) & Chr(tableau_char(38)) & Chr(tableau_char(39)) & Chr(tableau_char(40)) & Chr(tableau_char(41)) & Chr(tableau_char(42)) & Chr(tableau_char(43)) & Chr(tableau_char(44)) & Chr(tableau_char(45)) & Chr(tableau_char(46)) & Chr(tableau_char(47)) & Chr(tableau_char(48)) & Chr(tableau_char(49)) & Chr(tableau_char(50)) & Chr(tableau_char(51)) & Chr(tableau_char(52)) & Chr(tableau_char(53)) & Chr(tableau_char(54)) & Chr(tableau_char(55)) & Chr(tableau_char(56)) & Chr(4) & Chr(13)
MSComm1.Output = chaine_ecriture
End Sub
On écrit le mot dans une cellule excel, et grâce à un tableau, on sépare les caractères pour les convertir en ASCII et ensuite les envoyer au lecteur. Au début de la trame le 1 correspond au bit de start, 87 66 corrrespond au code WB (Write Block), 56 correspond à la longueur des données, et 1 correspond au numéro du bloc.
La variable "reste" correspond aux espaces qu'il faut mettre pour complèter l'ensemble de la mémoire de la Puce.
Mais rien ne marche. Pourtant nous avons essayé de transmettre exactement la même trame qu'envoie la console du lecteur pour l'écriture et ça ne marche toujours pas. Parfois ça plante même.
Quelqu'un sait-il pourquoi ça ne marche pas. SVP Aidez nous.
A voir également:
- Ecriture sur une Puce RFID en Visual basic
- Visual basic - Télécharger - Langages
- Visual basic editor - Télécharger - Langages
- Écriture facebook - Guide
- Ecriture en gras - Guide
- Visual petanque - Télécharger - Sport