WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Récepteur ir/pc 16 canaux

( Télécharger le fichier original )
par Hervé Walter FOPA TEDONGMO
Ecole normale supérieure d'enseignement technique de Douala ( ENSET) - DIPET 2 2009
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

IV.2 PROGRAMMATION DU LOGICIEL SUR PC

Programmer à l'aide du logiciel VISUAL BASIC, ce logiciel va permettre, à partir de l'ordinateur, de commander les16 sorties et d'avoir l'état des 8 entrées de notre récepteur via le port série.

NON

NON

OUI

OUI

NON

OUI

DEBUT

Lecture de l'état des sorties

Enregistrer le numéro de port et la vitesse

Attente pendant 10 ms

Configurer le port série ?

Commander une sortie ?

Envoyer le code de commande correspondant à la sortie

Lecture de l'état de la sortie commandée

Afficher l'état de la sortie commandée

Affichage de l'état des sorties

Ouverture du port série

Envoyer le code de lecture de toutes les entrées

Afficher l'état de toutes les entrées

Lecture de l'état de toutes les entrées

Quitter l'application ?

FIN

Fermer le port série

Attente pendant 10 ms

IV.2.1 Organigramme de fonctionnement du logiciel

Figure4.6 : Organigramme de fonctionnement du logiciel

IV.2.2 Code source

Dim compt As Integer

Private Sub B_BIS_Click(Index As Integer)

LEDS_SORTIES Index, COM_sortie_toggle(Index)

End Sub

Private Sub B_MOM_MouseDown(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)

LEDS_SORTIES Index, COM_sortie(Index, 1)

End Sub

Private Sub B_MOM_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)

LEDS_SORTIES Index, COM_sortie(Index, 0)

End Sub

Private Sub B_ONOFF1_Click(Index As Integer)

LEDS_SORTIES Index, COM_sortie(Index, 1)

End Sub

Private Sub B_ONOFF2_Click(Index As Integer)

LEDS_SORTIES Index, COM_sortie(Index, 0)

End Sub

Private Sub close1_Click()

CLOSECOM

ouvrir.Enabled = True

open1.Enabled = True

fermer.Enabled = False

close1.Enabled = False

End Sub

Private Sub confi_Click()

config.Show 1

End Sub

Private Sub fermer_Click()

CLOSECOM

ouvrir.Enabled = True

open1.Enabled = True

fermer.Enabled = False

close1.Enabled = False

Timer1.Enabled = False

End Sub

Private Sub Form_Load()

vitesse = 2400

num_port = 3 'Ouvrir COM3

Call lire_noms

End Sub

Private Sub Form_Unload(Cancel As Integer)

CLOSECOM

Call ecrire_noms

End Sub

Private Sub met_off_Click()

LEDS_SORTIES 16, COM_sortie(16, 0)

End Sub

Private Sub met_on_Click()

LEDS_SORTIES 16, COM_sortie(16, 1)

End Sub

Private Sub NOME_DblClick(Index As Integer)

Dim nom As String

nom = InputBox("ENTRER LE NOM DE VOTRE SORTIE", "NOM DE LA SORTIE")

If nom <> "" And Index = 0 Then NOME(Index).Caption = "E1" & " : " & nom

If nom <> "" And Index = 1 Then NOME(Index).Caption = "E2" & " : " & nom

If nom <> "" And Index = 2 Then NOME(Index).Caption = "E3" & " : " & nom

If nom <> "" And Index = 3 Then NOME(Index).Caption = "E4" & " : " & nom

If nom <> "" And Index = 4 Then NOME(Index).Caption = "E5" & " : " & nom

If nom <> "" And Index = 5 Then NOME(Index).Caption = "E6" & " : " & nom

If nom <> "" And Index = 6 Then NOME(Index).Caption = "E7" & " : " & nom

If nom <> "" And Index = 7 Then NOME(Index).Caption = "E8" & " : " & nom

End Sub

Private Sub NOMS_DblClick(Index As Integer)

Dim nom As String

nom = InputBox("ENTRER LE NOM DE VOTRE SORTIE", "NOM DE LA SORTIE")

If nom <> "" And Index = 0 Then NOMS(Index).Caption = "S1" & " : " & nom

If nom <> "" And Index = 1 Then NOMS(Index).Caption = "S2" & " : " & nom

If nom <> "" And Index = 2 Then NOMS(Index).Caption = "S3" & " : " & nom

If nom <> "" And Index = 3 Then NOMS(Index).Caption = "S4" & " : " & nom

If nom <> "" And Index = 4 Then NOMS(Index).Caption = "S5" & " : " & nom

If nom <> "" And Index = 5 Then NOMS(Index).Caption = "S6" & " : " & nom

If nom <> "" And Index = 6 Then NOMS(Index).Caption = "S7" & " : " & nom

If nom <> "" And Index = 7 Then NOMS(Index).Caption = "S8" & " : " & nom

If nom <> "" And Index = 8 Then NOMS(Index).Caption = "S9" & " : " & nom

If nom <> "" And Index = 9 Then NOMS(Index).Caption = "S10" & " : " & nom

If nom <> "" And Index = 10 Then NOMS(Index).Caption = "S11" & " : " & nom

If nom <> "" And Index = 11 Then NOMS(Index).Caption = "S12" & " : " & nom

If nom <> "" And Index = 12 Then NOMS(Index).Caption = "S13" & " : " & nom

If nom <> "" And Index = 13 Then NOMS(Index).Caption = "S14" & " : " & nom

If nom <> "" And Index = 14 Then NOMS(Index).Caption = "S15" & " : " & nom

If nom <> "" And Index = 15 Then NOMS(Index).Caption = "S16" & " : " & nom

End Sub

Private Sub open1_Click()

Call ouvrir_port

ouvrir.Enabled = False

open1.Enabled = False

fermer.Enabled = True

close1.Enabled = True

End Sub

Private Sub ouvrir_Click()

Call ouvrir_port

ouvrir.Enabled = False

open1.Enabled = False

fermer.Enabled = True

close1.Enabled = True

Timer1.Enabled = True

End Sub

PrivateSubouvrir_port()

If num_port = 1 Then

I= OPENCOM("COM1,vitesse,N,8,1")

End If

If num_port = 2 Then

i = OPENCOM("COM2,vitesse,N,8,1")

End If

If num_port = 3 Then

i = OPENCOM("COM3,vitesse,N,8,1")

End If

If num_port = 4 Then

i= OPENCOM("COM4,vitesse,N,8,1")

End If

End Sub

Private Sub ecrire_noms()

Dim compt As Integer

Open App.Path& "\noms_sorties.txt" For Output As #1

While Not EOF(1)

Print #1, ""

Wend

Close #1

Open App.Path& "\noms_entrées.txt" For Output As #1

While Not EOF(1)

Print #1, ""

Wend

Close #1

Open App.Path& "\noms_sorties.txt" For Output As #1

compt = 0

While compt<= 15

Print #1, NOMS(compt).Caption

compt = compt + 1

Wend

Close #1

Open App.Path& "\noms_entrées.txt" For Output As #1

compt = 0

While compt<= 7

Print #1, NOME(compt).Caption

compt = compt + 1

Wend

Close #1

End Sub

Private Sub lire_noms()

Dim compt As Integer

Dim nom As String

Open App.Path& "\noms_sorties.txt" For Input As #1

compt = 0

While Not EOF(1) And compt<= 15

Line Input #1, nom

NOMS(compt).Caption = nom

compt = compt + 1

Wend

Close #1

Open App.Path& "\noms_entrées.txt" For Input As #1

compt = 0

While Not EOF(1) And compt<= 7

Line Input #1, nom

NOME(compt).Caption = nom

compt = compt + 1

Wend

Close #1

End Sub

Private Sub quit_Click()

Call ecrire_noms

End

End Sub

Private Sub quitter_Click()

Call ecrire_noms

End

End Sub

Private Sub Timer1_Timer()

REFLEX_entrees

End Sub

CONCLUSION

Arriver au terme de ce chapitre où nous avons présenté tour à tour la programmation du microcontrôleur et de l'ordinateur. Nous pouvons maintenant aborder la dernière partie de notre travail avec une idée un peu plus claire sur le fonctionnement logiciel de notre maquette.

Tout au long de cette partie il a été question de présenter les solutions proposées et de faire une étude théorique du récepteur IR/PC. Pour cela nous avons procédés à la production du cahier des charges où nous avons clairement définis les objectifs à atteindre. Ensuite nous avons procédés à la conception de l'interface matérielle en faisant une étude minutieuse des différents blocs de l'interface. Pour terminer cette partie nous procédé à l'implémentation du logiciel en présentant les organigrammes et le code source de nos différents modes de commande. Les solutions des limites citées plus haut énumérées, l'étude théorique du récepteur terminée nous pouvons maintenant passer à la dernière étape de notre travail qui est intitulé « Réalisation, tests et présentation des résultats ».

Cette partie constitue une étape importante dans l'évolution de notre de travail car elle est une confirmation des résultats obtenues dans la partie précédente. Aussi nous nous devons de nous appliquer sur la réalisation du récepteur qui constitue d'ailleurs notre chapitre V. il sera question dans ce chapitre de présenter les différents étapes qui ont conduit à la réalisation de la maquette. Le chapitre VI, dernière étape de notre travail sera spécialement consacrer à la présentation des résultats, aux tests et au guide d'utilisation du récepteur.

INTRODUCTION

Après avoir fait l'étude théorique de l'interface, nous allons dans cette partie, faire une synthèse de tous les schémas retenus pour l'étude afin de pouvoir réaliser notre maquette. Nous présenterons tour à tour les différents typons et circuits imprimés (réalisés à partir des logiciel ISIS et de ARES), le boîtier de l'interface et enfin nous donnerons le devis estimatif.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Tu supportes des injustices; Consoles-toi, le vrai malheur est d'en faire"   Démocrite