Table des matières:

HackerBox 0040 : PIC de Destiny : 9 étapes
HackerBox 0040 : PIC de Destiny : 9 étapes

Vidéo: HackerBox 0040 : PIC de Destiny : 9 étapes

Vidéo: HackerBox 0040 : PIC de Destiny : 9 étapes
Vidéo: HackerBox 0040 ПИК Судьбы 2024, Décembre
Anonim
HackerBox 0040: PIC de Destiny
HackerBox 0040: PIC de Destiny

Salutations aux HackerBox Hackers du monde entier. HackerBox 0040 nous fait expérimenter des microcontrôleurs PIC, des maquettes, des écrans LCD, des GPS, etc. Ce Instructable contient des informations pour démarrer avec HackerBox 0040, qui peuvent être achetés ici jusqu'à épuisement des stocks. Si vous souhaitez recevoir une HackerBox comme celle-ci directement dans votre boîte mail chaque mois, veuillez vous inscrire sur HackerBoxes.com et rejoignez la révolution !

Sujets et objectifs d'apprentissage pour HackerBox 0040:

  • Développer des systèmes embarqués avec les microcontrôleurs PIC
  • Explorez la programmation en circuit des systèmes embarqués
  • Testez les options d'alimentation et de synchronisation pour les systèmes embarqués
  • Interfacer un microcontrôleur PIC vers un module de sortie LCD
  • Expérimentez avec un récepteur GPS intégré
  • Manipulez le PIC de Destiny

HackerBoxes est le service de box d'abonnement mensuel pour l'électronique de bricolage et la technologie informatique. Nous sommes des amateurs, des fabricants et des expérimentateurs. Nous sommes les rêveurs de rêves.

HACK LA PLANÈTE

Étape 1: Liste de contenu pour HackerBox 0040

Image
Image
  • Microcontrôleur PIC PIC16F628 (DIP 18)
  • Microcontrôleur PIC PIC12F675 (DIP 8)
  • Programmeur et débogueur en circuit PICkit 3
  • Cible de programmation de socket ZIF pour PICkit 3
  • Câble USB et fils d'en-tête pour PICkit 3
  • Module GPS avec antenne embarquée
  • Module LCD alphanumérique 16x2
  • Alimentation de la planche à pain avec MicroUSB
  • Cristaux 16,00 MHz (HC-49)
  • Boutons momentanés tactiles
  • LED ROUGES 5mm diffuses
  • Potentiomètre de coupe 5K Ohm
  • Condensateurs en céramique 18pF
  • Condensateurs en céramique 100nF
  • Résistances 1K Ohm 1/4W
  • Résistances 10K Ohm 1/4W
  • Planche à pain sans soudure 830 points (grande)
  • Kit de fil de liaison formé avec 140 pièces
  • Médiators pour guitare en celluloïd
  • Décalque de matrice exclusif PIC16C505

Quelques autres choses qui seront utiles:

  • Fer à souder, soudure et outils de soudure de base
  • Ordinateur pour exécuter des outils logiciels

Plus important encore, vous aurez besoin d'un sens de l'aventure, d'un esprit de hacker, de patience et de curiosité. Construire et expérimenter avec l'électronique, bien que très gratifiant, peut être délicat, stimulant et même parfois frustrant. Le but est le progrès, pas la perfection. Lorsque vous persistez et profitez de l'aventure, une grande satisfaction peut être tirée de ce passe-temps. Faites chaque pas lentement, faites attention aux détails et n'ayez pas peur de demander de l'aide.

Il y a une mine d'informations pour les membres actuels et potentiels dans la FAQ HackerBoxes. Presque tous les e-mails d'assistance non techniques que nous recevons y sont déjà répondus, nous apprécions donc vraiment que vous preniez quelques minutes pour lire la FAQ.

Étape 2: Microcontrôleurs PIC

Programmation de microcontrôleurs PIC avec PICkit 3
Programmation de microcontrôleurs PIC avec PICkit 3

La famille de microcontrôleurs PIC est fabriquée par Microchip Technology. Le nom PIC faisait initialement référence au contrôleur d'interface périphérique, mais a ensuite été corrigé en ordinateur intelligent programmable. Les premières pièces de la famille sont sorties en 1976. En 2013, plus de douze milliards de microcontrôleurs PIC individuels avaient été expédiés. Les périphériques PIC sont populaires auprès des développeurs industriels et des amateurs en raison de leur faible coût, de leur large disponibilité, de leur large base d'utilisateurs, de leur vaste collection de notes d'application, de la disponibilité d'outils de développement à faible coût ou gratuits, de la programmation en série et de la capacité de mémoire Flash reprogrammable. (Wikipédia)

