Tutoriel STM32 L476RG + Bluetooth (HC-05, HC-06)

Le but est de montrer comment utiliser un carte nucleo-64 avec un module Bluetooth HC-05 ou HC-06

Grace au projet stm32duino, on peut utiliser l'IDE Arduino pour programmer ces cartes

Il faudra installer les cartes ST dans l'IDE Arduino en suivant les indications du lien ci-dessus

Matériel nécessaire :

2 carteS STM32 Nucleo, ici une L476RG et une F411RE:

???

1 modules HC-05 et un HC-06, (ou 2 HC-05) :

???

Le Câblage :

On connecte l'HC06 ainsi :

???

On connecte l'HC05 ainsi :

???

Pour pourvoir communiquer avec un HC-05 par le port serie il faut garder le bouton du module appuyé, le mettre sous tension, et relâcher après 1 a 2 secondes

Si c'est bon la led clignotera lentement, cette opération n'est pas nécessaire sur le HC-06 et il n'y a donc pas de bouton sur le module

Les tests :

Pour tester les différents types de module serial AT que j'ai ESP01, HC06 et HC05 j'ai créer un petit programme :

Pour copier le programme, on clic dans le cadre du programme, puis Ctrl a, pour tout sélectionner, et Ctrl C pour copier

Ensuite vous pouvez le coller dans l'IDE Arduino

Il faut régler la com série sur pas de fin de ligne avant de lancer le programme

AT_Prog_test.ino :

Le paramétrages par la com série avec module un HC-06 (esclave uniquement):

au démarrage du programme :

???

Si tout va bien, il répond OK et donne la version de son firmware :

???

On peut tapez nos commandes, qui sont limité sur ces modules, la commande AT+NAME sans rien derrière remplace le nom par son adresse (nom par défaut):

il faut relever cette adresse (pour l'appairage) en faisant une recherche avec un smartphone :

???

ici 98:d3:32:70:d7:80 qu'il faudra noter 98d3,32,70d780 pour le module maître

Puis on fait les réglages :

???

Le paramétrages par la com série avec module un HC-05 (maitre/esclave):

au démarrage du programme :

???

Si tout va bien, il répond OK et donne la version de son firmware :

???

On peut tapez nos commandes après avoir modifier la com série :

???

En mode esclave :
En mode maître :

changez par l'adresse de votre module esclave dans AT+BIND

Maintenant, on débranche et rebranche les cartes nucleo, et l'appairage se fait.

On perd le contrôle des commande AT, la led devient fixe sur le module esclave, et le module maître clignote 3 fois rapidement puis une fois lent

Exemple de communication entre 2 cartes nucleo après appairage

Pour copier le programme, on clic dans le cadre du programme, puis Ctrl a, pour tout sélectionner, et Ctrl C pour copier

Ensuite vous pouvez le coller dans l'IDE Arduino

Le programme pour le maître :

L476RG_BT_Maitre.ino :

Le programme pour l'esclave :

L476RG_BT_Esclave.ino :

Et on regarde la com série du maître :

???

Voilà les leds des cartes s'allument ou s'éteignent suivant les instructions