1. #1
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut Communiquer sans fil !

    Bonsoir.

    Pour mon projet de cette année j'ai décidé de traiter de la communication sans file ainsi que le chiffrement des données.
    Cependant, je ne connais aucun moyen d'utiliser une carte WIFI ou Bluetooth dans un programme en C.
    J'ai pourtant cherché mais... Rien...
    Est-ce que c'est possible au moins ? (J'imagine que oui )

    Merci de l'attention !

  2. #2
    Responsable Modération
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    6 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 6 988
    Points : 22 024
    Points
    22 024

    Par défaut

    Bonjour,

    Citation Envoyé par lefou123456 Voir le message
    Pour mon projet de cette année j'ai décidé de traiter de la communication sans file
    « Sans file » ou « sans fil » ? En programmation, ça ne veut pas du tout dire la même chose…

    Cependant, je ne connais aucun moyen d'utiliser une carte WIFI ou Bluetooth dans un programme en C.
    Ça dépend fortement du système d'exploitation que tu utilises mais, d'une manière générale, c'est normal : la nature de la carte réseau ou des cartes réseau installées dans ton système est censée être entièrement transparente pour le programme, qui lui se contente d'émettre du contenu à destination d'une adresse comme on mettrait une lettre à la poste. C'est le système d'exploitation lui-même qui, ensuite, choisit la voie à suivre en fonction de la table de routage, voie qui va ensuite déterminer la carte réseau à utiliser (en parallèle avec la métrique, qui va donner le « coût » d'exploitation d'une ligne donnée et qui peut pousser le système à en choisir une autre). Ce n'est qu'à ce stade, juste avant d'atteindre les pilotes de périphériques proprement dits, que l'on va entrer dans le sous-système « wireless » et que l'on va y gérer tout ce qui y est propre.

    Donc, il va falloir nous dire d'abord sur quelle plateforme tu travailles et dans quel contexte (quels sont les prérequis pour ton projet de fin d'année).
    Bon courage.

  3. #3
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Citation Envoyé par Obsidian Voir le message
    Bonjour,
    « Sans file » ou « sans fil » ? En programmation, ça ne veut pas du tout dire la même chose…
    […]
    Donc, il va falloir nous dire d'abord sur quelle plateforme tu travailles et dans quel contexte (quels sont les prérequis pour ton projet de fin d'année).

    Alors si j'ai bien compris, tout ce que le programme a à faire c'est demander au système d'exploitation d'envoyer des données vers le périphérique ?
    Le programme fonctionnera sur Windows !

    Bon courage.
    Merci

  4. #4
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    J'avais déjà réussi à faire quelque chose comme ça en Java; j'envoyais l'heure exacte vers un Arduino pour qu'il l'affiche sur un écran.
    Mais j'appelais seulement les fonctions d'une bibliothèque...

  5. #5
    Responsable Modération
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    6 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 6 988
    Points : 22 024
    Points
    22 024

    Par défaut

    Citation Envoyé par lefou123456 Voir le message
    Alors si j'ai bien compris, tout ce que le programme a à faire c'est demander au système d'exploitation d'envoyer des données vers le périphérique ?
    Même pas : tout ce que le programme a à faire, c'est ouvrir une connexion vers la bonne adresse (ou envoyer un datagramme dans les protocoles hors-connexion comme UDP). C'est le système d'exploitation qui va se débrouiller lui-même pour les acheminer, dût-il ouvrir pour ce faire tous les périphériques nécessaires et les piloter.

    C'est même tellement génial qu'en principe, avec le Protocole Internet (IP), si la voie qui devrait être empruntée pour acheminer ta correspondance est indisponible (qu'il s'agisse d'un réseau sans fil ou non), il sera capable de faire une déviation tout seul et d'envoyer le paquet un peu plus loin pour qu'il re-parvienne à son destinataire par un autre chemin. C'est ce système de maillage (comme le réseau routier) qui établit de fait une redondance et rend le réseau tolérant aux pannes. C'est ce que l'on entend par « résistant à une attaque nucléaire », ce qui n'était pas de l'esbroufe mais une nécessité tactique.

    Bon, sur ta machine personnelle, cela ne donnera rien puisqu'il y a de fortes chances qu'elle soit équipée d'une seule et unique carte réseau en exploitation à un moment donné (le WIFI qui relie ta machine à ta box, l'ethernet Gigabit étant probablement disponible mais la prise restée vide). Par contre, dès le premier nœud de raccordement et chez ton fournisseur d'accès, ces choses-là deviennent stratégiques.

  6. #6
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Wow, encore plus intéressant que je le pensais !
    En fait, l'ordinateur sera relié à un réseau par câble ethernet; la carte wifi ne sera donc pas utilisée.

  7. #7
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Le but est d'échanger des données avec un robot situé pas très loin !

  8. #8
    Responsable Modération
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    6 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 6 988
    Points : 22 024
    Points
    22 024

    Par défaut

    Citation Envoyé par lefou123456 Voir le message
    Le but est d'échanger des données avec un robot situé pas très loin !
    Et ce robot, lui, il est piloté par quoi ?

  9. #9
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Citation Envoyé par Obsidian Voir le message
    Et ce robot, lui, il est piloté par quoi ?
    Si possible, directement par le programme.

  10. #10
    Responsable Modération
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    6 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 6 988
    Points : 22 024
    Points
    22 024

    Par défaut

    Citation Envoyé par lefou123456 Voir le message
    Si possible, directement par le programme.
    Oui, j'entends bien mais qu'y aura-t-il dans ce robot ? Un mini-PC hôte, sur lequel tu vas faire tourner une version light d'un système d'exploitation existant (auquel cas l'exploitation du réseau sera ordinaire, seul comptera le protocole utilisé pour parler au robot), s'agit-il d'un Arduino ou d'un Raspberry Pi, ou s'agit-il encore d'une platine conçue sur mesure à base de micro-contrôleurs ?

  11. #11
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Je pensais utiliser un raspberry pi

  12. #12
    Responsable Modération
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    6 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 6 988
    Points : 22 024
    Points
    22 024

    Par défaut

    Ok pour le Raspberry Pi. Du coup, quel modèle de Raspberry (avec ou sans Wifi) et quel système d'exploitation sur ce Raspberry ? Il paraît qu'on peut y mettre un W10 IoT mais c'est surtout les UNIX libres qui tournent dessus en général… (et c'est très bien comme ça, à mon avis).

  13. #13
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Citation Envoyé par Obsidian Voir le message
    Ok pour le Raspberry Pi. Du coup, quel modèle de Raspberry (avec ou sans Wifi) et quel système d'exploitation sur ce Raspberry ? Il paraît qu'on peut y mettre un W10 IoT mais c'est surtout les UNIX libres qui tournent dessus en général… (et c'est très bien comme ça, à mon avis).
    Le raspberry pi 3 je pense, après, pour l'OS je ne suis pas encore fixé...
    Je n'ai pas beaucoup d'expérience à propos des systèmes d'exploitations de raspberry pi;
    j'ai seulement essayé NOOBS...

  14. #14
    Responsable Modération
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    septembre 2007
    Messages
    6 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : septembre 2007
    Messages : 6 988
    Points : 22 024
    Points
    22 024

    Par défaut

    Quoi qu'il en soit, ce sera relativement simple dans le principe et tu pourras presque faire une simulation sur ton PC hôte.

    Tu auras un système embarqué qui fonctionnera plus ou moins de la même façon que sur un PC ordinaire. Donc, il faudra faire de la programmation système toute simple. Il s'agira donc d'écrire une application réseau qui se mettra à l'écoute d'un port et qui dialoguera avec son interlocuteur. Tu peux survoler cette discussion pour y puiser des idées.

    Ce programme pourra donc de la même façon fonctionner sur ton robot ou sur ta machine-hôte, en tout cas en ce qui concerne le dialogue. En fonction des amabilités échangées, tu peux lui faire décider de mener telle ou telle action en pilotant les lignes d'entrées/sorties.

  15. #15
    Membre du Club
    Homme Profil pro
    programmeur novice
    Inscrit en
    février 2016
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : programmeur novice

    Informations forums :
    Inscription : février 2016
    Messages : 52
    Points : 56
    Points
    56

    Par défaut

    Citation Envoyé par Obsidian Voir le message
    Quoi qu'il en soit, ce sera relativement simple dans le principe et tu pourras presque faire une simulation sur ton PC hôte.

    Tu auras un système embarqué qui fonctionnera plus ou moins de la même façon que sur un PC ordinaire. Donc, il faudra faire de la programmation système toute simple. Il s'agira donc d'écrire une application réseau qui se mettra à l'écoute d'un port et qui dialoguera avec son interlocuteur. Tu peux survoler cette discussion pour y puiser des idées.

    Ce programme pourra donc de la même façon fonctionner sur ton robot ou sur ta machine-hôte, en tout cas en ce qui concerne le dialogue. En fonction des amabilités échangées, tu peux lui faire décider de mener telle ou telle action en pilotant les lignes d'entrées/sorties.
    Merci énormément !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Input de type File sans le champ ?
    Par DemonKN dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 11/02/2010, 13h59
  2. Réponses: 5
    Dernier message: 28/08/2007, 11h13
  3. [XHTML] input file sans champ input texte
    Par vny dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 15/08/2007, 12h56
  4. upload d'un fichier sans passer par <input type=file
    Par al3alwa dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 31/05/2007, 17h48
  5. Réponses: 2
    Dernier message: 30/06/2006, 14h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo