Héhéhéhé .
Donc quand je passe à 32Mhz , quelques bug .
Quand j'enlève la pause de 30 ms quelques bug .
Donc je reste comme ca .
@PieM :
Ben en fait le programme de la télécommande est deja complet, les fonctions demandées :
20M2 gérant les infos qui devront etre envoyées par RF
- 3 lecture analogiques , correspondant au joystick ( 1 joystick haut/bas et droite/gauche , et l'autre joystick droite/gauche seulement
- 1 lecture TOR d'un BP permettant de faire bouger la caméra et seulement la caméra , coupant le moteur de la voiture ( la camera pourra pivoter seulement quand la voiture sera l'arrêt)
- 1 lecture TOR d'un interrupteur a levier , permettant d'activer l'emetteur vidéo se trouvant sur la voiture .
14M2 gérant les infos de bord
- 1 pilote de led pour afficher l'état de la batterie
- 1 lecture analogique pour lire la tension batterie
- 1 sortie Beep, pour signaler des baisses de niveau et/ou la fin de la batterie .
Voila la télécommande est donc bien finie , il me reste donc a implémenter le programme du 14M2 pour les leds ...... voir si ca ne perturbe pas .
Ensuite la voiture .
Le 14M2 de réception , bien lui du coup rien de plus simple , il est déjà finis . je recoit RFin et j'ecrit dans le scratchpad . Rien a rajouter
Je parlais de programme final , le 20X2 qui lui va gérer la voiture . donc aucun problème de timing sur celui ci, car il est indépendant.
Le fait de passer de 90ms à 30ms alors que le mini demandé par le TX est 55ms me laisse très dubitatif sur la suite.
Moi aussi, mais cela peut , peut-être s'expliquer . Je me souviens au début je faisais sans cette pause ; ca fonctionne bien , car comme tu me l'as expliqué le RFin attend, donc peut être que le premier envoie est mangé mais pas le deuxiéme . Quand je met aucune pause, ca fonctionne impeccable , sauf dans un cas précis . quand l'interrupteur est à 1 , j'attends que le Tx se désactive, et quand je passe l'inter à 0 , il ne le prend pas en compte ; c'est le seul bug que j' ai pus constater sans la pause ;
Mais je garde ta remarque sous le coude pour la suite, car moi aussi je comprends pas pourquoi . Mais aussi je comprends pas pourquoi a 90ms ca deconne ; ca devrait etre moins réactif, mais ca devrait fonctionner pourtant non ...... .
Programme 20M2 Emetteur :
Code:
#PICAXE 20M2
'#################################################################################
'######################## Programme Emetteur V4.0 ###########################
'#################################################################################
'########################## configuration ################################
' B_ pour Broche, c'est le nom ou est branché le composant
' E_ pour Etat, c'est la valeur de la broche
' V_ pour variable, ou est enregistrée l'Etat de la broche
'b0 à b7 pour les infos envoyés
'b8 flag_EN
'b9 V_TOR
symbol B_BP = PinB.5
symbol B_EN = B.6
symbol B_DONNEE = B.7
symbol B_Inter = PinC.1
symbol flag_EN = b8
symbol V_TOR = b9
symbol V_Joystick = W13
dirsB = %11000000 'declare B.7 et B.6 en sortie
'########################## Initialisation ################################
setfreq m4
b0 = V_TOR
'#################################################################################
'########################## Programme Principal ############################
'#################################################################################
do
readadc C.3,b2 ' potar Av/ar Vhl/cam PM : de 166 à 168
readadc B.0,b4 ' Potar Dr/Ga Vhl PM : de 103 à 105
readadc C.7,b6 ' Potar Dr/Ga cam PM : de 103 à 105
bit0 = B_Inter ' Activation de l'emetteur Vidéo
bit1 = B_BP ' Activation du mouvement camera
V_Joystick = b2+b4+b6 ' Calcul de la position des joysticks ( PM moyen 375 +/4)
if V_Joystick < 372 or V_Joystick > 378 or V_TOR <> b0 then ' on verifie qu'une commande est appuyée ou un changement d'etat d'un TOR
if flag_EN = 0 then ' A chaque nouvelle activation on marque une pause de 30ms pour stabilisé le Tx
high B_EN
pause 30 ' pause de 30ms
flag_EN = 1 ' Met le flag d'activation à 1
end if
time = 0 ' remise à zéro du timer
else
if time > 1 then ' Si les commandes sont au PM, pendant plus de 1s(donc 2s) on eteind
low B_EN
flag_EN = 0 ' Raz du flag
end if
end if
rfout B_DONNEE,(b0,b1,b2,b3,b4,b5,b6,b7) 'envoi des données par RF
V_TOR = b0 ' Sauvegarde des TOR pour comparaison
loop
14M2 réception:
Code:
#PICAXE 14M2
'#################################################################################
'########################## Programme Recepteur ############################
'#################################################################################
'######################## Configuration ########################
dirC.0=0 'declare C.0 en entrée DATA
inputtype %0000000100000000 'met la broche C.0 en mode TDS
'######################## Initialisation ########################
setfreq m4
hi2csetup i2cmaster, %10100000, i2cfast_4, i2cbyte ' met le 14M2 en mode maitre
'####################################################################################################
' Programme Principal
'####################################################################################################
do
RFin C.0,b0,b1,b2,b3,b4,b5,b6,b7 ' Enregistre les données du RX
hi2cout 0,(b0,b1,b2,b3,b4,b5,b6,b7)
loop