Innehållsförteckning:
- Tillbehör
- Steg 1: Komponentlista
- Steg 2: Gör anslutningarna
- Steg 3: Öppna Keil UVision IDE
- Steg 4: Välj enheten
- Steg 5: Hantera körtidsmiljö
- Steg 6: Kopiera drivrutinsfilerna Int till projektmappen
- Steg 7: Lägg till drivrutinsfilerna i ditt projekt
- Steg 8: Konfigurera sökvägen till huvudfilerna
- Steg 9: Anslut ditt STM32F407 Discovery Kit till din dator/bärbara dator
- Steg 10: Välj ST-Link Debugger i kompilatorkonfiguration
- Steg 11: Konfigurera ST-Link Debugger
- Steg 12: Skapa och ladda upp koden
- Steg 13: Det är det !!! Återställ bara STM32F407 MCU och använd mobiltelefonen
- Steg 14: Snabba anteckningar och felsökningsinformation
Video: Grundläggande mobiltelefon med STM32F407 Discovery Kit och GSM A6 -modul: 14 steg (med bilder)
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Har du någonsin velat skapa ett coolt inbäddat projekt ?. Om ja, vad sägs om att bygga en av de mest populära och allas favoritprylar, dvs mobiltelefon !!!. I denna instruktionsbok kommer jag att guida dig om hur du bygger en grundläggande mobiltelefon med hjälp av STM32F407 Discovery Kit och GSM A6 -modulen.
Detta projekt innehåller tre huvudmoduler:
- GSM A6 -modul - Denna modul är ansvarig för att ringa/ta emot samtal och SMS.
- LCD 16x02 Display - För att se utgången
- Hex -knappsats - För att ge input
STM32F407 MCU styr GSM A6, LCD och knappsats. Så för att göra programmeringen enkel och organiserad utvecklade jag individuell drivrutinkod för gränssnitts GSM A6 -modul, LCD och knappsats på STM32F407 MCU. Sedan inkluderade jag helt enkelt dessa drivrutinsfiler i huvudprogrammet och kallade respektive API: er. Du hittar dessa drivrutinkoder i tillbehören nedan.
Hela Keil -projektfilen ingår nedan
Tillbehör
- Komplett information om STM32F407 Discovery Kit Komma igång med STM32F407 Discovery Kit
- Grundläggande detaljer om GSM A6 -modulen
- GitHub -förvaret Grundläggande mobiltelefon med STM32F407 Discovery -kit och GSM -modul A6 -modul
- Gränssnitt 16x02 LCD på STM32F407 Upptäckt med I2C -modulen.
- Gränssnitt 4X4 Matrix -knappsats på STM32F407 Discovery Kit
- Gränssnitt GSM-A6-modul på STM32F407 Discovery Kit
Steg 1: Komponentlista
Hårdvarukomponenterna som krävs för detta projekt är:
- STM32F407 Discovery Kit
- GSM A6 -modul
- LCD 16x02
- I2C -modul
- Hex -knappsats
- Ett par hopparkablar
- Brödbräda
- Högtalare (8Ω)
- Mikrofon
Steg 2: Gör anslutningarna
Anslut komponenterna enligt bilden ovan. Denna bild/diagram ger dig ett mycket realistiskt och enkelt sätt att ansluta alla komponenter.:-)
Obs: GSM A6 -modulen drivs med en mikro -USB -kontakt. Du kan använda vilken mobil laddare som helst för att starta GSM A6.
Steg 3: Öppna Keil UVision IDE
Öppna Keil uVision IDE. Klicka på ett projekt, välj Nytt uVision -projekt … Välj sedan din arbetskatalog och ange önskat projektnamn.
Steg 4: Välj enheten
När du har gett ett namn till projektet måste du i nästa steg lägga till en enhet. Här lägger vi till STM32F407VG Microncontroller från STMicroelectronics. Välj STM32F407VG och klicka sedan på OK.
Steg 5: Hantera körtidsmiljö
Nästa steg är att välja bibliotek/drivrutinkomponent på fliken Hantera körtidsmiljö. Välj här alla komponenter som visas i bilden ovan. När du har markerat alla lämpliga fält Klicka på Lös och klicka sedan på OK.
Steg 6: Kopiera drivrutinsfilerna Int till projektmappen
Nu måste du lägga till drivrutinfiler för GSM A6 -modul, LCD och knappsats. Drivrutinsfilerna är:
1. GSM A6 -modul:
GSM_A6_Driver_STM32F407.c och GSM_A6_Driver_STM32F407.h
2. LCD:
STM32F407_I2C_LCD16x02_Driver.c och STM32F407_I2C_LCD16x02_Driver.h
3. Knappsats
STM32F407_KeypadDriver.c och STM32F407_KeypadDriver.h
Kopiera alla dessa 6 filer till din projektmapp. Jag har bifogat dessa filer nedan
Steg 7: Lägg till drivrutinsfilerna i ditt projekt
När du har kopierat drivrutinsfilerna i din projektmapp måste du lägga till dessa filer i ditt projekt.
I Keil, Välj mål1, högerklicka och välj sedan Lägg till ny grupp. Skapa fyra nya grupper och byt namn på dem som:
1) Användarprogram - Lägg till en ny "main.c" -fil här.
2) GSM_A6_Driver - Lägg till befintliga "GSM_A6_Driver_STM32F407.c" och "GSM_A6_Driver_STM32F407.h" filer till denna gorup.
3) LCD_Driver - Lägg till befintliga "STM32F407_I2C_LCD16x02_Driver.c" och "STM32F407_I2C_LCD16x02_Driver.h" filer till denna grupp
4) Keypad_Driver - Lägg till befintliga "STM32F407_KeypadDriver.c" och "STM32F407_KeypadDriver.h" filer till denna grupp
Obs! Jag har inkluderat "main.c" -filen nedan. Du kan antingen direkt lägga till den här filen eller kopiera dess innehåll till den nyskapade huvudfilen.
Steg 8: Konfigurera sökvägen till huvudfilerna
När du har lagt till drivrutinsfilerna måste du berätta för kompilatorn var respektive rubrikfiler finns. Därför måste vi konfigurera kompilatoralternativet.
Högerklicka på Target1 Alternativ för Target "Target1.." C/C ++ Inkludera sökväg. Se till att du inkluderar sökvägen till din projektmapp eftersom vi kopierade drivrutinsfilerna där.
Steg 9: Anslut ditt STM32F407 Discovery Kit till din dator/bärbara dator
Steg 10: Välj ST-Link Debugger i kompilatorkonfiguration
Högerklicka på Target1, klicka sedan på Alternativ för Target "Target1..", navigera sedan till Debug Tab och välj ST-Link-Debugger som visas i bilden ovan
Steg 11: Konfigurera ST-Link Debugger
Efter att du valt ST-Link Debugger i steg 10, klicka på Inställningar, välj sedan Spåra och kontrollera alla fält som visas i bilden ovan.
Steg 12: Skapa och ladda upp koden
Efter att ha slutfört alla steg bygga projektet och se till att det inte finns några fel i koden. Efter lyckad sammanställning laddar du upp koden till ditt Discovery Kit.
Steg 13: Det är det !!! Återställ bara STM32F407 MCU och använd mobiltelefonen
Jag har inkluderat en demovideo av detta projekt.
Steg 14: Snabba anteckningar och felsökningsinformation
- Jag föreslår att du slår på GSM -modulen först och väntar en minut eller så. För när du sätter på GSM -modulen måste den ansluta till nätverksleverantören. Beroende på kvalitet/signalstyrka kan GSM -modulen ta lite tid att ansluta.
- Jag har testat produktionen i "Indien". För enkelhetens skull har jag hårdkodat länskoden (+91 för Indien) i drivrutinsfilen "GSM_A6_Driver_STM32F407.c". Om du är i ett annat land, vänligen lägg till din landskod som markeras på bilden ovan.