Le principe d’interruption est rapidement nécessaire pour gérer des comportements non-linéaires. En effet concevoir un programme de robot (ou tout autre système électronique) avec seulement des séquences d’instructions et des boucles arrive rapidement à ses limites.
Il n’est pas non plus toujours nécessaire de recourir à un système d’opérations temps réel (même si nous avons traité ce sujet : RTOS sur AVR). On va donc présenter ici comment écrire un programme "réactif" qui gère des "événements". Dans le (...)
Accueil > Mots-clés > Composants > AVR
AVR
Le constructeur de composants Atmel propose une famille de microcontrôleurs 8 bits de type RISC appelée AVR.
On y trouve de tous petites puces (8 pattes) comme les ATtinyXX ou TinyAVR, mais également de plus grosses (28 pattes et même plus) comme les ATmegaXX ou MegaAVR.
Il y a désormais les XMega, ainsi que d’autres contrôleurs spécialisés ayant un cœur AVR, même des FPGA. Nous utilisons principalement la famille Mega AVR qui équipait les robots des Coupes de France 2006 et 2008, et bien sûr les ATmega8 et dérivés qu’on retrouve sur les Arduino.
Articles
-
Vecteurs d’interruption pour AVR
7 mars 2010, par Julien H. -
LCD sur I2C simplement
25 septembre 2011, par Julien H.Le prix des afficheurs à cristaux liquides est en baisse, et il est de plus en plus fréquent de trouver des circuits de commande simples, évitant la gestion du protocole et économisant surtout le nombre de pattes d’entrée/sortie nécessaires. Georges utilise pour son projet un LCD sur bus I2C à base de PCF8574 dont voici la mise en œuvre.
Il y autant de circuits de communication avec un écran LCD que de contrôleurs de LCD. Deux possibilités de se retrouver bloquer par un manque de documentation. La (...) -
AVRlib et les timers des ATmega168
31 janvier 2009, par Julien H.Un petit article pour aider ceux qui ont des erreurs de compilation en utilisant les fonctions de timers d’AVRlib avec un ATmega168, ATmega48 ou ATmega 88.
-
Optimisation de code
18 février 2009, par Julien H.Quelques exemples de code optimisé pour montrer qu’il n’y a rien de magique et qu’un peu de raisonnement et d’expérience peut vous faire gagner beaucoup de performances.
-
Echanges maître/esclaves en I2C
17 mars 2011, par Julien H.Voici un article qui décrit dans plusieurs langages les échanges qu’il faut mettre en œuvre entre deux dispositifs équivalents (deux micro-contrôleurs par exemple) pour une liaison I2C.
Il ne s’agit pas de piloter un périphérique I2C mais de programmer à la fois le maitre et l’esclave, afin d’expliquer les différentes étapes. Pour compléter cet exercice, on utilisera plusieurs langages et si possible plusieurs cibles.
Les principes
Pour établir une communication sur un bus I2C, il faut choisir la (...) -
Programmateur USB pour AVR
12 novembre 2006, par Eric P.Ayant récemment mis à niveau ma configuration machine, je me retrouve avec une carte mère dépourvue de port parallèle. Et oui, maintenant que toutes les imprimantes ou presque utilisent une connexion USB, nos bons vieux ports parallèles sont à peu près autant d’actualité que les dinosaures...
Première tentative
Pour parer cela, rusé que je suis, j’avais également acheté une carte d’extension PCI, qui ajoute un port parallèle et deux ports série. Ca marche très bien... mais pour l’imprimante seulement. (...) -
Programmateur USB économique pour AVR
28 février 2010, par Julien H.Aujourd’hui nous testons un nouveau programmateur par USB pour des microcontrôleurs AVR. Il nous a été proposé par Devtronic qui le commercialise parmi les différents produits de la gamme myAVR.
Lien vers la boutique myAVR
Ce n’est pas le premier produit de ce genre, et au club plusieurs utilisent le MK2 d’Atmel. Quand à moi, j’utilisais l’ICProg dans sa version compacte, qu’Eric avait déjà décrit dans cet article.
Donc on va faire court et efficace : il ne coûte que 15 euros (moitié moins que les (...) -
The very first steps
25 September 2011, by Eric P.Here we are : first attempt to create a board with a micro-controller.
We are going to start simple, by building the "Hello World" for electronics : the flashing LED. What do we need ? an Atmel MCU (it will be an ATmega8, because this was the smallest model my local hardware retailer had in stock) all ancillary components (full liste will come later) a breadboard, since we are going to modify our first realization in soon to come experiments a development environment for AVR MCUs. My (...) -
Ma carte AVR avec le langage Arduino
14 janvier 2013, par Jean-Pierre, Julien H.Certains d’entre nous disposent de circuits personnels ou de cartes du marché utilisant les micro-contrôleurs de la famille AVR : gamme myAVR de Devtronic, gamme EasyAVR de mikroElectronika gamme ICmega de In-Circuit pour ne citer que les cartes utilisées au club.
Tous fonctionnent sur le même principe : une compilation sur l’ordinateur de développement, puis l’envoi d’un fichier binaire dans la puce par bootloader série ou par programmateur ISP.
Ces points ont été développés dans différents (...) -
Prototype rapide avec myAVR board (+ Arduino)
19 janvier 2013, par Julien H.Il existe de multiples cartes à base de micro-contrôleur, et chacun doit choisir celle qui convient le mieux à ses tests.
Nous avons régulièrement mis en garde les participants de nos ateliers sur la difficulté des connexions de composants électroniques : fragilité des fils, encombrement, transport délicat, risques d’erreurs.
Après avoir étudié les plaques d’essai et les extensions Arduino (shields), voici le tour d’une petite carte à base de µC AVR. Il s’agit de la myAVR board MK2, une carte de (...)