Étape 5: Conclusion
Notez que j’ai effectivement utilisé un Conseil Freetronics USB Droid, c’était ce que j’avais à portée de main, et non un Uno, mais un Uno fonctionnera très bien.Sur la partie droite de la carte de dérivation (en haut dans l’image ci-dessus), j’ai attaché une prise 3,5 mm sur un canal et GND et piquer un bout de fil dans la prise ANT d’agir comme une antenne.
L’esquisse est très simple, toute l’action réelle est dans la fonction setFrequency().
Dans la « boucle » l’analogique lecture du pot est converti dans la gamme de fréquences et ensuite arrondie avec 1 décimale pour le rendre plus facile à régler.
La sortie du module requiert l’amplification. Un dock iPod avec entrée auxiliaire fonctionne parfaitement et j’ai été surpris par la qualité du son, compte tenu du prix.
Pour un projet similaire mais plus avancé, jetez un oeil sur : http://www.electronicsblog.net/arduino-fm-receiver-with-tea5767/ j’ai trouvé ceci est très utile lorsque la réalisation de ce projet.
Voici l’esquisse. Remarque vous devez Arduino 1.0
#include < Wire.h >
unsigned char frequencyH = 0 ;
unsigned char frequencyL = 0 ;
unsigned int frequencyB ;
double fréquence = 0 ;
void setup()
{
Wire.Begin() ;
fréquence = 93,0 ; à partir de fréquence
setFrequency() ;
Serial.Begin(9600) ;
}
void loop()
{
lecture int = analogRead(0) ;
fréquence = carte ((float) lecture, 0,0, 1024.0, 87,5 108,0) ;
fréquence = ((double) lecture * (87,5-108,0)) / 1024.0 + 87,5 ;
fréquence = ((int)(frequency * 10)) / 10.0 ;
setFrequency() ;
Serial.println(Frequency) ;
}
Sub setFrequency()
{
frequencyB = 4 * (fréquence * 1000000 + 225000) / 32768 ;
frequencyH = frequencyB >> 8 ;
frequencyL = frequencyB & 0XFF ;
Delay(100) ;
Wire.beginTransmission(0x60) ;
Wire.Write(frequencyH) ;
Wire.Write(frequencyL) ;
Wire.Write(0xB0) ;
Wire.Write(0x10) ;
Wire.Write((Byte)0x00) ;
Wire.endTransmission() ;
Delay(100) ;
}