Picaxe - BlueTooth HC06 et Androïd

PieM

Senior Member
Le faible coût de certains modules BT (moins de 4€) et la diffusion des appareils sous androïd rendent intéressante la communication entre ces terminaux et les Picaxes.
Le module dont il est question ici est le HC06 très diffusé.
Il faut savoir qu'il n'est qu'en mode esclave, non configurable en mode maître, contrairement au HC05.
hc06.jpg
4 broches :
- Gnd: 0V
- Vcc entre 3.6V et 6.5V
- Rxd : broche réception
- Txd : broche émission

Important: le module est alimenté en interne à 3.3V; Rxd et Txd sont donc au niveau 0 - 3.3V
Deux conséquences avec un picaxe alimenté en 5V :
1- Relier la broche Rxd par l'intermédiaire d'un diviseur de tension. (impératif)
2- La broche Txd doit être connectée à une entrée picaxe type TTL!

La connexion HC06 et picaxe est donc très simple:
Rxd à relier à une sortie associée à un serout (ou hserout) sur le Picaxe via un diviseur (12k/22k par ex.)
Txd à relier à une entrée associée à un serin (ou hserin)

Dès sa mise sous tension le module fait clignoter la led intégrée.
Il est alors dans le mode de réception de commandes AT permettant de modifier
- le nom : de base, peut varier selon le module: parfois linvor, NULL, ou autre noms...
- le débit de transmission : de base 9600
- le mot de passe : de base 1234

Ce n'est que dans ce mode AT que les modification sont possibles.
Conseil, ne modifier pour l'instant que le nom.
Ne pas changer le débit ! une erreur pouvant rendre le module inutilisable. (pas de reset)

pour changer le nom :

Rich (BB code):
setfreq m8 'nécessaire pour disposer du débit de 9600bauds
   high B.5 'avec B.5 reliée à Rxd du HC06
   serout B.5, T9600_8,("AT+NAME") 'pas de cr, lf !
   serout B.5, T9600_8,("PICAXE01")'pas de cr, lf !
Le changement de nom dans la liste n'est actif qu'après mise hors tension totale du HC06 pendant plusieurs minutes.
Dès lors on peut procéder à son appairage avec un maître, type smartphone:
- activer le bluetooth, dans les paramètres, entrer le mot de passe lié au module (1234)

Dès appairage, la led du module reste alumée en continu.

La communication avec le picaxe est alors possible. Il ne peut plus recevoir de commandes AT.

Pour communiquer rentrer un petit programme dans le picaxe:
Rich (BB code):
#picaxe 14M2
setfreq m8 'nécessaire pour disposer du débit de 9600bauds
SYMBOL  TXBT      = B.5
SYMBOL  RXBT      = C.0
High B.5

do
   serin RXBT, T9600_8, b1  ' attend une valeur transmise par le terminal Androïd
   serout TxBT, T9600_8,(" cde: ",#b1," ") ' retransmet le code reçu vers le terminal Androïd.
loop
En fonction du type de développement, il sera préférable d'utiliser le hserin/hserout du picaxe, limité à deux bytes sur M2 mais offrant beaucoup plus de possibilités sur X2.

Bon, coté Androïd maintenant...
pour les moins courageux, pour débuter, une solution très simple: utiliser l'appli gratuite Bluetooth spp pro
https://play.google.com/store/apps/details?id=mobi.dzs.android.BLE_SPP_PRO&hl=fr_FR

On dipose de la possibilité d'envoyer des valeurs numériques, du texte, d'avoir un clavier virtuel de 12 touches paramétrables, ce qui permet de débuter en dialoguant avec le Picaxe, et de commander ce que l'on veut.
Ensuite pour aller plus loin avec des commandes vocales, par les accéléromètres et autres capteurs intégrés, la solution App Inventor 2 du MIT semble la plus simple pour celui qui ne veut pas se frotter à Java...
Je ferai passer pour ceux que cela intéresse une petite appli avec des BP, un potard linéaire et les commandes par inclinaison du smatphone ou de la tablette.
 
Last edited:

alainav1

Senior Member
Bonjour,
ce sujet m'interesse particulièrement i
ce sujet tombe à pic (ou plutot a picaxe ) car j'ai un petit projet de commande sans fil a courte distance je pensais utiliser le 433 MHz mais cette solution est peut etre plus sympas

si j'ai bien compris
le module hc06 est en esclave seulement ça veut dire qu'il ne peut emettre ?
si par exemple je souhaite communiquer entre 2 picaxe (un picax maitre et un esclave ) il me faut un hc05 et un hc 06 ?
je suis bien sur interessé par des exemple d'utilisation de ces modules que je decouvre
cordialement
Alain
 
Last edited:

BESQUEUT

Senior Member
Ca m'intéresse aussi dans la mesure où ça pourrait permettre de se passer de l'habituel ensemble LCD/OLED+potar/encodeur+boutons poussoir et de pas mal de code...
Ca pourrait aussi intéresser Zeltron pour piloter ses trains...
le module hc06 est en esclave seulement ça veut dire qu'il ne peut emettre ?
Non, ce n'est pas le concept.
Comme expliqué par PieM la communication fonctionne dans les 2 sens, comme n'importe quelle liaison RS232.
C'est l'initiative de la communication qui défini le maitre (et par déduction l'esclave).
A priori, un terminal Androïd est le maitre, donc il est logique que le Picaxe soit un esclave. Une fois la communication établie par la tablette Androïd, le Picaxe peut répondre.
Pour communiquer entre 2 Picaxes il faut effectivement un maitre et un esclave. Attention : la portée du Bluetooth est très limitée. C'est fait pour communiquer entre une souris et un PC ou entre un téléphone et un écouteur, pas pour communiquer avec la station météo à l'autre bout du jardin...
 

alainav1

Senior Member
la distance serait de 2 ou 3 metres c'est uniquement pour ne pas avoir de fil
(la finalité c'est de completer une commande de train miniature (qui fonctionne actuellement en infrarouge )(voir mon site ou je decrst un exemple realisé avec des pic et processing )
De petites animations sur un petit reseau pourraient etre gerer de cette façon .
cordialement
Alain
 

Francis52

Member
Bonsoir à tous,
Merci PieM pour ton expérience et tes infos. Je suis en train d'essayer de faire la même chose avec le module de chez A4 (un Roving RN-42).
j'ai créé une petite application sous app inventor pour essayer. Si vous voulez faire des essais, elle est téléchargeable ici. (onglet prof/android).
Pour l'instant je suis un peu bloqué pour l'appairage du module, mais je pense qu'il faut rentrer ton programme pour que cela fonctionne. Je vais essayer de faire ça sous logicator.
Pour App inventor, si tu as des infos, je suis preneur, pas l'application toute faite, mais les blocs que tu utilises.
Bonne soirée à tous.
 

MGU

Senior Member
la distance serait de 2 ou 3 metres c'est uniquement pour ne pas avoir de fil
(la finalité c'est de completer une commande de train miniature (qui fonctionne actuellement en infrarouge )(voir mon site ou je decrst un exemple realisé avec des pic et processing )
De petites animations sur un petit reseau pourraient etre gerer de cette façon .
cordialement
Alain
Mais si il en faut une vingtaine, il y a aussi ça:
http://www.ebay.fr/itm/315-433Mhz-WL-RF-Module-Emetteur-Recepteur-Telecommande-Pour-Arduino-ARM-MCU-ASK-/141353555476?pt=FR_YO_MaisonJardin_Bricolage_ElectroniqueComposants&var=&hash=item20e9541614

ceux que j'ai reçus fonctionnent bien et à 3 m, pas besoin d'antenne

MM
 

PieM

Senior Member
Deux picaxes ne peuvent communiquer ensemble s'ils sont équipé chacun d'un esclave.
Comme dit Besqueut, le maitre a l'initiative de l'appairage. Sur un smartphone, le choix se fait d'après une liste des modules externes visibles.
Par contre pour un autre module HC05 par exemple, je n'ai pas d'expérience, mais on peut à priori prédéfinir le nom et le pwd de l'esclave auquel on veut se connecter par les commandes AT .

Concernant la portée, je passe une dizaine de metres entre un picaxe et un phone Nexus. ça passe facilement un mur béton.

Francis, je ne connais pas le module Roving RN-42, donc difficile de savoir si son initialisation se fait de la même façon, avec quel débit, et quel pwd. Je ne conseille pas dans un premier temps d'utiliser Logicator au début; le code généré est parfois un peu tordu.

Je mettrai en ligne les blocs que j'utilise sous App Inventor.

Le gros intérêt de cette solution est qu'outre le fait qu'on dispose d'un terminal performant avec la tablette ou le smartphone, on est en bidirectionnel, disposant ainsi du feedback de toute commande envoyée.
 

Francis52

Member
@PieM, tu envoies ton petit programme avec programming editor ?
Pour le débit, j'ai essayé tout à l'heure, avec 115200 bauts, pas terrible, mais avec 9600, j'ai visualisé le module bluetooth sur mon téléphone. Par contre, sans le petit programme, je n'ai pas pu transmettre le code d’appairage. Je vais faire de nouveaux essais.
 

pdevisme1

Senior Member
Bonsoir à tous,

Je viens de regarder avec intérêt cette discussion puisqu'elle complète celle que j'avais ouverte il y a quelques semaines maintenant sur ce même forum, cela tombe donc à point nommé.

Pour les raccordements du module HC-06, je rencontre quelques problèmes puisque pour des raisons de simplicité d'utilisation ( pédagogique collège ), les broches C0 à C7 de mon interface sont "figées" en entrées et toutes équipées d'une résistance de 10kOhms ou plus exactement d'un réseau de résistances ( voir photo-ci-dessous ).

Montage_28X1.jpg

Mes questions sont donc les suivantes :

- le raccordement de la borne C7 de mon Picaxe 28X1 à la broche Txd du Bluetooth est-elle réalisable même avec la résistance de 10 kOhms ( voir photo jointe ) ?

- comment, dans ce cas, adapter la tension de sortie de la borne C6 mon Picaxe 28X1 à l'entrée Rxd du module Bluetooth ?

J'espère avoir été clair.

Comme Francis, je suis preneur des exemples proposés par Piem sur App inventor.

Merci d'avance.
 

PieM

Senior Member
@PieM, tu envoies ton petit programme avec programming editor ?
Pour le débit, j'ai essayé tout à l'heure, avec 115200 bauts, pas terrible, mais avec 9600, j'ai visualisé le module bluetooth sur mon téléphone. Par contre, sans le petit programme, je n'ai pas pu transmettre le code d’appairage. Je vais faire de nouveaux essais.
Je crois qu'il y a confusion. Le débit par défaut de ton module serait de 115200 bauds. Cela est le débit utilisé entre le module et le picaxe. Rien à voir avec la transmission bluetooth entre le module et le telephone.
115200 bauds n'est possible sur picaxe qu'avec la fonction HSERIN / HSEROUT .
si tu vois le module, il faut ensuite rentrer le code 1234 pour l'appairage.
 

PieM

Senior Member
- le raccordement de la borne C7 de mon Picaxe 28X1 à la broche Txd du Bluetooth est-elle réalisable même avec la résistance de 10 kOhms ( voir photo jointe ) ?

- comment, dans ce cas, adapter la tension de sortie de la borne C6 mon Picaxe 28X1 à l'entrée Rxd du module Bluetooth ?
non tu ne pourras pas adapter la tension sur C6. Il faut que tu utilises une sortie normale avec la commande SEROUT.
Par contre tu peux laisser TxD bluetooth sur Hserin, ce qui permet de recevoir des infos en tâche de fond. Mas ce n'est pas critique.
 

MGU

Senior Member
Bonjour,

Et merci Piem pour ce petit cadeau de nouvel an.

J'ai vu que pour quelques centimes de plus, on peut se procurer des modules HC05, mais je ne connais pas l’intérêt qu'il peut présenter (communication de 2 modules entre eux?).

MM
 

PieM

Senior Member
Bonjour,

Et merci Piem pour ce petit cadeau de nouvel an.

J'ai vu que pour quelques centimes de plus, on peut se procurer des modules HC05, mais je ne connais pas l’intérêt qu'il peut présenter (communication de 2 modules entre eux?).MM
Oui Michel, l'intérêt du HC05 est qu'il est configurable et possède beaucoup plus de commandes. Ainsi il est capable de communiquer avec un autre module HC05 ou HC06.
Pour l'immédiat mon intérêt perso a été dans l'utilisation d'un smartphone en tant que terminal évolué, avec écran, clavier, commande vocale et autres bricoles configurables, avec une liaison bidirectionnelle.
 

PieM

Senior Member
Voici un petit proto pour ceux qui sont intéressés:

HC06-10.jpg

en haut deux inters Connecter et Déconnecter
puis BP Marche - Arrêt : envoient les codes 1 et 2
Inters AVANT - ARRIERE : envoient les codes 3 et 4

deux cellules d'affichage:
la jaune affiche le retour d'ordre en provenance du Picaxe
la rouge affiche en local la position du potentiomètre linéaire situé dessous.

une case à cocher CONTINU: si cochée, l'envoi de la valeur potentiomètre se fait en continu
sinon se fait lors de l'appui sur le BP ENVOI.

dessous le potentiomètre linéaire: les valeurs transmises sont entre 5 et 254 afin de ne pas interférer avec les BP 1 à 4

et deux cases d'affichage : à droite la valeur liée à l'inclinaison X du smartphone, à gauche celle de Y
Ces deux grandeur sont mises à l'echelle 0 - 200 et en valeurs entières afin d'être compatible avec un byte.
Elles ne sont pas transmises au Picaxe avec mon programme. (pour l'instant)
 

Attachments

pdevisme1

Senior Member
Bonsoir à tous,

Déjà Piem, merci pour ton travail et tes réponses.

Par contre, il y a un truc que je ne comprends pas bien. Quand tu dis :

Rxd à relier à une sortie associée à un serout (ou hserout) sur le Picaxe via un diviseur (12k/22k par ex.)
Txd à relier à une entrée associée à un serin (ou hserin)
Est-ce que tu veux dire :

1- Que tu connectes le Txd et le Rxd du module Bluetooth sur n'importe quelles entrées et sorties du Picaxe et que tu utilises ensuite les fonctions serout ( ou hserout ) et serin ( ou hserin ) lors de la programmation

ou

2- Que tu ne peux connecter le Txd et le Rxd du module Bluetooth qu'uniquement sur les broches hserin et hserout du Picaxe ( donc dans mon cas précis sur C6 et C7 sur un 28X1 d'où le schéma proposé lors de mon message précédent ) ?

Dans le cas où la bonne réponse est la 1, utilisant un uln20803 en sortie de Picaxe, le montage suivant est-il possible pour raccorder le Rxd du module Bluetooth:

Montage_2_28X1.jpg

Merci d'avance.

Bonne soirée.
 

PieM

Senior Member
Est-ce que tu veux dire :

1- Que tu connectes le Txd et le Rxd du module Bluetooth sur n'importe quelles entrées et sorties du Picaxe et que tu utilises ensuite les fonctions serout ( ou hserout ) et serin ( ou hserin ) lors de la programmation

Dans le cas où la bonne réponse est la 1, utilisant un uln20803 en sortie de Picaxe, le montage suivant est-il possible pour raccorder le Rxd du module Bluetooth:

On peut utiliser les entrées sorties HSERIN et HSEROUT en respectant la configuration liées à ces commandes.
Mais dans le cas présent je te conseille d'utiliser SERIN et SEROUT sur n'importe quelle entrée type TTL du Picaxe et sur n'importe quelle sortie avec un diviseur de tension.
Par contre le montage en sortie d'un ULN2803 ne peut pas marcher !!
1 - le niveau sortie est inversée par rapport à l'entrée
2 - la sortie ULN est un collecteur ouvert. : soit 0V, soit haute impédance.
3 - ton pseudo diviseur n'a pas de sens car la tension appliquée à Rxd sera 5V ou 3V en fonction d'une entrée à 0 ou 1

Utiliser une sortie directe du Picaxe!
 

BESQUEUT

Senior Member
Dans le cas où la bonne réponse est la 1, utilisant un uln20803 en sortie de Picaxe, le montage suivant est-il possible pour raccorder le Rxd du module Bluetooth:.
Sous réserve de confirmation par PieM :
Ce montage conduit a un signal haut à 5V en entrée du module Bluetooth ==> il manque un diviseur de tension
Accessoirement, il y a inversion des niveaux haut et bas ce qui risque de poser des problèmes potentiellement insolubles au niveau logiciel.
Si vraiment on ne peux pas bypasser l'ULN, il va falloir un montage un peu plus complexe, mais PieM est très fort pour trouver malgré tout une solution "simple".
Edit : Grilled by PieM
Si j'ai bien compris, l'objectif serait d'utiliser des platines sur lesquelles l'ULN n'est pas contournable, ce qui suppose :
- d'inverser les signaux,
- de réduire réellement la tension des signaux hauts.
Par exemple, un deuxième ULN en cascade, alimenté en 3V ?
 

PieM

Senior Member
Du coup Besqueut m'oblige à cogiter !! :)

Il y a peut être une solution a tester:

relier la sortie ULN à GND avec le diviseur 12k / 22k et relier le noeud à Rxd, comme si c'était une sortie normale.
Ajouter une R 1k en pull up sur la sortie ULN
utiliser la commande SEROUT xx, N9600... au lieu de T9600....
(par contre garder T9600 pour le SERIN)

Allumer un cierge, faire les essais ...
 

pdevisme1

Senior Member
Bonjour à tous, je viens de recevoir le module HC06, je vais donc pouvoir faire des essais lundi...

Par contre, comme à mon habitude j'aurais besoin de quelques précisions.

Piem quand tu donnes ce code :

Code:
[color=Blue]setfreq m8 [/color][color=Green]'nécessaire pour disposer du débit de 9600bauds[/color]
   [color=Blue]high B.5 [/color][color=Green]'avec B.5 reliée à Rxd du HC06
   [/color][color=Blue]serout B.5[/color][color=Black], [/color][color=Blue]T9600_8[/color][color=Black],[/color][color=Blue]([/color][color=Red]"AT+NAME"[/color][color=Blue]) [/color][color=Green]'pas de cr, lf !
   [/color][color=Blue]serout B.5[/color][color=Black], [/color][color=Blue]T9600_8[/color][color=Black],[/color][color=Blue]([/color][color=Red]"PICAXE01"[/color][color=Blue])[/color][color=Green]'pas de cr, lf ![/color]
Je suppose que PICAXE01 est le nouveau nom du module mais est-ce qu'il faut remplacer Name par le nom initial du module, laissé AT+, l'enlever... laisser AT+NAME comme ça...

Et puis, qu'est-ce que ça veut dire : 'pas de cr, lf ! ?

Désolé pour les spécialistes mais j'ai commencé par Picaxe Programming Editor donc j'ai un peu de mal avec les codes... je m'aperçois au fil des discussions qu'il faudrait que je m'y mette... et puis, je préfère demander, comme ça je serai moins bête ce soir.

Merci d'avance.
 

PieM

Senior Member
Eh là, c'est pas du picaxe, il faut remonter aux télétypes genre ASR33
Dis Michel, le cr lf, on l'a utilisé bien après Mathusalem, et on l'utilise encore .... même en picaxe.
J'ai précisé cela car en C++ avec certains modules, il faut l'ajouter.
Je crois qu'avec l'Arduino il faut les mettre. (?)

Je suppose que PICAXE01 est le nouveau nom du module mais est-ce qu'il faut remplacer Name par le nom initial du module, laissé AT+, l'enlever... laisser AT+NAME comme ça...
oui, le nouveau nom, ici PICAXE01, est à mettre exactement comme ça.

AT+xxxx definit le paramètre que l'on veut changer: NAME pour le nom, BAUD pour le débit (ne pas changer !) PIN pour le mot de passe.

Une fois que le nom est changé, tu vas te connecter avec ton smartphone. Il ne va pas encore voir le nouveau nom, mais l'ancien (HC-06 ou linvor, ou NULL ...)
peu importe, tu te connectes et là risque d'apparaître le nouveau nom.
Dès la connexion, la led du HC06 doit s'arrêter de clignoter.
Ce n'est qu'à partir de cet instant que tu pourras communiquer avec ton picaxe et le second programme.
 

pdevisme1

Senior Member
Bonsoir à tous,

Est-ce qu'il est possible d'associer le module HC06 à un téléphone ( pour moi un Alcatel One Touch C7 ) en ne branchant QUE l'alimentation du module ( c'est-à-dire Vcc et ground ) et RIEN sur le Txd et le Rxd ?

Je pose cette question puisque je viens d'essayer, le module semble être associé à mon téléphone ( le mot de passe 1234 est bien demandé et je peux éventuellement le dissocier ) mais la LED du module reste clignotante ? Sur mon téléphone, je peux également visiblement renommer le module.

Ou bien il faut aussi une communication possible sur Rxd et Txd ou alors il faut absolument le renommer...... je ne sais pas trop.

Merci d'avance.
 
Last edited:

PieM

Senior Member
le module peut etre associé à tout master bluetooth (sauf AïePomme !) dès qu'il est sous tension.
Par contre si la led reste clignotante, ce n'est pas normal.
 

pdevisme1

Senior Member
Bonsoir Piem, j'ai essayé via l'application bluetooth spp pro et l'association s'est faite rapidement et correctement.

Merci.
 

PieM

Senior Member
Bonsoir Piem, j'ai essayé via l'application bluetooth spp pro et l'association s'est faite rapidement et correctement.

Merci.
J'ai fait une autre petite appli androïd qui transmet l'état de 6 BP, d'un potentiomètre linéaire 0 à 254, et des valeurs des accéléromètres X et Y (inclinaison du smartphone.)
 

pdevisme1

Senior Member
Bonsoir Piem, oui j'ai vu ça, merci.

Je vais faire des essais avec ton application dès que possible et je te tiens au courant.

A bientôt.
 

PieM

Senior Member
Bonsoir Piem, oui j'ai vu ça, merci.

Je vais faire des essais avec ton application dès que possible et je te tiens au courant.

A bientôt.
Non pas vu ! je viens de la terminer . c'est une autre que celle transmise précédemment.
 

PieM

Senior Member
Un petit bout de programme extrait de mon appli qui te permet de visualiser les valeurs transmises, sur PE.
comme c'est fait sur un M2, il n'est pas possible d'utiliser le Hserin beaucoup plus intéressant pour ce genre d'appli.
Il faut donc se rabattre sur un simple serin.

Rich (BB code):
'**************************************
'Liaison BlueTooth HC-06.
'Picaxe 14M2 -
'liaison serie _Afficheur ELCD204BLB
'**************************************

#picaxe 14M2
'#no_data

setfreq m8
'symboles ===============================
'OUT
   SYMBOL  LCD    = C.4
   SYMBOL  TxBT   = B.5 'vers diviseur 5V - 3V
'IN

   SYMBOL  RxBT   = C.0 'vers Rx de HC06
   'SYMBOL  RxBT  = B.1 'pin Hserin
   'b0  reserve pour les flags  
   SYMBOL bauds   = T9600_8   'liaison HC06

'*********************************************************
principal:

   goto prog1
'==========================================================
prog1:
do
  
   serin [200],RxBT, bauds,b6,b1,b2,b3,b4,b5
   if b6 = 255 then
      sertxd ("Cde ",#b1,cr, lf) ' prends la valeur 1, 2, 3, ou 4
      sertxd ("Pot ",#b2,cr, lf) ' prends la valeur 0 à 254
      sertxd ("Xacc:",#b3,cr, lf)' prends la valeur 0 à 200 (100 smartphone à plat)
      sertxd ("Yacc:",#b4,cr, lf)' prends la valeur 0 à 200 (100 smartphone à plat)
      sertxd ("Check:",#b5,cr, lf)' prends la valeur 1, 2, 0
   endif

   pause 100
loop
'============================================================
HC06-105.jpg

View attachment Picaxe_HC06_105 (2).txt à renommer en aia
 
Last edited:

pdevisme1

Senior Member
Bonsoir à tous, voilà en quelques lignes le retour de mes quelques manipulations de cet après midi :

1- J'ai téléchargé et installé sans aucun problème sur mon téléphone les deux applications ( voir #14 et #35 ) proposées par Piem

2- La connection avec mon téléphone se fait parfaitement sur ces deux applications

3- J'ai essayé dans un premier temps de renommer le module "derrière" un uln en utilisant le montage au #22 et avec le code de Piem au #1, sans succès

4- J'ai essayé dans un deuxième temps de renommer le module en sortie directe du Picaxe ( et quand je dis en sortie directe du Picaxe, c'est bien en sortie directe c'est à dire SANS le diviseur de tension... j'avais oublié... OUPS ! ), résultat le nom est bien changé... reste à voir maintenant si le Rxd du module Bluetooth n'est pas HS... si ça marche, comme dirait Piem, je n'ai plus qu'à allumer un cierge...

Par contre, là ou je bloque un peu c'est pour tester ces deux applications ( et du coup en même temps le Rxd du module HC-06... ) c'est sur le programme du Picaxe.

En fait, comme je n'y connais rien en code pur ( et malgré la mise en garde Piem ), j'ai essayé la fonction serin de PE6 mais pour cette fonction, il n'est pas proposé de vitesse de 9600 bauds.

J'ai donc utilisé la fonction convertir ( le flowchart en basic ) et j'ai remplacé dans ce code la vitesse proposée par T9600 mais quand j'essais de transférer le programme il y a du coup une erreur...

Donc là, je suis un peu bloqué.

Moi ce qui m'intéresse pour l'instant c'est de récupérer les valeurs ( 1, 2, 3 et 4 ) émises par le HC-06 ( comme avec les deux applications de Piem ), de les stocker dans une variable et d'exploiter ensuite facilement cette variable.

S'il faut vraiment passer par du code je regarderai ça de plus près mais d'un point de vue "utilisation pédagogique" je pense que c'est que c'est plus simple d'utiliser PE6.

Voilà, voilà.
 

pdevisme1

Senior Member
Re-bonsoir, je viens de retrouver une doc faite par Thierry Lancelot que j'avais mise de côté au cas où...

Donc, Piem, quand tu dis :

Ne pas changer le débit ! une erreur pouvant rendre le module inutilisable. (pas de reset)
Je pense donc qu'il faut plutôt éviter de changer le débit mais que c'est possible quand même... donc j'ai trouvé autre chose.

Utilisant un 28X1 et un quartz de 4MHz, est-ce que setfreq m8 suivi de serin 0, T9600_8, b0 en flowchart sur Picaxe Programming Editor ( mais avec des cases Basic bien sûr ) pourrait permettre de récupérer les valeurs 1, 2, 3 et de ton application ?

J'avoue que ça arrangerait bien mes affaires tout ça.
 

PieM

Senior Member
de renommer le module "derrière" un uln en utilisant le montage au #22 et avec le code de Piem au #1, sans succès
Il fallait comme je l'ai dit, changer la polarité du serin de T9600_8 à N9600_8 ! sinon ça ne peut pas marcher, bien sûr.

Moi ce qui m'intéresse pour l'instant c'est de récupérer les valeurs ( 1, 2, 3 et 4 ) émises par le HC-06 ( comme avec les deux applications de Piem ),
C'est exactement ce que fait le petit programme que j'ai donné en #1 puisque b1 est une valeur qui peut être 1,2,3, ou 4!

j'ai essayé la fonction serin de PE6 mais pour cette fonction, il n'est pas proposé de vitesse de 9600 bauds.
je ne comprends pas ! j'ai donné le code à adopter, inutile d'inventer! pour 9600 bauds, il faut que le picaxe soit à 8MHz et la commande est alors T9600_8.
merci de voir la doc sur serin.

S'il faut vraiment passer par du code je regarderai ça de plus près mais d'un point de vue "utilisation pédagogique" je pense que c'est que c'est plus simple d'utiliser PE6.
PE6 offre la programmation basic et la programmation flowchart. le mode flowchart a ses limites. Certaines choses sont à faire dans des cellules basic. je n'y peut rien.
Il y a 3 lignes de code, ce n'est quand même pas le bout du monde. Bien expliqué je pense que des élèves peuvent comprendre ....

En fait, comme je n'y connais rien en code pur
ben c'est inquiétant pour un enseignant qui veut travailler ça avec ses élèves...
 
Top