Bonjour,
ayant un PIC que je peux connecter via Wifi à mon PC, est ce que je peux le reprogrammer à distance en lui envoyant un nouveau ".hex"? Moi je n'ai aucune idée et je cherche la faisabilité de ceci, pouvez vous m'aidez??
Merci!!
-----
Bonjour,
ayant un PIC que je peux connecter via Wifi à mon PC, est ce que je peux le reprogrammer à distance en lui envoyant un nouveau ".hex"? Moi je n'ai aucune idée et je cherche la faisabilité de ceci, pouvez vous m'aidez??
Merci!!
Bonjour,
Regarde sur le site de microchip s'il y a des application notes en wifi.
Bonjour,
Typiquement pour ce genre de tâche on utilise un bootloader, un petit programme qui communique avec le host, récupère le programme et l'écrit en flash...
Mais avec votre modèle de pic (lequel d'ailleurs ?) je ne sais pas si ça serait possible..?
Un collègue vous renseignera mieux que moi...
Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...
Bonjour,
Il est tout à fait possible de faire un bootloader WiFi mais il y a plusieurs points à prendre en compte.
1/ Avoir assez de mémoire Flash dans ton PIC
2/ Eventuellement, si ton produit doit pouvoir survivre à tout incident pouvant interrompre l'opération de bootload, il faut que ton PIC ait le double de la taille mémoire pour pouvoir toujours executer l'application ancienne, tant que la nouvelle n'ets pas terminée (ou alors une E2PROM / FLASH externe qui contient l'image HEX d'origine).
3/ Il faut avoir pas mal de temps devant toi car développer et FIABILISER un bootloader est une opération qui prend tu temps. C'est encore plus vrai pour les bootloaders OTA (Over The Air)
En supposant que tu remplisses les conditions ci-dessus, une méthode simplifiée serait d'utiliser un module RN-171 ou RN-131 qui intègre le WiFi et la stack TCP/IP.
Ton PIC sera connecté en UART au module WiFi. Après avoir envoyé des commandes, tu recevrai la nouvelle version logicielle en mode TCP ou UDP de façon transparente.
D'une certaine manière on peut considérer qu'après la connection WiFi établie, le PIC exécute "presque" un bootloader UART.
Si tu veux impérativement avoir une connection P2P (point à point) entre le PIC et le PC il faudra utiliser le mode SoftAP du module et cela sera un peu plus compliqué.
La méthode la plus "simple" serait d'avoir le PIC et le PC reliés au même routeur WiFi.
Dans tous les cas prépare toi à plusieurs semaines de développement ;=)
a+
Bon pour le PIC que j'utilise c'est un 18F4520, et pour la durée de développement je pense pas que j'en ai assez, et au lieu d'un RN171 j'ai utilisé un CSW-M85 tout simple à connecté aussi qu'à exploiter, il se connecte à l'uart du PIC et converti les données série en format TCP/IP.
Pour la Connexion entre mon PC et le PIC je le fais dans un réseau Ad-hoc, et je me demande est ce que je peux pas trouver quelque exemple même très simple juste pour comprendre et débuter?
Salut,
Je ne connais pas ce module (CSW-M85), mais je suppose qu'il a des fonctions similaires au RN-171 qui lui comporte pas mal d'exemples dans le manuel avancé.
Regarde sur le site du fabricant de ton module.
a+
Déja quelque chose que je comprends pas, le bootloader d'après mes petites recherches concerne le microcontrôleur or vous me demandez de chercher des exemples sur le site du fabricant du module que j'utilise pouvez vous m'éclaircir un peu l'idée car je me retrouve pas dans tout ça?
Ben... Si ton module gère bien TCP/IP c'est tout ça de moins à faire faire par le bootloader du PIC...
Leonardo était ingénieur "sans papier", et moi diplômé juste...technicien...
c'est à dire que ça tombe bien que mon module gère TCP/IP, mais sans vous mentir j'ai pas la moindre idée comment réaliser un bootloader sur un PIC pouvez vous me rediriger vers des exemples à voir, surtout s'il y en a des exemples en C "mikroC".
MERCI!!
Salut
Sur le site du fabriquant de ton module, tu dois avoir de mémoire un utilitaire qui permet de créer un port serie virtuelle afin d'etablir une liaison avec ton module.
L'idée ensuite c'est d'envoyer ton bootloader via le port série virtuelle qui lui aura une connexion avec le module CSW, lui meme raccordé sur l'UART du PIC.
Avec cette méthode tu peux donc essayer les bootloader deja existant prévu pour un port un port serie.
En principe ca devrait foncitonner si tu trouve les bon paramétrage de connexion entre le port série virtuelle et ton module.
Dans un premier temps entraine toi avec un programme sur ton PIC par exemple qui afficherais tout ce que tu envoies a ton module CSW, histoire de voir si ta comm fonctionne bien. car suivant la version du module il faut faire attention au niveau de tension, je me demande si il ne fonctionne pas en 3.3 de mémoire, il faudra peut être adapter les niveaux si ton PIC travaille en 5V et si le module CSW lui n'est pas compatible avec ces niveau là.
A+