Author Archives: lhoic - Page 2

Raspberry Pi

Logo Raspberry Pi

Logo Raspberry Pi

Mais quel est donc le rapport entre une framboise (raspberry) et le nombre Pi (3.141592….).
La réponse est simple : c’est le tout simplement le nom de l’ordinateur révolutionnaire créer par la fondation du même nom.

C’est tout simplement un outil fabuleux. Il permet toutes les tâches basiques que permet un ordinateur normal, mais sa taille est extrêmement réduite (de la taille standard d’une carte de crédit) et son prix vraiment avantageux : seulement $25 pour le modèle A et $35 pour le modèle B.

Diagramme du Raspberry Pi

Diagramme du Raspberry Pi

Il embarque une puce crée par Broadcom qui rassemble, entre autre, 256 Mo de RAM, un processeur ARM tournant de base à 700 MHz, et surtout une puce de calculs graphiques Videocore 4 qui décode sans difficulté les flux 1080p et le codec H.264 à 40 Mbits/s.
De plus, la carte présente une connectique USB, carte SD, RCA, HDMI, Jack, et des pins de connexion permettant l’ajout de d’autres périphériques avec plusieurs protocoles (SPI, UART, …).
Le modèle B possède un port USB et un port Ethernet en plus par rapport au modèle A.
La consommation électrique est ridiculement petite, à peine 3.5 watts au maximum. On peut donc l’alimenter avec des piles ou un simple chargeur de téléphone. Pour information, sa consommation est si basse que si on le laisse branché toute une année à pleine puissance, cela ne coûtera qu’environ 3.50 € (aux tarif EDF 2012).
Pour l’instant, seul le modèle B est disponible à la vente.

Ces caractéristiques permettent d’envisager à l’utiliser dans de nombreuses applications.
Par exemple, on peut s’en servir comme serveur (de données, de mail, web, …), d’ordinateur d’appoint, de centre multimédia. Car, il est vrai que j’ai oublié de dire que l’on peut y installer de nombreuses distributions linux.

Le Raspberry Pi n'est pas plus grand qu'un ticket de métro.

Le Raspberry Pi n'est pas plus grand qu'un ticket de métro.

Ports USB, sortie audio, et sortie vidéo RCA.

Ports USB, sortie audio, et sortie vidéo RCA.

Sortie vidéo HDMI et port Ethernet

Sortie vidéo HDMI et port Ethernet

Je posterai bientôt des articles sur l’utilisation du Raspberry Pi.

 

Réglage de l’oscillateur interne d’un Pic

Aujourd’hui nous allons voir comment régler un Pic 18f4520 très simplement pour qu’il fonctionne à 32 MHz avec l’oscillateur interne.
Cela fonctionne aussi sur de nombreux Pics.

Je vous mets mon code et je vous l’explique :

void ReglageOSC32MHzInterne(void)
{
    OSCCONbits.IRCF2 = 1;
    OSCCONbits.IRCF1 = 1;
    OSCCONbits.IRCF0 = 1;
    OSCTUNEbits.PLLEN = 1;
}

On peut déjà commencer par le schéma dans la doc du Pic :

On peut voir le bloc « Internal Oscillator Block » qui se règle avec le registre OSCCON des bits 6 à 4.
Puis, si on choisit la source à 8 MHz par INTOSC on pourra choisir un diviseur de fréquence. Si l’on souhaite pour valeur finale 32 MHz on passera par la PLL en passant par OSCTUNE bit 6.
Enfin nous choisirons les bons bits de configuration pour l’utilisation de la bonne voie INTOSC + PLL pour faire fonctionner le Pic à 32 MHz sans aucun quartz à rajouter au circuit.

Cryptage XOR en Java

Actuellement je travaille avec PetitPied sur un projet dont il a parlé plusieurs fois (Projet : Led Controller, Projet : Avancement Led Controller, et Projet : Interface Graphique).
J’aide à la création de l’application Java qui permettra de communiquer en SSH avec la carte électronique.

J’ai eu l’occasion de chercher une solution simple pour crypter un mot de passe contenu dans un fichier texte visible. Mon choix s’est alors porté sur un cryptage XOR (ou OU Exclusif).

Ce cryptage, assez rapide de par sa simplicité, peut crypter une chaîne de caractère facilement à l’aide de l’opérateur OU Exclusif et la décrypter de la même façon.
Ainsi, la même fonction peut crypter et décrypter, simple et efficace !

Une clef permet le codage de chaîne.
Dans le projet, le cryptage n’étant pas la priorité, j’utilise une clef d’un seul caractère. Toutefois, on peut coder avec une clef de plusieurs caractères, en faisant quelques modifications au code que je vous propose.

public String crypterXOR(String chaine, int clef)
{
    String chaineCryptee = "";
    for(int i = 0; i < chaine.length(); i++)
    {
        chaineCryptee += (char)((int)chaine.charAt(i) ^ clef);
    }
    return chaineCryptee;
}

Kicad

Dans mon article précédent, je vous avais parlé de mon PICkit2 et vous avais donné son schéma.
Mais voilà, je ne vous ai pas parlé du logiciel que j’utilise pour mes projets de circuits électroniques : c’est Kicad.

Kicad est en fait une suite de logiciels libres sous licence GNU GPL.
Il permet la réalisation des schémas à l’aide de Eeschema, et la conception des circuits imprimés grâce à PcbNew. La liaison des empreintes aux composants se faisant avec Cvpcb.

Réalisation de schéma avec Eeschema

Création des circuits avec Pcbnew

D’autres modules sont disponibles, mais je ne les utilise pas pour l’instant.
Le tout est géré par Kicad, le gestionnaire de projet.

Le gestionnaire de projet

La dernière version actuelle est la 2011-dec-28. Mais voilà, je travaille actuellement sous Linux avec Ubuntu 11.04 et la version pré-compilé proposé sur le site officiel ne fonctionnait pas entièrement. J’ai donc compilé moi-même les sources que je vous propose les executables si vous êtes dans le même cas que moi.
Kicad.tar.gz