Cher visiteur, Bernard nous a quitté le mardi 14 novembre 2017. Ce site est donc une archive statique qui restera fidèle au blog tel qu'il l'a laissé. De plus aucun nouveau commentaire ne sera approuvé.

Merci de cliquer ici pour plus d'informations.

Fréquencemètre à microcontrôleur PIC – Réalisation

Le circuit imprimé
Le circuit imprimé a été monté sur plaque époxy à pastilles. Sa réalisation ne pose pas de problème particulier. Je n’ai pas poussé la miniaturisation. On pourrait faire plus petit en superposant l’afficheur au circuit imprimé. Lire la suite…

Fréquencemètre à microcontrôleur PIC – Commande de l’afficheur LCD

L’afficheur est commandé par le HD44780 LCD controller. Pour le commander nous disposons des bornes suivantes:
RS = 0 instruction input, 1 data input,
R/W = 0 write to LCD, 1 read from LCD,
E = enable signal,
DB0 à DB7 = data bus line 0 (LSB) to line 7 (MSB).
L’afficheur comprend 2 lignes de 16 caractères:
- ligne 0 de 0×00 à 0x0F,
- ligne 1 de 0×40 à 0x4F. Lire la suite…

Fréquencemètre à microcontrôleur PIC – Mesure

La routine de mesure  est le coeur du fréquencemètre. A chaque boucle du programme elle est appelée 2 fois:
- pour l’auto calibrage,
- pour la mesure réelle.

Description de la routine de mesure
La fréquence à mesurer est appliquée sur RA4/T0CKI. La routine est chargée de relever à chaque cycle le compteur TMR0. La représentation d’une fréquence  maximum de 50 MHz nécessite en binaire, 25 bits, il faut donc utiliser 4 compteurs  de 8 bits soit 32 bits. Lire la suite…

Fréquencemètre à microcontrôleur PIC – Structure du programme

Voilà, notre micro contrôleur est placé dans le circuit (au moins sur le papier!). Nous savons ce qu’il doit faire: compter des impulsions et transmettre le résultat du comptage à l’afficheur. Il est temps maintenant de passer à la programmation du micro contrôleur. Avant de commencer à programmer j’ai « démonté » plusieurs programmes écrits en langage assembleur, traitant notamment, de la commande d’un afficheur, du comptage des impulsions. J’ai aussi consulté les documentations suivantes:
- Note Microchip AN592,
- Note Microchip AN526 PIC16C5x/PIC16Cxx Utility Math Routines,
- How to control a HD44780-based Character-LCD de Peter Ouwehand,
- 50 MHz-Frequenzzähler mit 16F84 und LCD-Display de Sprut,
- The Weeder Frequency Counter PIC 16F84 port by Peter Cousens,
- Fréquencemètre à microcontrôleur de Loïc Lefebvre.

Ces notions étant acquises, j’ai construit ensuite entièrement ma propre version en langage assembleur que je vais maintenant expliquer. Lire la suite…

Fréquencemètre à microcontrôleur PIC – Description

Mon circuit n’est qu’une variante des nombreux schémas publiés sur Internet, comme celui-ci présenté sur Ham Radio India de VU2FD. Je l’ai simplement adapté aux composants dont je disposais et aux ports que je souhaitais utiliser. La figure 1 montre le schéma du circuit qui a été réalisé avec kicad. Il comprend 3 parties:

  • le préamplificateur,
  • le micro contrôleur,
  • l’afficheur.
Figure 1: Amplificateur audio

Figure 1: Schéma du circuit

Pré amplificateur: un seul étage avec un transistor 2N2222.

Micro contrôleurs:
- ports RB4, RB5, RB6, RB7 données à afficher,
- ports RB1, RB2, RB3 signaux de commande de l’afficheur,
- ports RA3, RA4/T0CKI entrée
- ports RA0, RA1 signaux de commande du setup.

Le programme affectera un nom symbolique à chaque ligne de commande et de données. Il sera possible ainsi aux utilisateurs potentiels, d’adapter le programme à son circuit par un simple changement d’assignation et un réassemblage du programme source.

Afficheur LCD: JHD162A 2×16 caractères, commandé par le contrôleur  SPLC780D équivalent au HD44780. Il est utilisé en mode 4 bits. Le programme envoie donc 2 fois 4 bits pour écrire un caractère. Je n’ai pas utilisé les bornes 15 et 16 du rétro éclairage. Il est toujours possible de le faire en insérant une résistance dont la valeur est à déterminer en fonction de l’afficheur utilisé. L’intensité lumineuse de l’afficheur est réglée au moyen du potentiomètre ajustable P1. L’afficheur a été acheté su Ebay à faible prix.

Setup
Paramètres
- Paramètre MODE : valeur = NO-IF (défaut), LO+IF, LO–IF, IF–LO (LO = oscillateur local).
- ParamètreIF : valeur = 00000 (défaut) à 99999 Khz.

