<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.digitalspirit.org/blog/index.php/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>DigitalSpirit - Tag - gpl</title>
  <link>http://www.digitalspirit.org/blog/index.php/</link>
  <atom:link href="http://www.digitalspirit.org/blog/index.php/feed/tag/gpl/rss2" rel="self" type="application/rss+xml"/>
  <description>Blog personnel de Charles Rincheval contenant des descriptions de projets réalisés dans les domaines du logiciels libres en encore dans des développements de systèmes embarqués</description>
  <language>fr</language>
  <pubDate>Mon, 06 Feb 2012 16:31:19 +0100</pubDate>
  <copyright>© 2008 Charles Rincheval. Ce billet a été originellement publié sur le site www.DigitalSpirit.org</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Librairie Arduino pour afficheur Oled : Oled4d</title>
    <link>http://www.digitalspirit.org/blog/index.php/post/2009/12/14/Librairie-pour-afficheur-Oled4d-Arduino</link>
    <guid isPermaLink="false">urn:md5:c1bdee6d17f20c6370a11b09e3ebece9</guid>
    <pubDate>Mon, 21 Dec 2009 11:09:00 +0100</pubDate>
    <dc:creator>hugo</dc:creator>
        <category>Electronique</category>
        <category>4d system</category><category>arduino</category><category>diy</category><category>gpl</category><category>libre</category><category>logiciel libre</category><category>oled</category><category>Oled 4d</category><category>Planet-Libre</category><category>rs232</category><category>série</category>    
    <description>    &lt;p&gt;
&lt;a href=&quot;http://www.digitalspirit.org/blog/public/oled_4d.png&quot;&gt;&lt;img title=&quot;Oled 4D, déc. 2009&quot; alt=&quot;&quot; src=&quot;http://www.digitalspirit.org/blog/public/oled_4d.png&quot; /&gt;&lt;/a&gt;
&lt;a href=&quot;http://www.digitalspirit.org/blog/public/oled_4d_verso.jpg&quot;&gt;&lt;img title=&quot;Oled 4D, déc. 2009&quot; alt=&quot;&quot; src=&quot;http://www.digitalspirit.org/blog/public/oled_4d_verso.jpg&quot; /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Voici une librairie libre de gestion d'afficheur &lt;acronym title=&quot;Organic light-emitting diode&quot;&gt;&lt;a href=&quot;http://fr.wikipedia.org/wiki/Diode_%C3%A9lectroluminescente_organique&quot; hreflang=&quot;fr&quot;&gt;OLED&lt;/a&gt;&lt;/acronym&gt; de la société &lt;a href=&quot;http://www.4dsystems.com.au/&quot; hreflang=&quot;en&quot;&gt;4D Systems&lt;/a&gt; pour &lt;a href=&quot;http://arduino.cc/&quot; hreflang=&quot;en&quot;&gt;Arduino&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;
Comme leur nom l'indique très bien, ils utilisent la technologie &lt;a hreflang=&quot;fr&quot; href=&quot;http://fr.wikipedia.org/wiki/Diode_%C3%A9lectroluminescente_organique&quot;&gt;OLED&lt;/a&gt; avec tous les avantages de cette technologie : pas besoin d'un rétroéclairage, ils ont un angle de vue de 180°, bonne consommation, très bon contraste, vous pouvez les trouver entre autres chez &lt;a href=&quot;http://www.lextronic.fr/P4470-afficheur-oled-couleur-uoled128-g1.html&quot; hreflang=&quot;fr&quot;&gt;Lextronic&lt;/a&gt; ou encore chez &lt;a href=&quot;http://www.sparkfun.com/commerce/product_info.php?products_id=8537&quot; hreflang=&quot;en&quot;&gt;Sparkfun&lt;/a&gt;.
&lt;/p&gt;
&lt;p&gt;
Le jeu d'instructions n'est pas toujours très logique mais est assez complet, le principal défaut de ces afficheurs est le prix, à 65€ l'unité, j'imagine mal comment espérer faire de la petite série...
&lt;/p&gt;
&lt;p&gt;Ces afficheurs sont pilotables directement par le biais d'une connection série dans lequel on envoie directement des commandes d'assez hauts niveaux :
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Set Background Color&lt;/li&gt;
&lt;li&gt;Put Pixel&lt;/li&gt;
&lt;li&gt;Erase Screen&lt;/li&gt;
&lt;li&gt;Draw Rectangle&lt;/li&gt;
&lt;li&gt;Place String of ASCII Text&lt;/li&gt;
&lt;li&gt;...&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Ils disposent également d'un port microSD permettant ainsi de charger des images ou encore des bouts de programmes, attention cependant, car n'espérez pas mettre des images jpg dans la microSD ou autre et les afficher comme ça, d'un coup, ça ne fonctionnera pas, tout d'abord, car le chip de 4D ne gère pas les images compressées mais uniquement des champs de bits et surtout car il n'y a aucune gestion de FAT gérée par le controleur, ainsi, il est possible d'accéder au contenu de la microSD depuis votre programme mais uniquement en brut : à nous de gérer la couche du système de fichiers... &lt;/p&gt;
&lt;h2&gt;Tester la libraire&lt;/h2&gt;
&lt;p&gt;Voici la marche à suivre pour tester cette librairie avec Arduino (&lt;ins&gt;la librairie peut parfaitement fonctionner hors du projet Arduino...&lt;/ins&gt;) :&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;
Créer un dossier Oled4d dans le dossier Libraries de votre installation Arduino et copiez dedans le fichier Oled4d.h.&lt;/li&gt;
&lt;li&gt;Créez un nouveau projet Arduino et copiez le contenu du fichier oled4d.pde dedans.&lt;/li&gt;
&lt;li&gt;Compilez le source, envoyez dans la cible et voilà, vous devriez avoir quelque chose de ce genre s'afficher :&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;a href=&quot;http://www.digitalspirit.org/blog/public/arduino_oled4d.jpg&quot;&gt;&lt;img title=&quot;Arduino avec afficheur Oled de 4DSystems, déc. 2009&quot; alt=&quot;&quot; src=&quot;http://www.digitalspirit.org/blog/public/.arduino_oled4d_m.jpg&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Oui, il s'agit bien de Tux ! ;)&lt;/p&gt;
&lt;h2&gt;Comment ça fonctionne ?&lt;/h2&gt;
&lt;p&gt;
Voici un petit bout de code :
&lt;/p&gt;
&lt;pre&gt;// Créer l'objet en interface série logiciel&lt;br /&gt;Oled4dSoft oled = Oled4dSoft(serial, 8);&lt;br /&gt;&lt;br /&gt;// Pour utiliser l'uart « hardware », procéder ainsi :&lt;br /&gt;//Oled4dHard oled = Oled4dHard(Serial, OLED_RESET_PIN);&lt;br /&gt;&lt;br /&gt;// Initialise l'écran&lt;br /&gt;oled.init();&lt;br /&gt;&lt;br /&gt;// Efface l'écran&lt;br /&gt;oled.clear();&lt;br /&gt;&lt;br /&gt;// Dessine un cercle&lt;br /&gt;oled.drawCircle(64, 64, 20, RGB(255, 255, 0));&lt;br /&gt;&lt;br /&gt;// Affiche du texte&lt;br /&gt;oled.drawText(1, 3, SMALL, GREEN, &quot;Hello world !&quot;);&lt;/pre&gt;
&lt;p&gt;
Voilà, je pense que l'exemple est assez explicite et logique...
&lt;/p&gt;
&lt;p&gt;
Vour remarquerez qu'il est possible de passer par l'uart intégré à l'Atmel ou de passer par l'uart logiciel avec la libraire &lt;a href=&quot;http://arduiniana.org/libraries/NewSoftSerial/&quot; hreflang=&quot;en&quot;&gt;NewSoftSerial&lt;/a&gt; (cette librairie dispose de fonctions avancées et est bien supérieure à la librairie d'uart fourni par défaut dans le projet Arduino).
&lt;/p&gt;
&lt;h2&gt;Démo&lt;/h2&gt;
&lt;p&gt;
Voici une petite démo affichant en vrac des lignes, des triangles, des cercles, des polygones, des rectangles...
&lt;br /&gt;
La vidéo reflète assez mal les couleurs de l'écran qui sont bien vives en réel.
&lt;/p&gt;
&lt;div class=&quot;external-media&quot; style=&quot;margin: 1em auto; text-align: center;&quot;&gt;
&lt;object type=&quot;application/x-shockwave-flash&quot; data=&quot;http://www.vimeo.com/moogaloop.swf?clip_id=8001458&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;color=00ADEF&amp;amp;fullscreen=1&quot; height=&quot;302&quot; width=&quot;400&quot;&gt;	&lt;param name=&quot;quality&quot; value=&quot;best&quot; /&gt;
&lt;param name=&quot;allowfullscreen&quot; value=&quot;true&quot; /&gt;
&lt;param name=&quot;scale&quot; value=&quot;showAll&quot; /&gt;
&lt;param name=&quot;movie&quot; value=&quot;http://www.vimeo.com/moogaloop.swf?clip_id=8001458&amp;amp;server=www.vimeo.com&amp;amp;show_title=1&amp;amp;show_byline=1&amp;amp;color=00ADEF&amp;amp;fullscreen=1&quot; /&gt;
&lt;p&gt;Écran Oled de 4D System piloté par Arduino&lt;/p&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;h2&gt;Futures évolutions&lt;/h2&gt;
&lt;p&gt;
Actuellement, cette librairie supporte uniquement les instructions standards (General Command Set), les autres (Extended Command Set), qui permettent entre autre un accès au contenu de la microsd, ne sont pas encore gérées mais le plus gros du travail est fait...
&lt;/p&gt;
&lt;h2&gt;Téléchargement&lt;/h2&gt;
&lt;p&gt;
Cette librairie est mise à disposition sous license GPL.&lt;br /&gt;
Vous pouvez télécharger la toute dernière version de cette librairie depuis mon compte &lt;a href=&quot;http://github.com/&quot;&gt;GitHub&lt;/a&gt; à l'adresse suivante : &lt;a hreflang=&quot;en&quot; href=&quot;http://github.com/hugokernel/Oled4D&quot;&gt;http://github.com/hugokernel/Oled4D&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Je mettrai à jour également la page sur le wiki : &lt;a href=&quot;http://www.digitalspirit.org/wiki/projets/oled4d&quot; hreflang=&quot;fr&quot;&gt;http://www.digitalspirit.org/wiki/projets/oled4d&lt;/a&gt;.
&lt;/p&gt;</description>
    
    
    
          <comments>http://www.digitalspirit.org/blog/index.php/post/2009/12/14/Librairie-pour-afficheur-Oled4d-Arduino#comment-form</comments>
      <wfw:comment>http://www.digitalspirit.org/blog/index.php/post/2009/12/14/Librairie-pour-afficheur-Oled4d-Arduino#comment-form</wfw:comment>
      <wfw:commentRss>http://www.digitalspirit.org/blog/index.php/feed/atom/comments/900</wfw:commentRss>
      </item>
    
</channel>
</rss>
