Contrôle des appareils via le port USB d'un ordinateur sur ATmega8. Contrôle de charge via USB

Vitesse de commutation

Sélection d'un port COM

Bouton de démarrage et de pause

(activation du port)

Bouton d'arrêt

(désactiver le port)

Bouton de réglage de la sortie

Boutons manuels

entrées de commande (1, 2, 3)

Bouton Effacer le tableau

Bouton Aide

Bouton Quitter

Des indicateurs qui simulent

opération de sortie

Grille de table avec valeurs

(cellules vides
égal à zéro)

Pour le contrôle de charge dans les circuits avec courant continu, par exemple 24V, vous pouvez utiliser n'importe quel transistor composite puissant - dans notre cas KT829.

Pour changer courant alternatif Pour 220 V, il est plus facile d'utiliser le commutateur AC dit à semi-conducteur, doté d'un optodriver avec un détecteur de phase zéro à l'entrée, qui assure une isolation galvanique.

Pour augmenter le courant de commutation, un triac est installé sur un radiateur. Veuillez noter que dans la partie haute tension, des résistances d'une puissance de 0,5 W sont utilisées.

N'oublie pas précautions de sécurité - pendant le fonctionnement de l'interrupteur, ne touchez pas les éléments exposés, et lors de la ressoudage des pièces et des fils, déconnectez l'interrupteur du réseau.

La carte est constituée d'un PCB en aluminium unilatéral. Taille de la planche 30x25mm. Un cavalier est soudé dans la carte sous le boîtier du microcircuit. Afin de protéger contre la surchauffe du microcircuit lors du soudage, un panneau à 16 broches pour le microcircuit est utilisé.

Pour contrôler les sorties (LED), il suffit de connecter l'appareil à un PC avec un cordon à 4 fils. Le cordon est soudé à un connecteur standard du port COM - une prise DB9.

Le signal +5V pour le fil commun des entrées numériques est extrait du circuit de l'appareil. Les résistances des lignes d'entrée numérique peuvent être soudées dans le boîtier de la prise DB9.

À entrées numériques Vous pouvez connecter des boutons, des interrupteurs à bascule, des micro-interrupteurs.

Informations de référence

La base de l'appareil est la puce 74hc595 disponible, qui est un registre à décalage série avec verrouillage de sortie. Pour contrôler ce microcircuit, trois lignes de signaux suffisent. Dans notre cas, les signaux sont initiés dans le programme de contrôle UniCOM et émis via l'interface RS-232 (port COM). Les lignes d'un connecteur à 9 broches sont utilisées comme lignes de signal dans cette interface : RTS - 7 broches, DTR - 4 broches et TxD - 3 broches.

Le principe de fonctionnement du microcircuit 74hc595 est d'enregistrer séquentiellement les signaux logiques de niveau haut et bas fournis à l'entrée DS (14 broches). L'enregistrement s'effectue par front descendant (passage du 1 logique au 0 logique) au niveau de l'entrée SH_CP (broche 11). La sortie des données enregistrées s'effectue également avec un front descendant, mais à l'entrée ST_CP (12ème étape). Ainsi, les niveaux des huit derniers signaux enregistrés apparaissent sur les broches 1-7 et 15.

Un niveau de signal haut aux sorties (broches 1-7 et 15) correspond à la tension d'alimentation du microcircuit - dans notre cas +5 Volts, et un niveau bas correspond à 0 Volt. Les signaux de sortie sont statiques, c'est-à-dire inchangé jusqu'à ce que la prochaine impulsion arrive à l'entrée ST_CP (12ème étape). Il convient de noter qu'une diminution de la tension d'alimentation en dessous du niveau minimum entraîne une réinitialisation des signaux de sortie. Selon la documentation du microcircuit, la tension d'alimentation minimale est de 2 volts.

L'interface RS-232 est interfacée avec le microcircuit 74hc595 à l'aide de diodes Zener de 5,1 V. Selon la spécification RS-232 haut niveau le signal est compris entre +3 et +25V, ce qui nous permet d'organiser retour avec le programme de contrôle UniCOM.

Note 1 Note 2 Note 3 Note 4 Note 5

