Controler un bras de robot par le port parallèle

kawkawa88 Messages postés 1 Date d'inscription dimanche 7 mars 2010 Statut Membre Dernière intervention 15 mars 2010 - 15 mars 2010 à 20:41
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 - 16 mars 2010 à 17:35
slt tt le monde,jé un PFE concerne le contrôle d'un bras de robot à travers le port parallèle.. je doit travaillée avec des application en VB, est ce que vous pouvez m'aider.
merci de votre attention

2 réponses

PCPT Messages postés 13280 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 49
15 mars 2010 à 22:11
salut,

peut-être, mais sur un problème précis

tu bloques sur quelle partie de code ? (à détailler)

[hr]
0
Adn56 Messages postés 1172 Date d'inscription jeudi 24 mai 2007 Statut Membre Dernière intervention 28 septembre 2013 1
16 mars 2010 à 17:35
Voici une base de travail.

Public Class Form1
    Public Declare Function Inp Lib "INPOUT32.dll" Alias "Inp32" (ByVal PortAddress As Integer) As Integer
    Public Declare Sub Out Lib "INPOUT32.dll" Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)
    Public V0, V1, V2, V3, V4, V5, V6, V7 As Integer
    Public Vout As Integer

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        '------------------------ RECUPERATION DE LA VALEUR DECIMALE --------------------
        Dim valeur As Integer
        valeur = Inp(&H379)
        'valeur = 213 'Valeur de test
        MsgBox(valeur)

        ' -------------------------- CONVERSION EN VALEUR BINAIRE -----------------------
        'Dim digit As Boolean
        Dim index As Integer
        Dim entree(8) ' Declaration d'un tableau de 8 elements (de 0 à 7)
        index = 7
        If valeur >= 0 Then
            Do While valeur > 0
                'digit = valeur Mod 2
                entree(index) = valeur Mod 2
                index = index - 1
                valeur = valeur \ 2
            Loop
        End If

        ' ------------------ MISE EN EVIDENCE DES ENTREES SUR CHECKBOX -------------------
        'For index = 0 To 4
        '   check_in_&(index).Checked = entree(index)
        'Next index
        check_in_0.Checked = entree(0)
        check_in_1.Checked = entree(1)
        check_in_2.Checked = entree(2)
        check_in_3.Checked = entree(3)
        check_in_4.Checked = entree(4)

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Vout = V0 + V1 + V2 + V3 + V4 + V5 + V6 + V7
        TextBox1.Text = Vout
        Out(&H378, Vout)
    End Sub

    Private Sub Form1_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
        Out(&H378, 0) 'Remise à zéro des sorties à la fermeture du programme
    End Sub


    ' ---------------------- GESTION DES CHECKBOX POUR L'ECRITURE -----------------------

    Private Sub D0_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D0.CheckedChanged

        Dim Out0 As Boolean
        If (D0.Checked = True) Then
            Out0 = True
        Else : Out0 = False
        End If

        If Out0 = True Then
            V0 = 1
        Else : V0 = 0
        End If

    End Sub

    Private Sub D1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D1.CheckedChanged

        Dim Out1 As Boolean
        If (D1.Checked = True) Then
            Out1 = True
        Else : Out1 = False
        End If

        If Out1 = True Then
            V1 = 2
        Else : V1 = 0
        End If

    End Sub
    Private Sub D2_CheckedChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D2.CheckedChanged

        Dim Out2 As Boolean
        If (D2.Checked = True) Then
            Out2 = True
        Else : Out2 = False
        End If

        If Out2 = True Then
            V2 = 4
        Else : V2 = 0
        End If

    End Sub

    Private Sub D3_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D3.CheckedChanged
        Dim Out3 As Boolean
        If (D3.Checked = True) Then
            Out3 = True
        Else : Out3 = False
        End If

        If Out3 = True Then
            V3 = 8
        Else : V3 = 0
        End If
    End Sub

    Private Sub D4_CheckedChanged_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D4.CheckedChanged
        Dim Out4 As Boolean
        If (D4.Checked = True) Then
            Out4 = True
        Else : Out4 = False
        End If

        If Out4 = True Then
            V4 = 16
        Else : V4 = 0
        End If
    End Sub

    Private Sub D5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D5.CheckedChanged
        Dim Out5 As Boolean
        If (D5.Checked = True) Then
            Out5 = True
        Else : Out5 = False
        End If

        If Out5 = True Then
            V5 = 32
        Else : V5 = 0
        End If
    End Sub

    Private Sub D6_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D6.CheckedChanged
        Dim Out6 As Boolean
        If (D6.Checked = True) Then
            Out6 = True
        Else : Out6 = False
        End If

        If Out6 = True Then
            V6 = 64
        Else : V6 = 0
        End If
    End Sub

    Private Sub D7_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles D7.CheckedChanged
        Dim Out7 As Boolean
        If (D7.Checked = True) Then
            Out7 = True
        Else : Out7 = False
        End If

        If Out7 = True Then
            V7 = 128
        Else : V7 = 0
        End If
    End Sub
End Class


il faut bien sur placé la dll déclaré en entête dans le rep de ton appli. salut
0