0
votes

Accès au fichier entre MCU et PC via la communication RS232

J'utilise une carte de développement LPC178 et je souhaite lire un fichier présent sur un PC Windows. Mon conseil d'accord n'a qu'une interface RS2323 pour communiquer avec.

Comment puis-je continuer à transférer le fichier de mon PC à mon MCU à l'aide d'un lien RS232 (série)? J'ai trouvé un Référence qui explique comment transférer des données entre un MCU et PC, mais il ne s'agit pas de transferts de fichiers.


1 commentaires

"Comment puis-je faire tout mon projet" est beaucoup trop large un sujet. Le MCU ne se soucie probablement pas des fichiers, mais vous devez la fournir avec les données significatives d'un programme PC. Vous devez créer un programme PC, un protocole RS-232 et le côté du micrologiciel.


4 Réponses :


1
votes

AFAIK Il n'y a pas de solution facile pour cela comme appelant quelque chose comme "copie" ou "fopen" sur RS232. Je serais heureux d'être avéré faux ici.

La solution la plus rapide peut être d'écrire un peu de programmation exécutée sur votre hôte Windows, qui écoute votre communication RS232 et conduit votre communication dans / hors du fichier en fonction de votre protocole de communication. Cela peut être fait avec des opérations de fichier standard dans la langue de votre choix, par exemple C, C ++ ou Python.


0 commentaires

1
votes

Votre problème est l'un des plus anciens du livre. Comment transférez-vous des fichiers sans abstractions de système d'exploitation de fantaisie. Pour RS232 (ou toute autre méthode série), il existe de nombreux protocoles de transfert de fichiers.

L'un d'entre eux est Kermit . Ceci est un protocole de 1981 et peut transférer des fichiers binaires et textuels. C'est capable d'être intégré dans un microntroller et il existe des programmes à transférer / recevoir en utilisant Kermit.

Ancien site alternatif pour référence < / a>


0 commentaires

1
votes

Dans le cas le plus simple, vous utiliseriez un protocole de transfert de fichiers tel que XMODEM, YMODEM, ZMODEM ou Kermit - ces protocoles ont été conçus dans les jours précédant la mise en réseau et Internet étaient omniprésents et gèrent de simples transferts point à point entre deux des ordinateurs. Ils sont pris en charge sur la plupart des outils émulateurs terminaux tels que Teraterm Pro ou PuTY, aucun logiciel PC spécifique n'a besoin d'être écrit, juste l'extrémité du microcontrôleur.

Une solution plus complexe mais flexible consiste à mettre en place une pile TCP / IP et un pilote PPP et une couche d'application FTP - probabaly uniquement pratique si vous utilisez une pile TCP / IP tiers et une couche d'application. Vous pouvez ensuite utiliser n'importe quel client FTP pour l'extrémité de PC, donc à nouveau aucun logiciel PC requis. Bien que cela puisse être surchargé si tout ce que vous avez à faire est de transférer des fichiers, il a l'avantage de vous permettre d'utiliser le port série unique simultanément pour d'autres flux de données et des protocoles d'application tels que Telnet. L'inconvénient est peut-être que, même si Windows prend en charge le PPP, il est enterré dans la mise en réseau d'accès à distance et d'être franc une douleur à travailler.


0 commentaires

0
votes

Tout au premier pas que vous devez faire est de vous assurer que la communication série fonctionne bien.

  1. Envoyez un octet en continu de MCU sur PC et l'affiche sur une console IO (par exemple: HyperTerminal, Light Dock)
  2. Recevez un octet à MCU à partir d'un PC et faites-la écho à PC.

    Une fois que vous êtes sûr que la communication série fonctionne correctement, sélectionnez un protocole de transfert de fichier et implémentez-le.

    Bien que vous puissiez sélectionner l'un des protocoles disponibles ou écrivez votre propre protocole et mettez-le en œuvre. À des fins de discussion, je sélectionne Xmodem Protocol. Si vous considérez un autre protocole, vous pouvez arrêter de lire une réponse ici.

    xmodem est un protocole de transfert de fichiers simple. Reportez-vous à http://web.mit.edu/6.115/www/Ampude/xmodem .htm pour des informations détaillées. Vous pouvez mettre en œuvre le côté XMODEM MCU en lisant le protocole. Ou peut envisager d'utiliser une source ouverte également (si disponible)

    PC côté Je préfère utiliser une console HyperTerminal IO tel qu'il est compatible avec Xmodem. En hyperterminal tout ce que je dois faire est de configurer les paramètres et de sélectionner le fichier pour le transfert vers MCU. Désormais transférer n'importe quel fichier sur MCU à l'aide du protocole XModem à partir de PC.

    Ce que vous faites avec le fichier reçu dans MCU est à vous de choisir :)


0 commentaires