Appareil contrôle informatique divers appareils dont le schéma est présenté à la Fig. 1, se connecte au port USB de l’ordinateur, présent aujourd’hui dans chacun d’eux. La seule puce de l'appareil est un microcontrôleur commun ATmega8. Il est nécessaire d'organiser la communication via le bus. USB. Bien qu'il ne dispose pas de module matériel dédié, cette fonction est réalisée de manière logicielle.

Image 1

La résistance R1, connectée entre la borne positive de l'alimentation et la ligne USB D-bus, la fait passer en mode LS bas débit avec un taux d'échange de 1,5 Mbit/s, ce qui permet de décrypter les messages informatiques par programmation. Les résistances R4 et R5 éliminent les transitoires qui se produisent lors de l'échange d'informations, ce qui augmente la stabilité de fonctionnement. Le condensateur C1 bloque le bruit impulsionnel dans le circuit d'alimentation, ce qui améliore également la stabilité de l'appareil. Les diodes VD1 et VD2 sont utilisées pour abaisser la tension d'alimentation du microcontrôleur à environ 3,6 V - ceci est nécessaire pour faire correspondre les niveaux avec le bus USB.

Les signaux de commande de l'appareil sont générés aux sorties PB0-PB5 et PC0, PC1 du microcontrôleur. Niveau logique élevé - tension d'environ 3,4 V. Tension niveau faible proche de zéro. Vous pouvez connecter des appareils aux sorties qui consomment un courant ne dépassant pas 10 mA (de chaque sortie). Si nécessaire grandes valeurs courant ou tension, des nœuds correspondants doivent alors être utilisés.

L'appareil est assemblé sur planche à pain, la version imprimée n'a pas été développée. Des résistances MLT sont utilisées, les condensateurs C2 et SZ sont des condensateurs céramiques haute fréquence, C1 est K50-35 ou similaire importé. Diodes au silicium avec une chute de tension aux bornes de la jonction d'environ 0,7 V.

Le programme du microcontrôleur a été développé dans l'environnement Bascom-AVR variantes 1.12.0.0. Une bibliothèque permet de travailler avec le bus USB swusb.LBX, qui effectue le décodage logiciel des signaux USB en temps réel. Le code de programme résultant d'un fichier avec l'extension HEX doit être chargé dans la mémoire FLASH du microcontrôleur. L'état des bits de configuration du microcontrôleur doit correspondre à celui illustré sur la Fig. 2.

Figure 2

Lorsque vous connectez votre appareil à votre ordinateur pour la première fois système opérateur je découvrirai quelque chose de nouveau USB CACHÉ appareil compatible nommé " uniUSB" et installez pilotes nécessaires. Après quelques secondes, l'appareil est configuré et prêt à être utilisé. Pour travailler avec lui, le programme UniUSB a été créé. Il est présenté en deux versions : pour les systèmes d'exploitation 32 bits (x86) et 64 bits (x64) Famille Windows. La version 32 bits a été testée sur les systèmes d'exploitation Systèmes Windows 98, Windows XP, Windows 7 et 64 bits – uniquement sous Windows XP x64.

Programme UniUSBécrit dans une langue PurBasique(version 4.31) en utilisant la bibliothèque fonctions personnalisées HID_Lib, soutenant le travail avec USB CACHÉ dispositifs. Apparence La fenêtre du programme est illustrée à la Fig. 3.

figure 3

Dans le même dossier qu'elle fichier exécutable il devrait y avoir un fichier appelé UniUSB_KOfl.txt. Ce fichier stocke le script de contrôle appareils externes. Lorsque le programme démarre, les données du fichier sont chargées dans un tableau situé dans la fenêtre principale et lorsque le travail est terminé, elles sont enregistrées dans le fichier. Un clic gauche sur les cellules du tableau permet de changer leur état : 1 - niveau logique haut, 0 ou vide - niveau logique bas.

Pour ajouter ou supprimer une colonne du tableau, vous devez cliquer dessus clic-droit souris et sélectionnez l’action requise dans le menu qui apparaît. Lorsque vous connectez un appareil à un port USB, le programme le détectera et activera le bouton Démarrer situé en haut de la fenêtre de la barre d'outils. Cliquer sur ce bouton démarre le processus de tri des colonnes du tableau et de définition des états de sortie qui y sont indiqués. Pour plus de clarté, à gauche du tableau les numéros de sorties sur lesquelles ce moment Le niveau logique est élevé. La vitesse de recherche (temps en millisecondes entre les transitions de colonne en colonne) est définie dans le champ "Vitesse, ms".

