int to char ?

Salut la communauté, Je cherche a joué un son wav avec mon arduino a partir d'un nombre en random. Mais apparement j'ai un problème de conversion, j'ai regardé dans mon arduino cookbook et google mais j'ai pas réussi a fixé le problème. Voici mon code:

long randNumber;

[...]

void loop(){  
buttonState = digitalRead(buttonPin); // check if the pushbutton is pressed.
  // if it is, the buttonState is HIGH:
  if (buttonState == HIGH) {    
    // nothing here
  }
  else {
       randNumber = random(16, 20); // fonction random
       tmrpcm.play(randNumber, ".wav"); { lcd.clear(); lcd.setCursor(1, 0); lcd.print('Random sound');} break;
  }

Ce que j'essaye de faire, c'est d'obtenir par exemple: tmrpcm.play("18.wav"); En erreur j'ai: invalid conversion from 'long int' to 'char*' Ligne surlignée: tmrpcm.play(randNumber, ".wav");... J'ai essayé plusieurs tentative du genre String myNumber = String(randNumber, ".wav"); mais ça passe pas non plus.

Cdlt

Salut,

il faut utiliser itoa() et strcat() http://www.cplusplus.com/reference/cstdlib/itoa/ http://www.cplusplus.com/reference/cstring/strcat/ :

char Buffer[10];
itoa(randNumber,Buffer,10);
strcat(Buffer,".wav");
tmrpcm.play(Buffer);

Sinon je pige pas la fin, en particulier :

lcd.print('Random sound');} break;

Rôle du break ? et les apostrophe sont pour les caractères seuls, il faut des guillements pour des chaînes.

Salut, bien vu pour le break et les guillmets. J'avais essayé un peu n'importe quoi en étant désespéré au niveau des guillmets. Pour le break, oui il sert a rien je l'avais pas vu celui la, j'ai c/c une ligne de mon code ou la il servais a quelque chose et j'ai oublier de le viré ici.. Sinon, concerant itoa() j'ai vu aussi ça sur google mais j'ai pas réussi a l'implémenté. pour tmrpcm.play(randNumber); c'est pas plutôt 'Buffer' qu'il faut mettre entre paranthése du coup pour tmrpcm ? ça a l'air de passé dans le moniteur serial. Merci

Xylitol: pour tmrpcm.play(randNumber); c'est pas plutôt 'Buffer' qu'il faut mettre entre paranthése du coup pour tmrpcm ? ça a l'air de passé dans le moniteur serial.

Exact, copier/coller trop vite ^^' j'ai corrigé mon précédent post