Vue d’ensemble de l’Arduino croquis téléchargement des processus et des FAI (1 / 10 étapes)

Étape 1: FTDI ou téléchargement de série

FTDI est en fait une marque de chips. La société FTDI est spécialisée dans les puces utilisées pour se connecter via le port USB. Dans le land de l’Arduino, jetons USB-to-serial sont utilisés pour interfacer un ordinateur qui exécute l’IDE Arduino au processeur principal de votre Arduino pour le téléchargement de nouveaux croquis et permettant d’interagir avec vos croquis via une fenêtre de serial monitor. Les interfaces de puce USB-to-serial avec l’interface UART du processeur sur votre Arduino ATMEL.

Afin que l’Arduino à accepter une esquisse de l’interface sérielle, il exécute un programme appelé un bootloader, qui accepte l’esquisse et l’écrit dans la mémoire Flash. Le bootloader réside en fait dans une petite partie de la mémoire Flash dans le secteur supérieur des adresses de mémoire, qui est réservée à l’utilisation du chargeur de démarrage. Comme le programme bootloader reçoit le croquis, elle stocke dans la partie inférieure de la mémoire Flash.

Cette programmation série utilise un protocole appelé TTL série. Il est basé sur un protocole de communication ancienne appelé RS-232. RS-232 communications utilisent les tensions qui changent rapidement d’une tension positive de 3 à 25 volts, à une tension négative de -3 à-25 volts. Ordinateurs personnels viennent en général n’est plus avec interfaces RS-232, mais ils ont utilisé pour il y a quelques années. Un PC avec une telle interface utilise généralement des tensions qui oscillent entre 12-12 volts pour envoyer un signal RS-232. Le processeur ATMEL sur un Arduino utilise des signaux dans la gamme de 0 à 5 volts. La version de ce protocole RS-232 qui est compatible avec les tensions dans la gamme que du processeur de l’Arduino peut gérer est appelée TTL série, ou parfois vous pouvez entendre que cela appelle TTL-232, ou juste de série.

La plupart des Arduinos possèdent un USB-to-serial adaptateur puce intégré, vous pouvez de connecter l’Arduino directement à votre ordinateur sans aucune interface particulière ou un programmeur. Certains Arduinos, comme le LilyPad, Mini et Mini Pro, ne viennent pas avec un adaptateur USB-vers-série et vous devez fournir votre propre autre externe. Les adaptateurs externes sont très souvent appelés adaptateurs FTDI, même si la marque de la puce n’est pas FTDI.

Il y a plusieurs fils ou connexions impliqués dans communication sérielle. Les plus importants sont appelés RX (court pour recevoir) et TX (court pour transmettre).

Comme son nom l’indique, le fil RX ou code pin reçoit d’un autre appareil. Il écoute les communications entrantes. Le fil TX ou code pin transmet des données vers un autre appareil. Le fil TX de votre adaptateur USB-vers-série bascule rapide entre 0 et 5 volts dans un modèle et il est attaché à la broche RX sur le processeur de l’Arduino, qui est à l’écoute de ces modèles.

La communication est bidirectionnelle, alors le processeur de l’Arduino peut transmettre des signaux à l’adaptateur USB-série. Les utilisations de processeur, il est propre TX broches pour envoyer un signal à la broche RX de l’adaptateur USB-série. L’adaptateur USB-vers-série traduit les signaux dans les deux sens entre l’Arduino et votre ordinateur via le câble USB.

L’ordinateur envoie le croquis de votre Arduino et reçoit l’esquisse de l’Arduino l’ordinateur peut de vérifier que le programme chargé d’accord. La même connexion série utilisable par votre esquisse en cours d’exécution sur l’Arduino pour communiquer avec vous par l’intermédiaire de la fenêtre Moniteur série. Il est courant d’utiliser cette méthode pour déboguer vos croquis, parce que vous pouvez saupoudrer Serial.print Déclarations dans votre code à des endroits stratégiques pour rapporter les valeurs des variables ou à dire ce que votre code est fait pour le moment. Et vous pouvez renvoyer des données à votre ordinateur, par exemple de capteur ou lectures de broche d’entrée. Vous pouvez également envoyer des données de l’ordinateur à l’esquisse en cours d’exécution sur votre Arduino en utilisant le moniteur de la série.

Vous pouvez vous demander comment l’Arduino sait quelle communication série est essayant d’envoyer un croquis pour charger ou juste communiquer par l’intermédiaire de la série monitor avec l’esquisse qui est déjà en cours d’exécution sur l’Arduino ? La réponse est simple. Le programme bootloader qui accepte des esquisses et reprogramme l’Arduino ne fonctionne que dans les deux premières secondes après que le processeur de l’Arduino est réinitialisé. Si le bootloader de programme en cours d’exécution sur l’Arduino ne reçoit pas une certaine séquence de caractères indiquant une esquisse tente de télécharger, il quitte en cours d’exécution et commence l’esquisse que vous avez chargée précédemment.

Quand Arduinos ont été développés tout d’abord, la personne téléchargeant un croquis à l’Arduino dû appuyer sur le bouton de réinitialisation sur l’Arduino dès le début du processus de téléchargement et de fois qu’il correctement ou essayez à nouveau. Les versions ultérieures d’Arduino fait usage d’un fil de protocole série additionnel appelé DTR pour réinitialiser l’Arduino automatiquement. Étant donné que le signal DTR va de 5V à 0 pour le moment qu'une nouvelle connexion à l’Arduino est démarrée, si vous envoyez ce signal à la ligne de réinitialisation du processeur de l’Arduino, il remet à zéro. Si que la nouvelle connexion série est mis en place est parce que l’IDE Arduino envoie une esquisse pour le chargeur de démarrage, le programme d’amorçage va de l’avant et accepte l’esquisse et le stocke. Si que la nouvelle connexion série est mis en place est parce que vous ouvrez le serial monitor de l’IDE Arduino, la réinitialisation de l’Arduino, le chargeur de démarrage exécute ensuite juste assez longtemps pour se rendre compte de que l’IDE ne tente pas d’envoyer un croquis et l’esquisse que vous avez téléchargé précédemment mises en chantier en cours d’exécution.

Il est utile de connaître ces signaux comme le signal DTR utilisé pour la remise à zéro automatique, surtout si vous voulez correctement connecter un adaptateur USB-série à un Arduino qui n’a pas l’adaptateur construit en, comme LilyPad Mini et Mini Pro. Ou, si vous souhaitez résoudre des problèmes avec un Arduino, ou programmer un Arduino à l’aide de l’autre. Je l’ai mentionné dans le paragraphe précédent, que le signal DTR passe de 5V à 0 pour le moment qu'une nouvelle connexion est établie. Eh bien, ce signal faible et reste faible pour tout le temps qu'il est connecté. Si ce signal était attaché directement aux broches de réinitialisation du processeur, le processeur allait rester dans un état de remise à zéro et ne serait jamais obtenir commencé exécutant le programme d’amorçage ou l’esquisse que vous avez téléchargé précédemment.

Donc, voici l’astuce : DB le signal est envoyé à travers un petit condensateur sur la broche de remise à zéro du processeur. Le condensateur transforme la tension du signal DTR (qui est faible et reste faible) en une pointe temporaire qui va de faible à 0V et arrive tout de suite à 5V. Cela réinitialise l’Arduino et il permet de démarrer le programme d’amorçage, qui plus tard commence l’esquisse.

Un adaptateur USB-vers-série nécessite un pilote pour être chargé sur votre ordinateur, pour votre ordinateur puissent comprendre comment communiquer avec elle. Véritables Arduinos utiliser liste spécifique et limitée de modèles d’adaptateurs USB-vers-série donc l’IDE peut être préemballé avec tous les pilotes dont vous pourriez avoir besoin. Si vous utilisez un clone, faux, dérivé, artisanale ou une Commission de développement non supporté dans le cas contraire faite par quelqu'un autre que arduino.cc ou l’un de leurs fabricants partenaires, c’est effectivement très bien parce que c’est le logiciel et le matériel de source ouverte. N’importe qui peut faire une. Mais le jury peut utiliser un adaptateur USB-série qui nécessite un pilote pour votre ordinateur et qui n’est pas inclus dans le téléchargement du logiciel pour l’IDE Arduino. Un exemple de ceci est la puce USB-vers-série de CH340G qui est très fréquent sur compatible Arduino planches vendues sur eBay et Amazon. C’est bon pour vous d’avoir connaissance de cela pour que vous préparer votre ordinateur avec le pilote approprié.

Cette communication série qui se passe habituellement avec le processeur de l’Arduino arrive à travers les tiges spécialisés sur le processeur qui sont spécialement conçus pour la communication série TTL. Le processeur a un matériel spécial appelé un UART, qui gère l’envoi des données sur la broche TX ou reçoit des données sur la broche RX. La logique de gestion de ces signaux est intégrée au processeur à un niveau très fondamental. Si vous n’utilisez pas les broches RX et TX sur le processeur de communication série à l’aide de l’UART, les broches sont disponibles pour faire d’autres choses, telles qu’activer des relais, transistors, diodes, ou de recevoir des signaux numériques provenant de capteurs. Ils sont tout simples broches numériques si il n’est pas occupent avec des signaux de la série. Certaines puces processeur ont plusieurs UART et donc plusieurs jeux de broches RX et TX. Ces broches sont aussi plaines broches numériques sinon utilisé par la partie de l’UART du processeur de communication série.

Un chargeur de démarrage peut être conçu pour accepter les esquisses via n’importe quel protocole utiliser près des broches sur le processeur. Le processeur a une variété de broches qui sont plaines broches numériques mais ces broches peuvent éventuellement être utilisées pour les protocoles spécialisés. Par exemple, il y a un groupe de pins qui peut être utilisé pour le protocole IIC ou I2C, qui est un protocole de bus série spéciale capable de communiquer avec plusieurs appareils. Et il y a un autre groupe de broches qui peuvent être utilisés pour le protocole SPI, qui est encore un autre bus série différents protocole utilisé pour communiquer avec les périphériques. Le processeur a un matériel spécial conçu pour mettre en œuvre ces différents protocoles sur les différentes broches dédiés, et la logique de gestion de ces signaux est intégrée au processeur à un niveau très fondamental.

Tornade #1: Ces différents protocoles, tels que TTL série I2C et SPI ont la logique bas niveau intégrée au processeur pour gérer les protocoles si les broches spécifiques pour le protocole sont connectés à un autre appareil, mais les protocoles peuvent être implémentées pour travailler sur les broches numériques sur le processeur en écrivant un logiciel qui émule le comportement des circuits de logique intégrée du processeur. Cela s’appelle bit cogner. Vous pouvez écrire un programme qui pousse les broches dans un modèle qui satisfait les exigences et les spécifications du protocole. Par exemple, un protocole de série de logiciels peut être écrits qui utilise des broches non-UART du processeur. Le logiciel prend alors la place de circuit UART de matériel. Ceci est utile si les broches que vous utiliseriez normalement pour un protocole particulier sont occupés ailleurs, et vous devez utiliser les autres broches. Ou, si vous voulez avoir plus de l’interface intégrée de série une. Par exemple, le processeur ATmega328P a seulement un UART et il utilise des broches numériques 0 et 1. Il normalement ne communique avec un autre périphérique série à la fois. Si vous souhaitez joindre un autre équipement de série sur les broches 2 et 3, vous pouvez faire qu’avec un logiciel serial qui bit-bangs du protocole. Le chargeur de démarrage de Optiboot peut être compilé pour communiquer par le biais de logiciels de série sur les broches non-UART.

Arduinos viennent généralement avec un bootloader série installé, qui utilise le matériel UART à bord le processeur ATMEL et l’IDE Arduino en cours d’exécution sur votre ordinateur est conçu pour communiquer avec ce chargeur de démarrage.

Tornade #2: Vous n’avez besoin d’un chargeur de démarrage ! Découvrez ensuite ISP.

Articles Liés

Vue d’ensemble de l’Arduino 101

Vue d’ensemble de l’Arduino 101

Dans ce Instructable, nous prenons un coup d'oeil au 101 Arduino avec le processeur Intel Curie. Nous allons couvrir ce qui est sur le plateau, certaines de ses caractéristiques, comment le programmer, certains de mes plaintes et sa consommation d'én
CONNECTER l’Arduino croquis 101

CONNECTER l’Arduino croquis 101

donc ce Geek vieux paresseux (Journal) s'ennuie parfois et veut quelque chose à faire. En fait, parfois je suis fatigué d'essayer de résoudre les problèmes de matériel, qui sont parfois des problèmes de logiciel. J'ai donc décidé de faire un tutoriel
X-Mass Arduino croquis

X-Mass Arduino croquis

X-Mass Arduino croquis avec 8 modes (gauche-droite, de milieu, deux pivots, progress bar, droite / gauche inversé, étape par étape, tetris, incrementor).Esquisser le code source :https://GIST.github.com/1508578
Comment connecter un programmeur FT232RL à l’Arduino ATMEGA328 pour le téléchargement des esquisses

Comment connecter un programmeur FT232RL à l’Arduino ATMEGA328 pour le téléchargement des esquisses

Dans ce mini Instructable, vous apprendrez comment relier la puce FT232RL au microcontrôleur ATMEGA328 pour télécharger des sketches.Vous pouvez voir une Instructable sur ce stand-alone microcontrôleur ici.Étape 1: Liste des pieces1 jeton de x FT232R
Comment faire pour Arduino #1 - installation d’Arduino et téléchargeant une esquisse

Comment faire pour Arduino #1 - installation d’Arduino et téléchargeant une esquisse

j'ai montrer comment installer Arduino sur un Mac, parlons un peu de l'Arduino Nano, télécharger un croquis à l'Arduino, puis parler sur le fonctionne du montage expérimental.
Vue d’ensemble de la mécanique vélo

Vue d’ensemble de la mécanique vélo

quelques réflexions, s'il vous plaît ne considèrent pas leur évangile.Je chercherais ailleurs le détail. Par « ailleurs », je pourrais dire GCN, Sheldon Brown, Park Tool et sans doute beaucoup d'autres sur les sites de partage vidéo.Étape 1: Histoire
Lacrosse des hommes ; Une vue d’ensemble

Lacrosse des hommes ; Une vue d’ensemble

Lacrosse hommes est actuellement un des sports plus forte croissance en Amérique. C'était origionally joué par les Amérindiens, et il a été surnommé "La" Crosse", lorsque les explorateurs européens ont vu leurs bâtons (qui ressemblait à la
À distance caméra VGA réglementées - vue d’ensemble

À distance caméra VGA réglementées - vue d’ensemble

l'idée de ce projet était très simple : concevoir un système télécommandé peu coûteux capable de prendre des photos et leur téléchargement à un stockage de fichiers à distance avec une caméra pour être activés par des commandes distantes ou événement
Circuit d’Arduino croquis Application

Circuit d’Arduino croquis Application

Hé les gars, dans ce projet, je vais vous montrer comment faire des circuits d'arduino utilisant une application facilement. J'ai également téléchargé/joint une vidéo pour vous aider à comprendre comment utiliser l'application et ce que tout est poss
Arduino croquis pour un graphisme rétro compteur analogique sur un écran TFT modern

Arduino croquis pour un graphisme rétro compteur analogique sur un écran TFT modern

Un autre croquis de ma collection qui peut être intéressant...Affichage de petits nombres de digital de la température et l'humidité etc. sur un écran minuscule n'est pas toujours la meilleure façon d'afficher les informations. Les vieux compteurs an
Vue d’ensemble du Kit bon marché Oscilloscope

Vue d’ensemble du Kit bon marché Oscilloscope

Bienvenue sur ma présentation Instructable ! Cela va être plus d'un « pré Instructable', où j'ai juste revoir les différents composants du kit DIY Oscilloscope de Gearbest. Pour suivre sera un assembly Instructable et aussi une utilisation et une fin
Salle de sport sur une vue d’ensemble du Budget de la maison

Salle de sport sur une vue d’ensemble du Budget de la maison

Il s'agit de mon premier Instructable.Donc en gros ce que je faisais était sourcing et couper des plaques d'acier que j'ai acheté chez un yard de métal de rebut.Étape 1: Couper les disquesAvec l'aide d'un ingénieur local et moi et lui ont travaillé e
Vue d’ensemble DIY Iron Man Arc réacteur

Vue d’ensemble DIY Iron Man Arc réacteur

edit : mise à jour rapide les gars, je suis entré dans cette instructable à l'halloween accessoires contestent donc j'apprécier si vous voteriez pour lui:) MerciJe sais que vous avez toujours rêvé d'être un super-héros, et tandis que Iron Man ne ness
Circuit de commande de tonalité Volume Ballance. Vue d’ensemble.

Circuit de commande de tonalité Volume Ballance. Vue d’ensemble.

j'ai décidé de faire ce projet audio tel qu'il est intéressant au moyen d'apprendre quelque chose de nouveau, élargir mes connaissances et bien sûr je voulais commander la musique entre sa source et les haut-parleurs.Le circuit est basé sur LM1036N q