HackerBox 0040 comprend deux microcontrôleurs PIC installés temporairement pour le transport dans une prise ZIF (force d'insertion nulle). La première étape consiste à retirer les deux PIC du socket ZIF. S'il vous plaît, faites-le maintenant !

Les deux microcontrôleurs sont un PIC16F628A (fiche technique) dans un boîtier DIP18 et un PIC12F675 (fiche technique) dans un boîtier DIP 8.

Les exemples ici utilisent le PIC16F628A, mais le PIC12F675 fonctionne de manière similaire. Nous vous encourageons à l'essayer dans votre propre projet. Sa petite taille en fait une solution efficace lorsque vous n'avez besoin que d'un petit nombre de broches d'E/S.

Étape 3: Programmation des microcontrôleurs PIC avec PICkit 3

Il y a beaucoup d'étapes de configuration qui doivent être abordées lors de l'utilisation des outils PIC, voici donc un exemple assez basique:

  • Installez le logiciel MPLAB X IDE de Microchip
  • À la fin de l'installation, un lien vous sera présenté pour installer le compilateur MPLAB XC8 C. Assurez-vous de le sélectionner. XC8 est le compilateur que nous utiliserons.
  • Insérez la puce PIC16F628A (DIP18) dans le socket ZIF. Notez la position et l'orientation indiquées au verso du PCB cible ZIF.
  • Réglez les cavaliers comme indiqué au dos du PCB cible ZIF (B, 2-3, 2-3).
  • Branchez l'en-tête de programmation à cinq broches de la carte cible ZIF dans l'en-tête PICkit 3.
  • Connectez le PICkit 3 à l'ordinateur à l'aide du câble miniUSB rouge.
  • Exécutez l'IDE MPLAB X.
  • Sélectionnez l'option de menu pour créer un nouveau projet.
  • Configurez: projet autonome intégré à micropuce et appuyez sur SUIVANT.
  • Sélectionnez l'appareil: PIC16F628A et appuyez sur SUIVANT
  • Sélectionnez le débogueur: aucun; Outils matériels: PICkit 3; Compilateur: XC8
  • Entrez le nom du projet: clignoter.
  • Faites un clic droit sur les fichiers source et sous nouveau, sélectionnez nouveau main.c
  • Donnez au fichier c un nom comme "cligner des yeux"
  • Accédez à la fenêtre > vue de la mémoire des balises > bits de configuration
  • Réglez le bit FOSC sur INTOSCIO et tout le reste sur OFF.
  • Appuyez sur le bouton « générer le code source ».
  • Collez le code généré dans votre fichier blink.c ci-dessus
  • Collez également ceci dans le fichier c: #define _XTAL_FREQ 4000000
  • Passé dans le bloc principal du code c ci-dessous:

vide principal (vide)

{ TRISA = 0b00000000; tandis que (1) { PORTAbits. RA3 = 1; _delay_ms(300); PORTAbits. RA3 = 0; _delay_ms(300); } }

  • Appuyez sur l'icône du marteau pour compiler
  • Accédez à production > définir la configuration du projet > personnaliser
  • Sélectionnez PICkit 3 dans le panneau de gauche de la fenêtre contextuelle, puis Alimentation dans le champ déroulant en haut.
  • Cliquez sur la case « cible d'alimentation », définissez la tension cible sur 4,875 V, appuyez sur Appliquer.
  • De retour à l'écran principal, appuyez sur l'icône représentant une flèche verte.
  • Un avertissement concernant la tension apparaîtra. Appuyez sur continuer.
  • Vous devriez éventuellement obtenir « Programmation/Vérification terminée » dans la fenêtre d'état.
  • Si le programmeur ne se comporte pas, il peut être utile d'arrêter l'IDE et de le relancer. Tous vos paramètres sélectionnés doivent être conservés.

Étape 4: Breadboarding du PIC programmé avec Blink.c

Breadboarding du PIC programmé avec Blink.c
Breadboarding du PIC programmé avec Blink.c

Une fois le PIC programmé (étape précédente), il peut être déposé sur une maquette sans soudure pour être testé.

Puisque l'oscillateur interne a été sélectionné, nous n'avons besoin de câbler que trois broches (alimentation, masse, LED).

L'alimentation peut être fournie à la maquette à l'aide du module d'alimentation. Pointeurs pour l'utilisation du module d'alimentation:

  • Mettez un peu plus de soudure sur les languettes latérales de la prise microUSB avant qu'elle ne se brise - pas après.
  • Assurez-vous que les « broches noires » entrent dans le rail au sol et les « broches blanches » dans le rail d'alimentation. S'ils sont inversés, vous êtes du mauvais côté de la planche à pain.
  • Basculez les deux commutateurs sur 5V pour les puces PIC incluses.

Après avoir positionné le microcontrôleur PIC, notez l'indicateur de la broche 1. Les broches sont numérotées à partir de la broche 1 dans le sens inverse des aiguilles d'une montre. Câblez la broche 5 (VSS) à GND, la broche 14 (VDD) à 5V et la broche 2 (RA3) à la LED. Remarquez dans votre code que la broche d'E/S RA3 est activée et désactivée pour faire clignoter la LED. La broche la plus longue de la LED doit se connecter au PIC, tandis que la broche la plus courte doit se connecter à une résistance de 1K (marron, noir, rouge). L'extrémité opposée de la résistance doit se connecter au rail GND. La résistance agit simplement comme une limite de courant afin que la LED ne ressemble pas à un court-circuit entre 5V et GND et consomme trop de courant.

Étape 5: programmation en circuit

Programmation en circuit
Programmation en circuit

Le dongle PICkit 3 peut être utilisé pour programmer la puce PIC en circuit. Le dongle peut également alimenter le circuit (la cible de la maquette) comme nous l'avons fait avec la cible ZIF.

  • Retirez l'alimentation de la planche à pain.
  • Connectez les fils PICkit 3 à la maquette à 5V, GND, MCLR, PGC et PGD.
  • Modifiez les numéros de retard dans le code C.
  • Recompilez (icône marteau) puis programmez le PIC.

Étant donné que les numéros de délai ont été modifiés, la LED devrait maintenant clignoter différemment.

Étape 6: Utilisation d'un oscillateur à cristal externe

Utilisation d'un oscillateur à cristal externe
Utilisation d'un oscillateur à cristal externe

Pour cette expérience PIC, passez de l'oscillateur interne à un oscillateur à cristal externe à grande vitesse. Non seulement l'oscillateur à cristal externe est plus rapide à 16 MHz au lieu de 4 MHz), mais il est beaucoup plus précis.

  • Remplacez le bit de configuration FOSC d'INTOSCIO par HS.
  • Modifiez à la fois le paramètre FOSC IDE et le #define dans le code.
  • Changez #define _XTAL_FREQ 4000000 de 4000000 à 16000000.
  • Reprogrammer le PIC (peut-être changer à nouveau les numéros de délai)
  • Vérifier le fonctionnement avec le cristal externe.
  • Que se passe-t-il lorsque vous retirez le cristal de la planche à pain ?