Installation
A la première mise sous tension, les paramètres sont mémorisés avec leur valeur par défaut. La fréquence lue est la valeur directe. L’installation est terminée si on souhaite simplement l’utiliser en lecture directe (sans calcul de FI). Si on souhaite l’utiliser connecté au transceiver, il suffit de passer en mode Setup , de choisir le mode et la valeur de IF  qui correspond au transceiver.
Un appui long (>1s) sur le bouton Set fait passer au Setup et affiche la valeur mémorisée du paramètre IF.
Le 1er digit du paramètre IF clignote
Un appui sur le bouton Next fait avancer de 1 la valeur suivante du 1er digit du paramètre IF et ainsi de suite…
Quand on arrive à 9 un appui sur Next fait revenir le digit à 0 et ainsi de suite…
Un appui sur le bouton Set, enregistre la valeur affichée du 1er digit du paramètre IF et passe au 2ème digit suivant du paramètre IF et ainsi de suite…
Au dernier digit, un appui sur le bouton Set enregistre ce digit et fait passer au paramètre MODE.
Un appui sur le bouton Next fait avancer au MODE suivant et ainsi de suite…
Au dernier digit, un appui sur le bouton Set enregistre ce digit et termine le Setup.
Noter que si on souhaite l’utiliser ensuite en lecture directe, par le Setup on sélectionne simplement MODE=NO-FI. La valeur IF reste mémorisée en EEPROM.

Télécharger le fichier Kicad du schèma .
Télécharger les fichiers source et hexa du fréquencemètre .

Liens

Fréquencemètre à microcontrôleur PIC
Fréquencemètre à microcontrôleur PIC – Description
Fréquencemètre à microcontrôleur PIC – Structure du programme
Fréquencemètre à microcontrôleur PIC – Mesure
Fréquencemètre à microcontrôleur PIC – Commande de l’afficheur LCD
Fréquencemètre à microcontrôleur PIC – Réalisation

Fréquencemètre à microcontrôleur PIC

Je poursuis mon initiation au microcontrôleur avec cette série d’articles consacrée à la réalisation d’un fréquencemètre, de sa conception, en passant par la programmation du firmware embarqué, la réalisation du circuit électronique, jusqu’à la fabrication mécanique de son boitier.

De nombreux exemples existent sur Internet mais pour bien comprendre ce que j’utilise, rien ne vaut l’expérimentation! Lire la suite…

Mon premier projet PIC – Programmateur sur port parallèle

Pour réaliser ce premier programmateur, je suis parti du schéma de base de David TAIT supporté par PICPgm et du programmateur présenté sur le site kudelsko.
Je dispose déjà d’une alimentation 12.0V 14.0V fabriquée à partir d’une alimentation de PC H.S. récupérée et d’un CI 74LS06N. A la différence du 74LS07 utilisé dans le schéma de D. TAIT, le 74LS06 est inverseur. Lire la suite…

Mon premier projet PIC

Je n’ai jamais utilisé de microcontrôleur. Comme ce composant entre dans la fabrication d’appareils de mesure et notamment du fréquencemètre, je souhaite apprendre à l’utiliser et à le programmer. Il existe plusieurs familles de microcontrôleurs chez différents constructeurs. Lequel choisir? Quels outils de développement choisir?

Cahier des charges
- construire un programmateur,
- utiliser un outil de programmation open source ou une plate forme de développement libre,
- tester le programmateur et le programme avec un petit montage simple. Lire la suite…

Mon blog – Partie 14 – Créer son thème WordPress – Traduction

Objet
Le thème est prévu pour être publié. Il a été programmé en utilisant, pour afficher les messages, les 2 fonctions WordPress:
__ ($message, $domain) qui renvoie un texte à une autre fonction,
_e($message, $domain) qui affiche directement le texte.

Pour écrire des programmes multilingues, WordPress s’appuie sur la bibliothèque logicielle GNU GetText .

GetText utilise la chaîne de caractères à traduire comme clef de recherche dans un fichier de traduction et renvoie, soit la chaîne traduite, soit la chaîne d’origine, si aucune traduction n’est disponible. Lire la suite…

Mon blog – Partie 13 – Créer son thème WordPress – Autres Templates

Erreur 404
Le template 404.php est utilisé quand un lien est fait vers une page qui n’existe pas. Je me suis contenté du minimum, afficher sur une page le message « Erreur 404 page non trouvée ». Cette page est néanmoins complète. Elle est construite simplement à partir du template index.php. Elle permet ainsi de se rebrancher facilement sur les pages du blog et de poursuivre la recherche.

Liens vers les réseaux sociaux, flux de syndication, contact
J’ai regroupé dans un template appelé social.php tous les liens vers les réseaux et médias sociaux, les flux de syndication de contenu, ma boîte aux lettres. Lire la suite…