class="eliadunit">

Attention, le système d'exploitation Windows est multitâche ! Cela signifie que le temps processeur est réparti entre de nombreux processus, parfois cachés à l'utilisateur, qui sont exécutés à tour de rôle, en tenant compte des priorités définies dans le système. Par conséquent, vous ne devez pas vous attendre à une grande précision en maintenant des intervalles de temps inférieurs à 100 ms.

Pour arrêter brièvement le tri des colonnes, utilisez le bouton "Pause". En appuyant à nouveau, la recherche reprendra là où elle s'est arrêtée. Le bouton "Stop" arrête complètement la recherche dans les colonnes du tableau. Si l'échange d'informations entre l'ordinateur et l'appareil échoue ou si l'appareil est déconnecté du connecteur Ordinateur USB, le programme signalera une erreur en affichant un message correspondant dans la barre d'état.

Source : Radio n°2, 2011

Archive de l'article "Contrôle de charge via interface USB"
Description: Textes sources des programmes, fichier du micrologiciel du microcontrôleur, programme uniUSB
Taille du fichier: 89,3 Ko Nombre de téléchargements : 2 773

P. VYSOCHANSKY, Rybnitsa, Transnistrie, Moldavie

Il existe un dispositif de contrôle informatique pour divers appareils, dont le schéma est illustré à la Fig. 1, fonctionnellement similaire à celui décrit dans, mais se connecte au port USB de l'ordinateur, qui (contrairement au port COM) est présent aujourd'hui dans chacun d'eux. La seule puce de l'appareil est le microcontrôleur ATmega8 commun. Il est nécessaire pour organiser la communication via le bus USB. Bien qu'il ne dispose pas de module matériel dédié, cette fonction est réalisée de manière logicielle.

La résistance R1, connectée entre la borne positive de l'alimentation et la ligne USB D-bus, la fait passer en mode LS bas débit avec un taux de change de 1,5 Mbit/s, ce qui permet de décrypter les messages informatiques par logiciel. Les résistances R4 et R5 éliminent les transitoires qui se produisent lors de l'échange d'informations, ce qui augmente la stabilité de fonctionnement. Le condensateur C1 bloque le bruit impulsionnel dans le circuit d'alimentation, ce qui améliore également la stabilité de l'appareil. Les diodes VD1 et VD2 servent à abaisser la tension d'alimentation du microcontrôleur à environ 3,6 V - ceci est nécessaire pour faire correspondre les niveaux avec le bus USB. Les signaux de commande de l'appareil sont générés aux sorties de RVO-RV5 et RSO, PC1 du microcontrôleur. Niveau logique haut - la tension est d'environ 3,4 V. La tension de niveau bas est proche de zéro. Vous pouvez connecter des appareils aux sorties qui consomment un courant ne dépassant pas 10 mA (de chaque sortie). Si de grandes valeurs de courant ou de tension sont requises, alors les nœuds correspondants illustrés sur la Fig. 5 et 6.

L'appareil a été assemblé sur une maquette ; aucun circuit imprimé n'a été développé. Des résistances MLT sont utilisées, les condensateurs C2 et SZ sont des condensateurs céramiques haute fréquence, C1 est K50-35 ou similaire importé. Diodes au silicium avec une chute de tension aux bornes de la jonction d'environ 0,7 V.

Le programme du microcontrôleur a été développé dans l'environnement Bascom-AVR version 1.12.0.0. Pour travailler avec le bus USB, on utilise la bibliothèque swusb.LBX, qui effectue le décodage logiciel des signaux USB en temps réel. Le code de programme résultant d'un fichier avec l'extension HEX doit être chargé dans la mémoire FLASH du microcontrôleur. À cette fin, le programmeur a été utilisé conjointement avec l'utilitaire intégré Bascom-AVR. L'état des bits de configuration du microcontrôleur doit correspondre à celui illustré sur la Fig. 2.

Lorsque vous connectez l'appareil à votre ordinateur pour la première fois, le système d'exploitation détectera un nouveau périphérique compatible USB HID nommé « uniUSB » et installera les pilotes nécessaires. Après quelques secondes, l'appareil est configuré et prêt à être utilisé. Pour travailler avec lui, le programme UniUSB a été créé. Il est présenté en deux versions : pour les systèmes d'exploitation 32 bits (x86) et 64 bits (x64) de la famille Windows. La version 32 bits a été testée sous les systèmes d'exploitation Windows 98, Windows XP et Windows 7, et la version 64 bits a été testée uniquement sous Windows XPx64.

Le programme UniUSB est écrit en langage PureBasic (version 4.31) à l'aide de la bibliothèque HIDJJb de fonctions définies par l'utilisateur, qui prend en charge le travail avec les périphériques USB HID. L'apparence de la fenêtre du programme est illustrée à la Fig. 3.

Dans le même dossier que son fichier exécutable, il devrait y avoir un fichier appelé UniUSB_KOfl.txt ou UniCOM_KOfl.txt. La dernière option est nécessaire à la compatibilité avec le programme UniCOM proposé dans . Ce fichier stocke le script de contrôle des périphériques externes. Lorsque le programme démarre, les données du fichier sont chargées dans un tableau situé dans la fenêtre principale et lorsque le travail est terminé, elles sont enregistrées dans le fichier. Un clic gauche sur les cellules du tableau permet de changer leur état : 1 - niveau logique haut, 0 ou vide - niveau logique bas.

Pour ajouter ou supprimer une colonne du tableau, vous devez cliquer dessus avec le bouton droit et sélectionner l'action requise dans le menu qui apparaît.

Lorsque vous connectez un appareil à un port USB, le programme le détectera et activera le bouton > situé en haut de la fenêtre de la barre d'outils. Cliquer sur ce bouton démarre le processus de tri des colonnes du tableau et de définition des états de sortie qui y sont indiqués. Pour plus de clarté, à gauche du tableau sont mis en évidence les numéros de sorties sur lesquelles le niveau logique est actuellement réglé à un niveau élevé. La vitesse de recherche (temps en millisecondes entre les transitions de colonne en colonne) est définie dans le champ "Vitesse, ms".

Attention, le système d'exploitation Windows est multitâche ! Cela signifie que le temps processeur est réparti entre de nombreux processus, parfois cachés à l'utilisateur, qui sont exécutés à tour de rôle, en tenant compte des priorités définies dans le système. Par conséquent, vous ne devez pas vous attendre à une grande précision en maintenant des intervalles de temps inférieurs à 100 ms.

Pour arrêter brièvement le défilement des colonnes, utilisez le bouton JB. En appuyant à nouveau, la recherche reprendra là où elle s'est arrêtée. Le bouton ■ arrête complètement la recherche dans les colonnes du tableau. Si l'échange d'informations entre l'ordinateur et l'appareil échoue ou si l'appareil est déconnecté du connecteur USB de l'ordinateur, le programme signalera une erreur en affichant un message correspondant dans la barre d'état.

Dispositif de contrôle informatique
divers appareils dont le schéma est présenté à la Fig. 1, fonctionnellement similaire
décrit dans, mais se connecte au port USB d'un ordinateur, qui (contrairement
depuis le port COM) est présent dans chacun d'eux aujourd'hui. La seule puce de l'appareil
- un microcontrôleur commun ATmega8. C'est nécessaire à l'organisation
Communication par bus USB. Bien qu'il manque de matériel spécialisé
module, cette fonction est réalisée par logiciel. Résistance R1 connectée entre
borne positive de l'alimentation et de la ligne USB D-bus, la transfère à basse vitesse
Mode LS avec un taux de change de 1,5 Mbit/s, qui permet de décrypter les colis
par ordinateur par programmation. Les résistances R4 et R5 éliminent les transitoires
processus qui surviennent lors de l'échange d'informations, ce qui augmente la stabilité du travail.
Le condensateur C1 bloque le bruit impulsionnel dans le circuit de puissance, ce qui améliore également
stabilité de l'appareil. Les diodes VD1 et VD2 sont utilisées pour réduire la tension
alimenter le microcontrôleur à environ 3,6 V - ceci est nécessaire pour
niveau correspondant au bus USB. Les signaux de commande de l'appareil sont générés sur
sorties РВ0-РВ5 et PC0, PC1 du microcontrôleur. Niveau logique élevé -
la tension est d'environ 3,4 V. La tension de bas niveau est proche de zéro. Vers les sorties
Vous pouvez connecter des appareils qui consomment un courant ne dépassant pas 10 mA (de chaque sortie).
Si des valeurs de courant ou de tension élevées sont requises, des nœuds doivent être utilisés
accords présentés dans la Fig. 5 et 6.

L'appareil est assemblé sur une maquette,
aucune version imprimée n'a été développée. Des résistances et condensateurs MLT C2 et C3 sont utilisés -
céramique haute fréquence, C1 - K50-35 ou similaire importée. Diodes
silicium avec une chute de tension aux bornes de la jonction d'environ 0,7 V. Programme pour un microcontrôleur
développé dans l'environnement Bascom-AVR version 1.12.0.0. Pour le fonctionnement du bus USB
La bibliothèque swusb.LBX est utilisée, qui effectue le décodage logiciel du signal
USB en temps réel. Le code du programme résultant
à partir d'un fichier avec l'extension HEX doit être chargé dans la mémoire FLASH du microcontrôleur.
À cette fin, le programmateur a été utilisé en conjonction avec le Bascom-AVR intégré
utilitaire. L'état des bits de configuration du microcontrôleur doit correspondre
montré sur la fig. 2. Lors de la première connexion de l'appareil à l'ordinateur, le système d'exploitation
le système détectera un nouveau périphérique compatible USB HID avec le nom
« uniUSB » et installez les pilotes nécessaires. Dans quelques secondes
L'appareil est configuré et prêt à l'emploi.

Un programme a été créé pour fonctionner avec lui
UniUSB. Il est présenté en deux versions : pour 32 bits (x86) et 64 bits
(x64) systèmes d'exploitation de la famille Windows. Il a été vérifié que la version 32 bits fonctionne
dans les systèmes d'exploitation Windows 98, Windows XP, Windows 7 et 64 bits -
uniquement sous Windows XP x64. Le programme UniUSB est écrit en langage PureBasic (version
4.31) en utilisant la bibliothèque HID_lib de fonctions définies par l'utilisateur,
prenant en charge le travail avec les périphériques USB HID. Apparition de la fenêtre du programme
montré sur la fig. 3. Dans le même dossier avec son fichier exécutable, il doit y avoir
un fichier appelé UniUSB_Code.txt ou UniCOM_Code.txt. La dernière option est obligatoire
pour la compatibilité avec le programme UniCOM proposé dans . Dans ce fichier
Le script de contrôle des appareils externes est stocké. Lorsque le programme démarre, les données
à partir du fichier sont chargés dans le tableau situé dans la fenêtre principale, et une fois terminé
les œuvres sont enregistrées dans un fichier. Un clic gauche sur les cellules du tableau vous permet de
changer leur état : 1 - niveau logique haut, 0 ou vide - bas
niveau logique. Pour ajouter ou supprimer une colonne de tableau, vous devez l'utiliser
cliquez avec le bouton droit et sélectionnez l'action requise dans le menu qui apparaît.

Lors de la connexion d'un appareil à un port USB
le programme le détectera et activera le bouton situé en haut
fenêtres sur la barre d'outils. Cliquer sur ce bouton démarre le processus
rechercher dans les colonnes du tableau et définir les états de sortie qui y sont indiqués. Pour
Pour plus de clarté, les numéros de sortie sont mis en évidence à gauche du tableau, sur
qui sont actuellement réglés à un niveau logique élevé. Vitesse
la recherche (le temps en millisecondes entre les transitions de colonne en colonne) est définie
dans le champ « Vitesse, ms ».

Veuillez noter que le système d'exploitation est Windows
- multitâche ! Cela signifie que le temps CPU est divisé entre plusieurs
parfois caché aux processus utilisateur qui sont exécutés à leur tour avec
en tenant compte des priorités établies dans le système. Alors n'attends pas grand chose
précision du maintien des intervalles de temps inférieurs à 100 ms. À court terme
Pour arrêter de parcourir les colonnes, utilisez le bouton Cliquez à nouveau dessus
continuera la recherche là où elle s'est arrêtée. Le bouton arrête complètement le tri des colonnes
les tables. Si lors de l'échange d'informations entre l'ordinateur et l'appareil
une panne survient ou l'appareil est déconnecté du connecteur USB de l'ordinateur,
le programme signalera une erreur en affichant le message correspondant
message.

LITTÉRATURE

1. Nosov T. Contrôle des appareils
via le port COM de l'ordinateur. - Radio, 2007, n° 11,0.61,62.

2. Ryzhkov A. Programmeur américain
Microcontrôleurs AVR et AT89S, compatibles avec AVR910. - Radio, 2008, n°7, p.
28, 29.

De l'éditeur. Les programmes pour le microcontrôleur et l'ordinateur se trouvent
sur notre serveur FTP à ftp:// ftp.radio.ru/pub/2011/02/uniUSB.zip

13-01-2014

ATiny2313

Zakharov Denis, Ukraine

Comme vous le savez, il existe un nombre suffisant d'interfaces avec lesquelles un microcontrôleur (MCU) peut communiquer avec appareils externes. Si vous devez connecter le MK à un ordinateur personnel ou un ordinateur portable, nous pouvons affirmer avec certitude qu'il est préférable d'utiliser l'interface du port COM RS-232.

La raison de ce choix est évidente : presque tous les contrôleurs disposent de modules matériels UART, avec lesquels vous pouvez transférer des informations avec une consommation minimale de ressources MK. De plus, il existe de nombreux programmes éprouvés conçus pour fonctionner avec le port COM. Étant donné que les signaux MK ont des niveaux TTL, un convertisseur de niveau est nécessaire pour correspondre à l'interface RS-232. Il est souvent réalisé sur la base de la puce MAX232, abordable et populaire.

Image 1.

L'appareil présenté (Figure 1) est conçu pour contrôler des appareils utilisant n'importe quel PC avec port USB. Ordinateurs modernes et les ordinateurs portables disposent de plusieurs de ces ports. Grâce à ce complexe, vous pouvez contrôler la lumière, la télévision et d'autres appareils. Les périphériques d'exécution ne doivent pas nécessairement être à proximité immédiate du PC.

L'appareil est constitué d'éléments assez accessibles et communs. Les deux microcircuits sont des microcontrôleurs de la famille ATtiny2313. Le premier contrôleur est connecté au port USB de l'ordinateur et sert de convertisseur de format USB-COM. Le second se connecte au premier et analyse en permanence les commandes envoyées depuis le PC via le programme terminal Terminal v1.9b.

La résistance R4 connectée à la broche USB 2 fait passer l'appareil en mode LS basse vitesse, ce qui vous permet de décrypter les messages d'un PC lors de l'échange de données à une vitesse de 1,5 Mbit/s à l'aide du programme.

À l'aide des résistances R2 et R3, les processus transitoires sont éliminés. Le condensateur C5 bloque le bruit impulsionnel dans le circuit de puissance. Les diodes Zener D1 et D2 sont nécessaires pour correspondre aux niveaux logiques du MK et Entrée USB PC. Pour un transfert de données sans erreur entre les contrôleurs, les fréquences des résonateurs à quartz doivent être de 12 et 4 MHz.
Des résistances de rappel doivent être connectées aux broches /RESET afin d'éviter ultérieurement une réinitialisation arbitraire du MC en raison de l'influence des interférences et contrainte statique. Dans ce schéma, toutes les commandes sont affichées sur des LED connectées au port B. Pour contrôler des appareils, vous devez connecter les sorties du contrôleur à un relais (Figure 2).

Vous pouvez assembler l'appareil sur une maquette, même s'il est toujours préférable d'en utiliser une à part entière circuit imprimé. Les éléments peuvent être placés, par exemple, comme le montre la figure 3.

Le programme du microcontrôleur U1 a été développé par un ami de GetChiper dans l'environnement Bascom-AVR. Une bibliothèque permet de travailler avec le bus USB swusb.LBX. Avec son aide, le décodage logiciel du protocole USB est effectué en temps réel. Pour que l'appareil fonctionne avec un PC, vous devez installer les pilotes appropriés en les copiant sur Disque dur. Lors de votre première connexion, l'appareil sera reconnu et demandera un pilote. Ensuite, vous devez spécifier le chemin d'accès au dossier contenant les fichiers et tout fonctionnera.

Le programme du microcontrôleur U2 a été écrit par moi dans l'environnement AVRStudio en langage assembleur. Le schéma fonctionnel de l'algorithme de fonctionnement MK est présenté à la figure 4. Le module matériel UART doit être configuré pour s'interrompre à la fin de la réception des données. Le MK lui-même n'exécutera aucune fonction jusqu'à ce qu'une interruption se produise. Pour réduire la consommation d'énergie, vous pouvez utiliser mode veille, mais dans cette conception, cela n'était pas nécessaire. Dès que les commandes sont envoyées depuis le terminal PC, le MK commence instantanément à les analyser. Actuellement, le contrôleur prend en charge le système de commande suivant :

-sur1, sur2, sur3, sur4, sur5, sur6, sur7, sur8- des commandes pour définir les ports sur « log. 1";
-off1, off2, off3, off4, off5, off6, off7, off8- des commandes pour définir les ports sur « log. 0" ;
-ser - définit tous les ports sur l'état actif « journal ». 1";
-clr- réinitialiser tous les ports à l'état « log.0 ».

Après avoir fini de saisir chaque commande, vous devez appuyer sur Entrée. De cette façon, le MK pourra déterminer la fin de la commande et commencer à l'analyser. Le contrôleur répondra « ok » à chaque commande correcte. Si vous saisissez des données incorrectes, « erreur » sera renvoyée à la ligne du terminal. Un exemple d’exécution de commande est présenté dans la figure 5.

Version du micrologiciel 1.0. Les fusibles doivent être réglés conformément à la figure 6. En cours de développement prochaine version firmware, où le MK s'auto-apprendra et modifiera les systèmes de commande dans le terminal.

Logiciel MK, modèle virtuel Proteus et pilote pour PC -
Protocole de transfert de données entre MK et PC - télécharger

Pour commenter les documents du site et recevoir accès totalà notre forum dont vous avez besoin registre .

  • ....en fait, je voulais voir la connexion entre le port USB d'un ordinateur et le port COM d'un deuxième... ou le port LPT d'un troisième...
  • Merci! Faute de frappe corrigée :)
  • Pourquoi utiliser 2MK ? Attiny2313 a-t-il vraiment peu de flash ? Ou n'y a-t-il tout simplement pas assez de ports d'E/S ? D'accord, vous pouvez voir que l'USB est bloqué sur INT0/INT1.
  • La résistance des bobines de relais de faible puissance est d'environ 100-200 Ohms, sans tenir compte du transistor saturé (ce n'est ni un démarreur ni un contacteur). Ainsi, l'interrupteur adapté 50-200 mA n'aura pas peur. Le matériel est très intéressant en termes de connexion du MK à l'USB sans aucune puce d'interface et sans présence de matériel USB dans la structure du MK. Mais compte tenu des buts et objectifs de la source originale http://www.recursion.jp/avrcdc/cdc-232.html, des deux MK, l'un remplit toujours les fonctions d'un convertisseur USB-COM. Et un convertisseur très bon marché, ce qui fait certainement plaisir.
  • Voici un citoyen intéressant qui a été pris avec de « nobles habitudes », à en juger par son surnom. De quels extrêmes parlons-nous ? Il semble que le matériel ne mentionne même pas le type de relais ou de transistors. Et si le relais est alimenté par USB 5V, alors, bien sûr, j'aimerais minimiser la consommation de l'hôte sur le PC. Ceci peut être réalisé avec des optocoupleurs et nourriture supplémentaire relais côté charge, ce qui complique le circuit. Ou quelques options supplémentaires. L'accent est-il mis dans l'article sur l'optimisation ? L'auteur a atteint son objectif et fait ce qu'il faut en n'affichant pas de cachet spécifique. Pour celui qui va répéter, ce nœud suffit.
  • Oui, l'article est toujours le même... mais est-ce que ça vaut le coup ? Je voulais aussi commenter quelque chose dès que je l'ai lu, notamment la diode. Mais vous ne pouvez pas être anonyme ici. C'est pourquoi l'auteur de l'AVR-CDC ? Je n'ai pas remarqué que les signaux DTR, DTS, RTS, CTS sont utilisés quelque part dans le circuit. Le V-USB ne suffit pas ? Nous avons déjà parlé plus haut de deux « briques », une seule suffirait. Et concernant la diode a déjà été corrigée, merci Bouddha ! La diode est nécessaire pour protéger le transistor de l'impulsion de tension d'auto-induction de l'enroulement du relais au moment où le courant s'ouvre. Au fait, je me suis souvenu d'une implémentation. L'article était dans le magazine Radio, mais il a également été trouvé sur Internet, si vous êtes intéressé, vous pouvez y jeter un œil.