Inhoudsopgave:

Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module - Ajarnpa
Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module - Ajarnpa

Video: Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module - Ajarnpa

Video: Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module - Ajarnpa
Video: Базовый мобильный телефон с использованием STM32F407 и модуля GSM A6 2024, Juli-
Anonim
Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module
Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module

Heb je ooit een cool embedded project willen maken?. Zo ja, hoe zit het met het bouwen van een van de meest populaire en ieders favoriete gadgets, namelijk mobiele telefoons !!!. In deze Instructable zal ik je begeleiden bij het bouwen van een eenvoudige mobiele telefoon met behulp van de STM32F407 Discovery Kit en GSM A6-module.

Dit project bevat 3 hoofdmodules:

  1. GSM A6-module - Dit is een module die verantwoordelijk is voor het maken/ontvangen van oproepen en sms.
  2. LCD 16x02 Display - Om de output te zien:
  3. Hex-toetsenbord - Om invoer te geven

De STM32F407 MCU bestuurt de GSM A6, LCD en toetsenbord. Dus om het programmeren eenvoudig en georganiseerd te maken, heb ik een individuele drivercode ontwikkeld voor de interfacing GSM A6-module, LCD en toetsenbord op STM32F407 MCU. Vervolgens heb ik deze stuurprogrammabestanden eenvoudig in het hoofdprogramma opgenomen en respectievelijke API's genoemd. U vindt deze drivercodes in de Benodigdheden hieronder.

Het volledige Keil Project-bestand is hieronder opgenomen:

Benodigdheden

  • Volledige details over STM32F407 Discovery Kit Aan de slag met STM32F407 Discovery Kit
  • Basisgegevens over GSM A6-module:
  • GitHub RepositoryBasic mobiele telefoon met behulp van STM32F407 Discovery-kit en GSM-module A6-module
  • Interfacing 16x02 LCD op STM32F407 Discovery met behulp van de I2C-module.
  • Interfacing 4X4 Matrix-toetsenbord op STM32F407 Discovery Kit
  • Interfacing GSM-A6-module op STM32F407 Discovery Kit

Stap 1: Onderdelenlijst

Onderdelenlijst
Onderdelenlijst
Onderdelenlijst
Onderdelenlijst
Onderdelenlijst
Onderdelenlijst

De hardwarecomponenten die nodig zijn voor dit project zijn:

  1. STM32F407 Ontdekkingskit
  2. GSM A6-module
  3. LCD 16x02
  4. I2C-module
  5. Hex-toetsenbord
  6. Een paar startkabels
  7. Broodplank
  8. Luidspreker (8Ω)
  9. Microfoon

Stap 2: Maak de verbindingen

Maak de verbindingen
Maak de verbindingen

Sluit de componenten aan zoals aangegeven in de bovenstaande afbeelding. Deze afbeelding/diagram geeft u een zeer realistische en gemakkelijke manier om alle componenten aan te sluiten.:-)

Opmerking: de GSM A6-module wordt gevoed via een micro-USB-connector. U kunt elke mobiele oplader gebruiken om de GSM A6 van stroom te voorzien.

Stap 3: Open Keil UVision IDE

Keil UVision IDE openen
Keil UVision IDE openen

Open Keil uVision IDE. Klik op een project en selecteer Nieuw uVision-project… Selecteer vervolgens uw werkmap en geef de gewenste projectnaam op.

Stap 4: Selecteer het apparaat

Selecteer het apparaat
Selecteer het apparaat

Nadat u het project een naam heeft gegeven, moet u in de volgende stap een apparaat toevoegen. Hier voegen we STM32F407VG Micronconroller van STMicroelectronics toe. Selecteer de STM32F407VG en klik vervolgens op OK.

Stap 5: Runtime-omgeving beheren

Runtime-omgeving beheren
Runtime-omgeving beheren
Runtime-omgeving beheren
Runtime-omgeving beheren

De volgende stap is het selecteren van de bibliotheek/drivercomponent op het tabblad Runtime-omgeving beheren. Selecteer hier alle componenten zoals weergegeven in de bovenstaande afbeelding. Nadat u alle juiste velden hebt aangevinkt, klikt u op Oplossen en vervolgens op OK.

Stap 6: Kopieer de stuurprogrammabestanden Int naar de projectmap

Kopieer de stuurprogrammabestanden Int naar de projectmap
Kopieer de stuurprogrammabestanden Int naar de projectmap

Nu moet u stuurprogrammabestanden toevoegen voor GSM A6-module, LCD en toetsenbord. De driverbestanden zijn:

1. GSM A6-module:

GSM_A6_Driver_STM32F407.c en GSM_A6_Driver_STM32F407.h

2. LCD-scherm:

STM32F407_I2C_LCD16x02_Driver.c en STM32F407_I2C_LCD16x02_Driver.h

3. Toetsenbord

STM32F407_KeypadDriver.c en STM32F407_KeypadDriver.h

Kopieer al deze 6 bestanden naar uw projectmap. Ik heb deze bestanden hieronder bijgevoegd:

Stap 7: Voeg de stuurprogrammabestanden toe aan uw project

Voeg de stuurprogrammabestanden toe aan uw project
Voeg de stuurprogrammabestanden toe aan uw project

Nadat u de stuurprogrammabestanden naar uw projectmap hebt gekopieerd, moet u deze bestanden aan uw project toevoegen.

In Keil, Selecteer Doel1, klik met de rechtermuisknop en selecteer Nieuwe groep toevoegen. Maak 4 nieuwe groepen en hernoem ze als:

1) Gebruikerstoepassing - Voeg hier een nieuw "main.c"-bestand toe.

2) GSM_A6_Driver - Voeg bestaande bestanden "GSM_A6_Driver_STM32F407.c" en "GSM_A6_Driver_STM32F407.h" toe aan deze groep.

3) LCD_Driver - Voeg bestaande "STM32F407_I2C_LCD16x02_Driver.c" en "STM32F407_I2C_LCD16x02_Driver.h" bestanden toe aan deze groep

4) Keypad_Driver - Voeg bestaande bestanden "STM32F407_KeypadDriver.c" en "STM32F407_KeypadDriver.h" toe aan deze groep

Opmerking: ik heb het bestand "main.c" hieronder toegevoegd, u kunt dit bestand rechtstreeks toevoegen of de inhoud ervan kopiëren naar het nieuw gemaakte hoofdbestand.

Stap 8: Configureer het pad van de headerbestanden

Configureer het pad van de headerbestanden
Configureer het pad van de headerbestanden

Nadat u de stuurprogrammabestanden hebt toegevoegd, moet u de compiler vertellen waar de respectieve headerbestanden zich bevinden. Daarom moeten we de compileroptie configureren.

Klik met de rechtermuisknop op de optie Doel1 voor doel "Target1.." C/C++ Pad opnemen. Zorg ervoor dat u het pad van uw projectmap opneemt, aangezien we de stuurprogrammabestanden daar hebben gekopieerd.

Stap 9: Sluit uw STM32F407 Discovery Kit aan op uw pc/laptop

Stap 10: Selecteer ST-Link Debugger in Compilerconfiguratie

Selecteer ST-Link Debugger in Compilerconfiguratie
Selecteer ST-Link Debugger in Compilerconfiguratie

Klik met de rechtermuisknop op Target1, klik vervolgens op Option for Target "Target1..", navigeer vervolgens naar het tabblad Debug en selecteer ST-Link-Debugger zoals weergegeven in de bovenstaande afbeelding

Stap 11: ST-Link Debugger configureren

ST-Link Debugger configureren
ST-Link Debugger configureren

Nadat u de ST-Link Debugger in stap 10 hebt geselecteerd, klikt u op Instellingen en selecteert u vervolgens Trace en controleert u alle velden zoals weergegeven in de bovenstaande afbeelding.

Stap 12: Bouw en upload de code

Bouw en upload de code
Bouw en upload de code

Bouw na het voltooien van alle stappen het project en zorg ervoor dat er geen fouten in de code staan. Na een succesvolle compilatie uploadt u de code naar uw Discovery Kit.

Stap 13: Dat is het!!! Reset gewoon de STM32F407 MCU en gebruik de mobiele telefoon

Image
Image

Ik heb een demovideo van dit project bijgevoegd.

Stap 14: Snelle notities en foutopsporingsinformatie

  • Ik raad u aan eerst de GSM-module aan te zetten en een minuut of zo te wachten. Want zodra u de GSM-module inschakelt, moet deze verbinding maken met de netwerkserviceprovider. Afhankelijk van de kwaliteit/signaalsterkte kan het even duren voordat de GSM-module is aangesloten.
  • Ik heb de uitvoer getest in "India". Ook voor de eenvoud heb ik de provinciecode (+91 voor India) hardgecodeerd in het stuurprogrammabestand "GSM_A6_Driver_STM32F407.c". Als u zich in een ander land bevindt, voeg dan uw landcode toe zoals aangegeven in de bovenstaande afbeelding.

Aanbevolen: