Sommario:

Telefono cellulare di base che utilizza il kit di rilevamento STM32F407 e il modulo GSM A6: 14 passaggi (con immagini)
Telefono cellulare di base che utilizza il kit di rilevamento STM32F407 e il modulo GSM A6: 14 passaggi (con immagini)

Video: Telefono cellulare di base che utilizza il kit di rilevamento STM32F407 e il modulo GSM A6: 14 passaggi (con immagini)

Video: Telefono cellulare di base che utilizza il kit di rilevamento STM32F407 e il modulo GSM A6: 14 passaggi (con immagini)
Video: Как начать работу с пакетами обнаружения STM32 Cellular to Cloud (P-L496G-CELL01, P-L496G-CELL02) 2024, Novembre
Anonim
Telefono cellulare di base che utilizza il kit di rilevamento STM32F407 e il modulo GSM A6
Telefono cellulare di base che utilizza il kit di rilevamento STM32F407 e il modulo GSM A6

Hai mai desiderato creare un fantastico progetto embedded?. Se sì, che ne dici di costruire uno dei gadget più popolari e preferiti da tutti, ad esempio il cellulare!!!. In questo Instructable, ti guiderò su come costruire un telefono cellulare di base utilizzando il Discovery Kit STM32F407 e il modulo GSM A6.

Questo progetto contiene 3 moduli principali:

  1. Modulo GSM A6 - Questo è il modulo responsabile per effettuare/ricevere chiamate e SMS.
  2. Display LCD 16x02 - Per vedere l'output
  3. Tastiera esagonale - Per dare input

L'MCU STM32F407 controlla il GSM A6, l'LCD e la tastiera. Quindi, per rendere la programmazione semplice e organizzata, ho sviluppato un codice driver individuale per l'interfacciamento del modulo GSM A6, LCD e tastiera su MCU STM32F407. Quindi ho semplicemente incluso questi file di driver nel programma principale e ho chiamato le rispettive API. Puoi trovare questi codici driver nelle forniture di seguito.

L'intero file del progetto Keil è incluso di seguito

Forniture

  • Dettagli completi su STM32F407 Discovery Kit Iniziare con STM32F407 Discovery Kit
  • Dettagli di base sul modulo GSM A6
  • GitHub RepositoryBasic Cellulare con STM32F407 Discovery kit e modulo GSM Modulo A6
  • Interfacciamento LCD 16x02 su STM32F407 Discovery utilizzando il modulo I2C.
  • Interfacciamento della tastiera a matrice 4X4 su STM32F407 Discovery Kit
  • Modulo di interfacciamento GSM-A6 su STM32F407 Discovery Kit

Passaggio 1: elenco dei componenti

Elenco dei componenti
Elenco dei componenti
Elenco dei componenti
Elenco dei componenti
Elenco dei componenti
Elenco dei componenti

I componenti hardware necessari per questo progetto sono:

  1. STM32F407 Kit di rilevamento
  2. Modulo GSM A6
  3. LCD 16x02
  4. Modulo I2C
  5. Tastiera esagonale
  6. Un paio di cavi Jumper
  7. Tagliere di pane
  8. Altoparlante (8Ω)
  9. Microfono

Passaggio 2: effettuare i collegamenti

Fai i collegamenti
Fai i collegamenti

Collegare i componenti come indicato nell'immagine sopra. Questa immagine/diagramma ti offre un modo molto realistico e semplice per collegare tutti i componenti.:-)

Nota: il modulo GSM A6 è alimentato tramite un connettore micro USB. Puoi utilizzare qualsiasi caricatore mobile per alimentare il GSM A6.

Passaggio 3: aprire Keil UVision IDE

Apri Keil UVision IDE
Apri Keil UVision IDE

Apri Keil uVision IDE. Fare clic su un progetto e selezionare Nuovo progetto uVision… Quindi selezionare la directory di lavoro e assegnare il nome del progetto preferito.

Passaggio 4: selezionare il dispositivo

Seleziona il dispositivo
Seleziona il dispositivo

Dopo aver dato un nome al progetto, nel passaggio successivo è necessario aggiungere un dispositivo. Qui stiamo aggiungendo il Micronconroller STM32F407VG di STMicroelectronics. Selezionare l'STM32F407VG, quindi fare clic su OK.

Passaggio 5: gestire l'ambiente di runtime

Gestire l'ambiente di runtime
Gestire l'ambiente di runtime
Gestire l'ambiente di runtime
Gestire l'ambiente di runtime

