Table des matières:

Téléphone mobile de base utilisant le kit de découverte STM32F407 et le module GSM A6 : 14 étapes (avec photos)
Téléphone mobile de base utilisant le kit de découverte STM32F407 et le module GSM A6 : 14 étapes (avec photos)

Vidéo: Téléphone mobile de base utilisant le kit de découverte STM32F407 et le module GSM A6 : 14 étapes (avec photos)

Vidéo: Téléphone mobile de base utilisant le kit de découverte STM32F407 et le module GSM A6 : 14 étapes (avec photos)
Vidéo: Базовый мобильный телефон с использованием STM32F407 и модуля GSM A6 2024, Novembre
Anonim
Téléphone mobile de base utilisant le kit de découverte STM32F407 et le module GSM A6
Téléphone mobile de base utilisant le kit de découverte STM32F407 et le module GSM A6

Avez-vous déjà eu envie de créer un projet embarqué sympa ?. Si oui, que diriez-vous de construire l'un des gadgets les plus populaires et préférés de tous, à savoir le téléphone portable !!!. Dans ce Instructable, je vais vous guider sur la façon de construire un téléphone mobile de base à l'aide du Kit de découverte STM32F407 et du module GSM A6.

Ce projet contient 3 modules principaux:

  1. Module GSM A6 - Ce module est responsable de passer/recevoir des appels et des SMS.
  2. Écran LCD 16x02 - Pour voir la sortie
  3. Clavier hexagonal - Pour donner une entrée

Le MCU STM32F407 contrôle le GSM A6, l'écran LCD et le clavier. Donc, pour rendre la programmation simple et organisée, j'ai développé un code de pilote individuel pour le module d'interfaçage GSM A6, l'écran LCD et le clavier sur le MCU STM32F407. Ensuite, j'ai simplement inclus ces fichiers de pilote dans le programme principal et appelé les API respectives. Vous pouvez trouver ces codes de pilote dans les fournitures ci-dessous.

Le fichier entier du projet Keil est inclus ci-dessous

Fournitures

  • Détails complets sur le kit de découverte STM32F407 Premiers pas avec le kit de découverte STM32F407
  • Détails de base sur le module GSM A6
  • Téléphone portable GitHub RepositoryBasic utilisant le kit de découverte STM32F407 et le module GSM A6 Module
  • Interfaçage LCD 16x02 sur STM32F407 Discovery à l'aide du module I2C.
  • Interfaçage du clavier matriciel 4X4 sur le kit de découverte STM32F407
  • Module d'interfaçage GSM-A6 sur le kit de découverte STM32F407

Étape 1: Liste des composants

Liste des composants
Liste des composants
Liste des composants
Liste des composants
Liste des composants
Liste des composants

Les composants matériels requis pour ce projet sont:

  1. Trousse de découverte STM32F407
  2. Module GSM A6
  3. ACL 16x02
  4. module I2C
  5. Clavier hexagonal
  6. Quelques câbles de démarrage
  7. Planche à pain
  8. Haut-parleur (8Ω)
  9. Microphone

Étape 2: Établissez les connexions

Faire les connexions
Faire les connexions

Connectez les composants comme indiqué dans l'image ci-dessus. Cette image/schéma vous donne un moyen très réaliste et facile de connecter tous les composants.:-)

Remarque: le module GSM A6 est alimenté à l'aide d'un connecteur micro USB. Vous pouvez utiliser n'importe quel chargeur mobile pour alimenter le GSM A6.

Étape 3: Ouvrez Keil UVision IDE

Ouvrez Keil UVision IDE
Ouvrez Keil UVision IDE

Ouvrez Keil uVision IDE. Cliquez sur un projet, puis sélectionnez Nouveau projet uVision… Ensuite, sélectionnez votre répertoire de travail et donnez le nom de votre projet préféré.

Étape 4: sélectionnez l'appareil

Sélectionnez l'appareil
Sélectionnez l'appareil

Une fois que vous avez donné un nom au projet, à l'étape suivante, vous devez ajouter un appareil. Ici, nous ajoutons le Micronconroller STM32F407VG de STMicroelectronics. Sélectionnez le STM32F407VG, puis cliquez sur OK.

Étape 5: Gérer l'environnement d'exécution

Gérer l'environnement d'exécution
Gérer l'environnement d'exécution
Gérer l'environnement d'exécution
Gérer l'environnement d'exécution

L'étape suivante consiste à sélectionner le composant bibliothèque/pilote dans l'onglet Gérer l'environnement d'exécution. Ici, sélectionnez tous les composants comme indiqué dans l'image ci-dessus. Une fois que vous avez coché tous les champs appropriés, cliquez sur Résoudre, puis sur OK.

Étape 6: Copiez les fichiers du pilote dans le dossier du projet

Copiez les fichiers du pilote dans le dossier du projet
Copiez les fichiers du pilote dans le dossier du projet

Vous devez maintenant ajouter des fichiers de pilote pour le module GSM A6, l'écran LCD et le clavier. Les fichiers du pilote sont:

1. Module GSM A6:

GSM_A6_Driver_STM32F407.c et GSM_A6_Driver_STM32F407.h

2. ACL:

STM32F407_I2C_LCD16x02_Driver.c et STM32F407_I2C_LCD16x02_Driver.h

3. Clavier

STM32F407_KeypadDriver.c et STM32F407_KeypadDriver.h

Copiez tous ces 6 fichiers dans votre dossier de projet. J'ai joint ces fichiers ci-dessous

Étape 7: ajoutez les fichiers de pilote à votre projet

Ajouter les fichiers de pilote à votre projet
Ajouter les fichiers de pilote à votre projet

Une fois que vous avez copié les fichiers du pilote dans votre dossier de projet, vous devez ajouter ces fichiers à votre projet.

Dans Keil, sélectionnez Target1, cliquez avec le bouton droit de la souris, puis sélectionnez Ajouter un nouveau groupe. Créez 4 nouveaux groupes et renommez-les en:

1) Application utilisateur - Ajoutez ici un nouveau fichier "main.c".

2) GSM_A6_Driver - Ajoutez les fichiers "GSM_A6_Driver_STM32F407.c" et " GSM_A6_Driver_STM32F407.h" existants à ce groupe.

3) LCD_Driver - Ajouter les fichiers "STM32F407_I2C_LCD16x02_Driver.c" et " STM32F407_I2C_LCD16x02_Driver.h" existants à ce groupe

4) Keypad_Driver - Ajoutez les fichiers existants " STM32F407_KeypadDriver.c " et " STM32F407_KeypadDriver.h " à ce groupe

Remarque: j'ai inclus le fichier "main.c" ci-dessous, vous pouvez soit ajouter directement ce fichier, soit copier son contenu dans le fichier principal nouvellement créé.

Étape 8: Configurez le chemin des fichiers d'en-tête

Configurer le chemin des fichiers d'en-tête
Configurer le chemin des fichiers d'en-tête

Une fois que vous avez ajouté les fichiers du pilote, vous devez indiquer au compilateur où se trouvent les fichiers d'en-tête respectifs. Par conséquent, nous devons configurer l'option du compilateur.

Cliquez avec le bouton droit sur l'option Target1 pour la cible "Target1.." Chemin d'inclusion C/C++. Assurez-vous d'inclure le chemin de votre dossier de projet puisque nous y avons copié les fichiers du pilote.

Étape 9: connectez votre kit de découverte STM32F407 à votre PC/ordinateur portable

Étape 10: sélectionnez le débogueur ST-Link dans la configuration du compilateur

Sélectionnez le débogueur ST-Link dans la configuration du compilateur
Sélectionnez le débogueur ST-Link dans la configuration du compilateur

Cliquez avec le bouton droit sur Target1, puis cliquez sur Option pour Target "Target1..", puis accédez à l'onglet Debug et sélectionnez ST-Link-Debugger comme indiqué dans l'image ci-dessus

Étape 11: Configurer le débogueur ST-Link

Configurer le débogueur ST-Link
Configurer le débogueur ST-Link

Après avoir sélectionné le débogueur ST-Link à l'étape 10, cliquez sur Paramètres, puis sélectionnez Trace et vérifiez tous les champs comme indiqué dans l'image ci-dessus.

Étape 12: Créer et télécharger le code

Créer et télécharger le code
Créer et télécharger le code

Après avoir terminé toutes les étapes, créez le projet et assurez-vous qu'il n'y a pas d'erreurs dans le code. Une fois la compilation réussie, téléchargez le code dans votre kit de découverte.

Étape 13: C'est tout !!! Réinitialisez simplement le MCU STM32F407 et utilisez le téléphone portable

Image
Image

J'ai inclus une vidéo de démonstration de ce projet.

Étape 14: Notes rapides et informations de débogage

  • Je vous suggère d'allumer d'abord le module GSM et d'attendre environ une minute. Parce qu'une fois que vous allumez le module GSM, il doit se connecter au fournisseur de services réseau. Selon la qualité/la force du signal, le module GSM peut prendre un certain temps pour se connecter.
  • J'ai testé la sortie en "Inde". Aussi pour plus de simplicité, j'ai codé en dur le code du comté (+91 pour l'Inde) dans le fichier du pilote "GSM_A6_Driver_STM32F407.c". Si vous êtes dans un autre pays, veuillez ajouter votre code de pays comme indiqué dans l'image ci-dessus.

Conseillé: