Inhoudsopgave:
- Benodigdheden
- Stap 1: Onderdelenlijst
- Stap 2: Maak de verbindingen
- Stap 3: Open Keil UVision IDE
- Stap 4: Selecteer het apparaat
- Stap 5: Runtime-omgeving beheren
- Stap 6: Kopieer de stuurprogrammabestanden Int naar de projectmap
- Stap 7: Voeg de stuurprogrammabestanden toe aan uw project
- Stap 8: Configureer het pad van de headerbestanden
- Stap 9: Sluit uw STM32F407 Discovery Kit aan op uw pc/laptop
- Stap 10: Selecteer ST-Link Debugger in Compilerconfiguratie
- Stap 11: ST-Link Debugger configureren
- Stap 12: Bouw en upload de code
- Stap 13: Dat is het!!! Reset gewoon de STM32F407 MCU en gebruik de mobiele telefoon
- Stap 14: Snelle notities en foutopsporingsinformatie
Video: Basis mobiele telefoon met STM32F407 Discovery Kit en GSM A6-module - Ajarnpa
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
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:
- GSM A6-module - Dit is een module die verantwoordelijk is voor het maken/ontvangen van oproepen en sms.
- LCD 16x02 Display - Om de output te zien:
- 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
De hardwarecomponenten die nodig zijn voor dit project zijn:
- STM32F407 Ontdekkingskit
- GSM A6-module
- LCD 16x02
- I2C-module
- Hex-toetsenbord
- Een paar startkabels
- Broodplank
- Luidspreker (8Ω)
- Microfoon
Stap 2: 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
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
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
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
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
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
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
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
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 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
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.