Il passaggio successivo consiste nel selezionare il componente libreria/driver nella scheda Gestisci ambiente run-time. Qui selezionare tutti i componenti come mostrato nell'immagine sopra. Dopo aver controllato tutti i campi appropriati, fare clic su Risolvi, quindi su OK.

Passaggio 6: copia i file del driver Int nella cartella del progetto

Copia i file del driver Int nella cartella del progetto
Copia i file del driver Int nella cartella del progetto

Ora devi aggiungere i file del driver per il modulo GSM A6, LCD e tastiera. I file del driver sono:

1. Modulo GSM A6:

GSM_A6_Driver_STM32F407.c e GSM_A6_Driver_STM32F407.h

2. LCD:

STM32F407_I2C_LCD16x02_Driver.c e STM32F407_I2C_LCD16x02_Driver.h

3. Tastiera

STM32F407_KeypadDriver.c e STM32F407_KeypadDriver.h

Copia tutti questi 6 file nella cartella del tuo progetto. Ho allegato questi file di seguito

Passaggio 7: aggiungi i file del driver al tuo progetto

Aggiungi i file del driver al tuo progetto
Aggiungi i file del driver al tuo progetto

Una volta copiati i file del driver all'interno della cartella del progetto, è necessario aggiungere questi file al progetto.

In Keil, seleziona Target1, fai clic con il pulsante destro del mouse, quindi seleziona Aggiungi nuovo gruppo. Crea 4 nuovi gruppi e rinominali come:

1) Applicazione utente - Qui aggiungi il nuovo file "main.c".

2) GSM_A6_Driver - Aggiungi i file "GSM_A6_Driver_STM32F407.c" e " GSM_A6_Driver_STM32F407.h" esistenti a questo gruppo.

3) LCD_Driver - Aggiungi i file "STM32F407_I2C_LCD16x02_Driver.c" e "STM32F407_I2C_LCD16x02_Driver.h" esistenti a questo gruppo

4) Keypad_Driver - Aggiungi i file esistenti "STM32F407_KeypadDriver.c" e "STM32F407_KeypadDriver.h" a questo gruppo

Nota: ho incluso il file "main.c" di seguito, puoi aggiungere direttamente questo file o copiarne il contenuto nel file principale appena creato.

Passaggio 8: configurare il percorso dei file di intestazione

Configura il percorso dei file di intestazione
Configura il percorso dei file di intestazione

Una volta aggiunti i file del driver, è necessario indicare al compilatore dove si trovano i rispettivi file di intestazione. Quindi dobbiamo configurare l'opzione del compilatore.

Fare clic con il pulsante destro del mouse sull'opzione Target1 per Target "Target1." C/C++ Include percorso. Assicurati di includere il percorso della cartella del tuo progetto poiché abbiamo copiato i file del driver lì.

Passaggio 9: collegare il kit di rilevamento STM32F407 al PC/laptop

Passaggio 10: selezionare ST-Link Debugger nella configurazione del compilatore

Seleziona ST-Link Debugger nella configurazione del compilatore
Seleziona ST-Link Debugger nella configurazione del compilatore

Fare clic con il pulsante destro del mouse su Target1, quindi fare clic su Opzione per Target "Target1.", quindi accedere alla scheda Debug e selezionare ST-Link-Debugger come mostrato nell'immagine sopra

Passaggio 11: configurazione del debugger ST-Link

Configura ST-Link Debugger
Configura ST-Link Debugger

Dopo aver selezionato il debugger ST-Link al punto 10, fare clic su Impostazioni, quindi selezionare Traccia e controllare tutti i campi come mostrato nell'immagine sopra.

Passaggio 12: crea e carica il codice

Crea e carica il codice
Crea e carica il codice

Dopo aver completato tutti i passaggi, crea il progetto e assicurati che non ci siano errori nel codice. Dopo aver compilato con successo, carica il codice nel tuo Discovery Kit.

Passaggio 13: questo è tutto!!! Basta ripristinare l'MCU STM32F407 e utilizzare il telefono cellulare

Image
Image

Ho incluso un video dimostrativo di questo progetto.

Passaggio 14: note rapide e informazioni di debug

  • Ti suggerisco di accendere prima il modulo GSM e di attendere circa un minuto. Perché una volta acceso il modulo GSM deve connettersi al provider di servizi di rete. A seconda della qualità/intensità del segnale, il modulo GSM potrebbe richiedere del tempo per connettersi.
  • Ho testato l'output in "India". Inoltre, per semplicità, ho codificato il codice della contea (+91 per l'India) nel file del driver "GSM_A6_Driver_STM32F407.c". Se sei in un altro paese, aggiungi il codice del tuo paese come evidenziato nell'immagine sopra.

Consigliato: