Envoyer un ping avec un PIC vers un périphérique.
Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Envoyer un ping avec un PIC vers un périphérique.



  1. #1
    invite46ac3184

    Envoyer un ping avec un PIC vers un périphérique.


    ------

    Bonjour,

    Ma première intervention sur ce forum technique en Français.

    Je vous expose mon problème, je réalise actuellement un montage à base de PIC18F46K22 et d'un module ethernet avec un ENC28J60. Une platine de dev microchip et un programmateur pickkit3.
    J'utilise le compilateur MikroPascal et les librairies SPI_Ethernet.


    J'ai réalisé avec l'aide des exemples donnés chez Mikroe un module qui me permet d'allumer et d'éteindre 10 diodes LED avec un navigateur web. Ceci marche très bien avec des click sur des boutons c'est super et très rapide, je ping très bien mon module. J'ai monté un quartz de 8Mhz et je quadruple la fréquence avec la PLL du pic soit 32 Mhz pour être fluide.

    Ma question est que je souhaite ajouter une fonction à ce montage, soit pouvoir pinger in périphérique sur mon réseau pour surveiller si il est toujours actif. par exemple ma box ADSL. Si ça répond tout est ok sinon j'agit en conséquence pour rebouter le truc.

    N'étant pas très calé en réseau je me permet de demander si sur ce forum quelque personne pourraient m'orienter dans une direction pour réaliser un ping à partir de mon module PIC.

    je sais qu'il faut envoyer une requête ICMP vers l'adresse souhaité mais comment s'y prendre, là j'ai besoin d'aide.

    Merci pour votre attention.

    DH.

    -----

  2. #2
    RISC

    Re : Envoyer un ping avec un PIC vers un périphérique.

    Salut,
    Je ne connais pas les librairies de Mikroelektronika et encore moins le Pascal...
    Ce qu'il faut que tu vérifies effectivement est si leur librairies TCP/IP gère le protocole ICMP. Si ce n'est pas géré dans leur librairie tu vas devoir développer ce module par toi-même...Le PB est que tu risques de ne pas trouver beaucoup d'exemples en Pascal mais plutot en C pour l'ICMP (basé sur la RFC 792).
    A titre informatif, l'ICMP est géré dans la stack C TCP/IP de Microchip car c'est une fonction importante (on peut même dire vitale ;=).
    Donc si tes librairies Pascal sont correctes au niveau fonctions tu devrais trouver celles pour l'ICMP (vérifie la doc).
    a+
    PS : le PIC18F46K22 peut fonctionner jusqu'à 64MHz donc tu peux aussi mettre un quartz 16MHz (x4) pour profiter de la performance max si besoin est
    Dernière modification par RISC ; 30/05/2014 à 17h13.

  3. #3
    invite46ac3184

    Re : Envoyer un ping avec un PIC vers un périphérique.

    Bonjour,

    Merci pour vous être manifesté, sur plus de 150 lectures vous êtes le seul.

    Effectivement leur librairies sont très complètes mais la seule fonction que j'aurai besoin n’existe pas... Ce serai la fonction SendPing();
    Bien sûr mon module répond au ping donc il sait gérer l'ICMP, il est précisé dans le résumé de la librairie SPi_Ethernet supports : ICMP echo request, OK.

    Mais pas ICMP echo reply ...!

    Donc, il ne doit pas y avoir de personne qui connaissent le Pascal ou le mikroPascal pour faire un ping en France malheureusement.

    Mais si quelqu'un sait comment faire un ping en C avec la lib SPI_Ethernet (je ne demande pas en mikroPascal juste en C) alors je suis preneur.
    Je trouverai bien comment porter l'affaire en pascal.

    Seulement me faut plus d'infos sur la manière de s'y prendre.

    Ou alors une autre méthode pour vérifier la présence active d'un périphérique sur le réseau, je parles de ping car c'est la première technique qui me vient à l'esprit mais il y a peut-être un autre moyen plus simple ou différent de s'y prendre.

    Merci pour vos réponses.

    Cordialement

    DH.

  4. #4
    RISC

    Re : Envoyer un ping avec un PIC vers un périphérique.

    Salut,
    Ce site ne regroupe pas tous ceux qui font du mikroPascal en FRance ;=)
    Si tu consultes les sites en anglais tu multiplies tes chances de trouver par 20.
    Pour les librairies TCP/IP il faut toujours considérer 2 versions : la version serveur et la version client.
    Les piles TCP/IP embarquées implémentent souvent le coté client et parfois aussi le coté serveur (exemple : DHCP, FTP).
    Donc tu cherches l'ICMP coté serveur ?
    Tu ne devrais pas avoir de mal à trouver cela en langage C dans une stack open source (uIP, lwIP, FNET,...)
    a+

  5. A voir en vidéo sur Futura

Discussions similaires

  1. Envoyer un caractére d'un PIC vers un module LCD
    Par schneiderj dans le forum Électronique
    Réponses: 3
    Dernier message: 13/12/2009, 20h38
  2. envoyer des donnee de pic vers pc par port serie
    Par invite7cb641da dans le forum Électronique
    Réponses: 4
    Dernier message: 25/05/2009, 00h14
  3. Envoyer vers==> Bureau ?---> DISPARU ?
    Par invite650a7423 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 21/12/2006, 08h17
  4. envoyer le sonde mon pc vers mon poste stéréo
    Par invite5dedb42b dans le forum Électronique
    Réponses: 1
    Dernier message: 20/06/2006, 07h28
  5. Comment envoyer data du PC vers un microcontroleur
    Par inviteb3711700 dans le forum Électronique
    Réponses: 4
    Dernier message: 06/03/2006, 00h01
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...