Étape 7: Pilotage d'un module de sortie LCD

Pilotage d'un module de sortie LCD
Pilotage d'un module de sortie LCD

Le PIC16F628A peut être utilisé pour piloter la sortie vers un module LCD alphanumérique 16x2 (données) lorsqu'il est câblé comme indiqué ici. Le fichier joint picLCD.c donne un exemple de programme simple pour écrire une sortie de texte sur le module LCD.

Étape 8: Récepteur d'heure et de localisation GPS

Récepteur d'heure et de localisation GPS
Récepteur d'heure et de localisation GPS

Ce module GPS peut déterminer l'heure et l'emplacement assez précisément à partir des signaux reçus de l'espace dans sa petite antenne intégrée. Seules trois broches sont nécessaires pour le fonctionnement de base.

La LED rouge "Power" s'allumera lorsque l'alimentation appropriée est connectée. Une fois les signaux satellites acquis, la LED verte "PPS" se met à clignoter.

L'alimentation est fournie aux broches GND et VCC. Le VCC peut fonctionner sur 3,3V ou 5V.

La troisième broche nécessaire est la broche TX. La broche TX émet un flux série qui peut être capturé dans un ordinateur (via un adaptateur TTL-USB) ou dans un microcontrôleur. Il existe de nombreux exemples de projets pour recevoir des données GPS dans un Arduino.

Ce référentiel git comprend une documentation pdf pour ce type de module GPS. Consultez également u-center.

Ce projet et cette vidéo montrent un exemple de capture de date et d'heure de haute précision à partir d'un module GPS dans un microcontrôleur PIC16F628A.

Étape 9: Vivez la HackLife

Vivez le HackLife
Vivez le HackLife

Nous espérons que vous avez apprécié le voyage de ce mois-ci dans l'électronique de bricolage. Contactez-nous et partagez votre succès dans les commentaires ci-dessous ou sur le groupe Facebook HackerBoxes. Faites-nous savoir si vous avez des questions ou si vous avez besoin d'aide pour quoi que ce soit.

Rejoignez la révolution. Vivez la HackLife. Vous pouvez obtenir une boîte cool de projets électroniques et informatiques piratables livrés directement dans votre boîte aux lettres chaque mois. Surfez simplement sur HackerBoxes.com et abonnez-vous au service mensuel HackerBox.

Conseillé: