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.
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
-
Optimisation de code
18 février 2009, par Julien H. -
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 (...) -
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 (...) -
In Situ Programming
17 octobre 2005, par PatrickOn appelle ISP ou In Situ Programming la méthode de chargement du code dans les microcontrôleurs (Atmels)directement sur le support d’utilisation finale (carte électronique, robot, balise).
-
Utiliser WinAVR et MFile et AVRDUDE
16 février 2010, par Julien H.Pour programmer un microcontrôleur Atmel AVR, on doit écrire du code source sur son ordinateur et le compiler pour le transformer en un programme pour AVR, puis le transférer dans le micro-contrôleur.
Toutes ces étapes nécessitent une suite de logiciels différents (un éditeur de texte, un compilateur spécifique selon le langage choisi, et un logiciel de transfert, pour simplifier) plus tous les outils de vérification de code, d’optimisation de taille, etc...
C’est ce que permet WinAVR, (...) -
Premiers pas avec l’OpenSCB
9 février 2011, par Julien H.Pobot a la chance d’être parmi les premiers à pouvoir tester l’OpenSCB, une carte de contrôle de servomoteurs programmable open source. Nous présentions le projet à ses débuts en décembre 2010, et nous avons eu le plaisir de recevoir le premier prototype en version 0.1.
Voici ce que cette carte contient : le micro-contrôleur programmable : un AVR32 "AT32UC3B1256" un connecteur HE10 pour le JTAG (test et debug) trois leds (bleu, rouge, vert) deux boutons poussoirs : 1 de reset, 1 de (...) -
Ralentisseur de servomoteur
20 octobre 2013, par Jean-Pierre, Julien H.Cet article est une astuce pour contrôler la vitesse d’un servomoteur sans alourdir son programme principal. L’idée vient des modélistes qui utilisent des radio-commandes, et consiste à intercaler entre le signal et le servomoteur une petite puce qui fera l’intermédiaire.
-
Simple LCD with I2C module on Arduino
25 September 2011, by Julien H.Many liquid cystal displays hacked in garbage stuff have their own controller and even more their own communication protocol, making hard to reuse them.
Nowadays it’s cheaper to buy a specific module that controls a common LCD chip such as Hitachi HD44780. For less than 30 € you have a LCD 2x16 + the I2C board that allows your computer or your robot to display text without extra pins.
This price is cheap because of the large Arduino community that buy dozens of these circuits per (...) -
Caméra pilotée par AVR
13 août 2010, par Julien H.Cette caméra utilise la même optique que la CMUcam ou la POB-Eye mais avec un microcontrôleur AVR Atmel (ATmega8) pour implémenter le traitement d’image et la communication série. Présentation de l’AVRcam sur JRobot
Le soft est open-source et on peut ajouter ses algorithmes par reprogrammation ISP. On pouvait l’acheter en 2004 mais il semble que le projet soit arrêté.
En tout cas cela montre que c’est possible :) -
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 (...)