Une carte SD / SDHC peut être utilisée pour enregistrer des données en continu dans le temps à diverses fins, ce projet montre la conception d’un enregistreur de données de température avec système de contrôle de menu. 
La température ambiante est lue toutes les 20 secondes et stockée dans un fichier sur une carte SD.
Lorsque le programme démarre, l’utilisateur dispose de deux options:

  • Option 1: Enregistrer les relevés de température sur la carte SD / SDHC (un nouveau fichier texte sera créé: « DATA.TXT » ou si ce fichier existe déjà, des données lui seront ajoutées)
  • Option 2: Afficher les valeurs de température sur PC

L’utilisateur devra choisir une option pour démarrer l’enregistrement des données. Ce menu n’est accessible qu’une seule fois au démarrage du programme, si l’utilisateur souhaite choisir une autre option, il doit redémarrer le programme en appuyant sur le bouton reset.

Si vous préférez le tutoriel vidéo, veuillez regarder cette vidéo ci-dessous:

Configuration du projet

Dans ce projet, le PIC16F18346 est utilisé sur la carte de développement Curiosity. Le capteur de température LM35 est connecté à l’ANA0 analogique du PIC.

microSD Click est connecté aux broches SPI du PIC: SDI1 à RB4, SDO1 à RC7, SCK1 à RB6 et CS à RC6. Le TX du module série vers USB est connecté à RB7 et RX à RB5.

Pour en savoir plus, veuillez d’abord vous référer à ces tutoriels:

Lecture et écriture sur carte SD avec microcontrôleur PIC à l’aide du configurateur de code MPLAB

Convertisseur analogique-numérique dans un microcontrôleur PIC

Communication série avec microcontrôleur PIC

Le prototypage sur PCB est toujours robuste avec peu d’erreurs en raison de mauvaises connexions. Pour un développement rapide, vous pouvez acheter une carte SD que vous pouvez brancher directement sur votre carte de développement ou vos en-têtes PCB. Dans la boutique en ligne StudentCompanion, vous pouvez obtenir tous les composants utilisés dans ce projet.

L’autre et probablement le plus important est également le coût de fabrication de vos cartes de circuits imprimés. La qualité d’une carte de circuit imprimé peut affecter la qualité globale de l’ensemble de l’appareil électronique.

Il existe de nombreuses entreprises dans le monde qui peuvent vous fabriquer des cartes de circuits imprimés de bonne qualité, mais nous en avons besoin d’une qui peut produire des cartes bon marché de haute qualité sur de petites commandes car le premier lot de tout projet est probablement de petite quantité. Nous recommandons PCBWay, un fabricant de cartes de circuits imprimés basé en Chine, spécialisé dans le prototypage de PCB, la production de petits volumes et le service d’assemblage de PCB sous un même toit avec plus d’une décennie d’expérience. Vous pouvez obtenir 10 cartes de circuits imprimés de haute qualité (taille: 100 mm x 100 mm ou plus petit) pour seulement 5 $ USD. Les nouveaux membres reçoivent un bonus de 5 $ qui peut être utilisé pour obtenir votre première commande entièrement gratuite.

Ils offrent maintenant un rabais de vente important pour cette fin d’année 2019, vous pourriez gagner des cadeaux gratuits, des coupons et des ventes jusqu’à 70% de réduction pour le prototype et l’assemblage de PCB.

Ils offrent des coupons de Noël jusqu’à 200 $ que vous pouvez réclamer du 1er décembre au 31 décembre 2019, une remise énorme jusqu’à 70% sur le prototype et l’assemblage de PCB, y compris Advanced PCB et FPC / Rigid-Flex et des récompenses en espèces et des cadeaux électroniques en partageant simplement vos projets sur la communauté PCBWay.

Pour en savoir plus, veuillez cliquer sur l’image ci-dessous pour vous diriger vers leur site Web.

Bibliothèque de Microchip: File System 

La bibliothèque File System donne accès à la bibliothèque FatFs file system et à la bibliothèque de cartes SD. Dans ce tutoriel, nous utilisons la bibliothèque File System v1.00
FatFS est essentiellement le Chan’s FatFs un système de fichiers FAT générique disponible via une licence open source. Ça fournit des fonctions pour écrire sur des périphériques multimédias physiques qui utilisent le système de fichiers FAT, un système de fichiers commun utilisé sur les périphériques multimédias amovibles comme les cartes multimédias ou les cartes mémoire USB.

Pour plus d’informations sur FatFs, y compris la documentation des paramètres du module, les notes d’application FatFs et la documentation de l’API du système de fichiers, veuillez visiter la page d’accueil de FatFs: http://elm-chan.org/fsw/ff/00index_e.html

Module système:

Nous avons sélectionné l’oscillateur interne et l’avons réglé sur 16 MHz et activé le mode de programmation basse tension (low-voltage), ceci est important car la carte de développement de curiosité ne fonctionne qu’en mode de programmation low-voltage.

FatFs

Dans les ressources de l’appareil, et la bibliothèque FatFs, il va ajouter automatiquement la carte SD (SPI) sous la bibliothèque Foundation Services

Cliquez sur Insérer un pilote (Insert Driver) pour créer un pilote physique et définir son nom d’étiquette. Vous pouvez cliquer sur le bouton Aide des FatF pour obtenir plus d’informations sur la configuration de cette section.

Le reste du paramètre est plus ou moins laissé à ses valeurs par défaut. Vous pouvez jouer avec ces paramètres pour désactiver les fonctionnalités dont vous n’avez pas besoin pour optimiser le code.

Convertisseur analogique-numérique

EUSART

Le STDIO à USART n’est pas vérifié ici pour utiliser la fonction fprint () pour économiser de la mémoire de cette puce que nous utilisons. Nous utiliserons notre propre fonction pour imprimer une chaîne sur la sortie série:

Application principale

Au démarrage, le projet affichera le menu sur l’écran de l’ordinateur.

Si le choix 1 est sélectionné, la température sera lue toutes les 20 secondes et enregistrée sur la carte SD.

Voici un exemple de données enregistrées sur la carte SD:

Si le choix 2 est sélectionné, la température sera lue toutes les 20 secondes et affichée sur l’ordinateur.

Vous pouvez télécharger les fichiers de projet complets (projet MPLAB X) ci-dessous ici.
Tous les fichiers sont zippés, vous devrez les décompresser (Téléchargez une version gratuite de l’utilitaire Winzip pour décompresser les fichiers).

Télécharger: MPLAB Project Temperature_Logger_SD_Card