J'ai fait une programmation de bureau pendant un moment, mais je veux commencer avec l'interface avec le matériel. Spécifiquement, je voudrais apprendre à utiliser des ports série pour prendre un événement externe et alerter mon application (donc par exemple, je peux activer une caméra lorsque le mouvement est détecté par un capteur externe). S'il vous plaît dites-moi comment commencer, quel type de capteurs, quels livres (ou ressources en ligne) sont disponibles. J'ai essayé Bing et Google, mais j'ai besoin de plus de pointeurs. P>
7 Réponses :
Si vous pouvez trouver un ancien modem en ligne ou Craigslist qui pourrait bien commencer. Les spécifications Serial Comms pour ceux-ci sont assez bien documentées. P>
Après cela, je commencerais à enquêter sur des choses qui vous intéressent - votre intérêt dans le projet conduira à l'apprentissage et au progrès plus que tout IMO. P>
Je pense que ce site a des choses amusantes à essayer: p>
Je vous recommanderais le livre Pilotes de périphérique Linux 3ème édition P>
Bien que je n'ai pas encore programmé une interface matérielle, je pense que ce livre vous permettra de commencer à pirater. P>
Vous devez obtenir une quincaillerie d'acquisition de données et une interface avec cela. P>
Il n'y a vraiment pas beaucoup de conversation unique - tous les conseils pour cela. Vous allez avoir besoin de regarder la documentation de votre appareil, cela devrait spécifier le protocole de ce qu'il enverra sur le port série et des commandes que vous pouvez envoyer en retour. P>
Assurez-vous de comprendre des choses comme ce que signifie avoir un texte encodé comme ASCII ou UTF8. La plupart des appareils qui envoient et s'attendent à ce que le texte utilise un codage ASCII. P>
Je ne suis pas sûr de quel système d'exploitation ou de langue que vous utilisez, mais soyez conscient que vous envoyez des données binaires brutes via un port série, par exemple si vous utilisez C #, vous souhaitez envelopper votre port série. Flux de données avec un streamwriter ou un streamerader avec le code de texte correct. P>
Si vous souhaitez simplement apprendre à utiliser le port série, obtenez un autre PC avec HyperTerminal (inclus gratuitement avec Windows) et utilisez-le pour envoyer et recevoir des données de votre machine de développement sur le port série. Cela vous donnera un contrôle très manuel sur ce qui est envoyé à votre boîte de développement. Vous pouvez donc avoir une certaine confiance que ce que vous lisez et que vous écriez est correct. Une fois que vous avez les bases de Serial E / S Down, vous pouvez passer à votre caméra / capteur de mouvement / etc. p>
Vous ne mentionnez pas quel système d'exploitation ou de développement vous utilisez, mais dans VS 2005 / .NET 2.0, il existe en fait une classe Serialport. Si vous faites des fenêtres brutes API, MSDN dispose d'un article sur http: // msdn.microsoft.com/en-us/library/ms810467.aspx qui couvre les bases. Si vous utilisez un autre système d'exploitation, désolé je ne suis pas si familier (je sais que Boo siffle sur moi). P>
La chose la plus importante est juste de rappeler de définir vos paramètres de communication des deux côtés de la connexion. Il existe quatre paramètres qui régissent si les deux côtés peuvent se comprendre les uns les autres: débit en bauds, bits-per-octets (généralement 8), bits de parité (même parité, parité impaire, aucune ou toujours 1 ou 0) et arrêtez les bits. HyperTerminal répertorie également une option "Contrôle de flux", je vous recommande de le définir sur "Aucun" jusqu'à ce que vous soyez à l'aise. Le contrôle de flux XON / XOFF est un moyen assez courant de faire une pause de l'autre côté pendant que vous traitez une mémoire tampon de données. P>
Achetez un microcontrôleur et construisez un robot simple, un usine CNC ou quelque chose. Atmel AVR et / ou PIC sont les plus courants de ce que je comprends. P>
donne également beaucoup d'expérience électronique p>
Les interfaces série sont assez simples à utiliser. Mais ils nécessitent une sorte de décodeur à l'autre extrémité (comme un UART .) Une autre option utiliserait le Port Parellel . L'avantage d'utiliser un port parallèle est que vous commencez avec une pause des broches d'E / S. Vous pouvez généralement contrôler 8 périphériques avec une interface très simple à construire. p>
La plupart des plates-formes ont donné un moyen simple d'accéder aux ports LPT sans trop d'efforts et qu'ils sont encore très faciles à interfacer. p>
Les ordinateurs ne disposent pas de ports parallèles. Est-ce qu'ils?
La plupart, mais ce poteau en 7 ans et vous pouvez toujours utiliser ces modèles avec USB vers LPT code>. Mieux encore, il y a maintenant des centaines d'options pour le faire sans LPT. Amazon.com/s/?field -keywords=usb+gpio+ Module