Su'esu'ega o le Ata Fa'ata'ita'i o le Leitio e Fa'avae i luga o le RDA5807M

O lenei Ata Fa'ata'ita'i o le matagaluega o se Vaega e talia ai leitio FM fausia faataamilo i le RDA5807M o le IC autu. E faʻatinoina tele Mauaina o faailoilo FM, fa'asalalauga leo, ma galuega fa'avae o le pulea. O le auiliiliga o loʻo i lalo ua vaevaeina i vaega autū, vaega fa'atino, ma fa'asologa autū o le mamanu.

Ata fa'ata'ita'i o le FM Radio RDA5807M

1. Vaega Autū ma Galuega Faatino a le Pine

IC Autu: RDA5807M

le RDA5807M o se IC e maua ai leitio FM ua matuā tu'ufa'atasia e lagolagoina ai le mauaina o fa'asalalauga FM ma Pulea fa'asologa o le I2C / SDIO. E faʻavae i luga o le ata faʻatusa, o pine autu ma a latou fesoʻotaʻiga o loʻo aoteleina i lalo:

Pin Igoagaluega tauaveVaega Feso'ota'i / Upegafaʻamatalaga
FA'AVAEFa'asalalauga leo i le itu taumatauFa'asalalauga tuusa'o (leai ni vaega fa'aopoopo o lo'o fa'aalia)E tu'uina atu le leo analog i le itu taumatau
LOUTFa'asalalauga leo agavaleFa'asalalauga tuusa'o (leai ni vaega fa'aopoopo o lo'o fa'aalia)E tu'uina atu le leo analog i le itu tauagavale
RCLKPine faailoilo a le uatiLeai se feso'ota'iga tuusa'o mai fafo (atonu o le feso'ota'iga i totonu)Feso'ota'iga i totonu o le uati
VDDTuuina atu o le eletiseUpega eletise 3V33.3V DC punaoa eletise
GNDeleʻeleTupe maua mai le GND i le lalolagi atoaEleele eletise ma faailoilo masani
FALETUAFa'asologa o fa'amatalaga I/OPine 3 (fa'ailoilo pulea)Fesootaiga ma le MCU mo le fa'atulagaina, puleaina o le leo, ma isi mea faapena.
SCLKUati fa'asologaPine 2 (fa'ailoilo o le uati)Fa'ailo uati mo feso'ota'iga SDIO
FMINFa'ailoga fa'ailoga FMPine 5Mauaina le faailoilo FM RF mai le antenna
X1Oscillator tioata32.768 kHz tioataTu'uina atu le uati fa'asino mo le fa'agaioiga mautu o le televave

2. Fa'avasegaga o le Module Fa'atino

2.1 Power Supply Module

  • Voltage Voltage: 3.3V DC (pulea)
  • Filifiliga Vaega:
    • C8 (0.1µF), C9 (0.1µF): O capacitors e fa'aeseese ai le tele o taimi i le va o le VDD ma le GND, e taofia ai le pisa o le eletise
    • C10 (22µF): Kapasitora eletise tele mo le fa'amama maualalo ma le teuina o le malosi
    • C26 (0.1µF): Fa'aopoopoga o le decoupling e fa'aleleia atili ai le mautu o le eletise

O lenei fa'amamāina e tele-vaega e fa'amautinoa ai tu'uina atu o le eletise mautu ma maualalo le pisa i le IC o le masini e talia ai le FM.


2.2 Vaega e Maua ai Fa'ailoilo FM

  • Faʻailoga I totonu:
    • le Pine FMIN (Pin 5) feso'ota'i atu i se antenna FM i fafo (e le'o fa'aalia le elemene antenna i le ata)
    • Mauaina fa'ailoilo fa'asalalauga FM i totonu o le 87–108 MHz faʻailoga
  • Matagaluega o le Crystal Oscillator:
    • A 32.768 kHz tioata (X1) e maua ai se uati fa'asino sa'o
    • Mautinoa le sa'o o le fa'atulagaina o le FM ma puipuia ai le fesuia'iga o le televave i le taimi e filifilia ai le nofoaga

2.3 Module o le Pulea ma Fesootaiga

  • Ofisa o Fesootaiga:
    • SDIO (Fa'amaumauga Fa'asolosolo) + SCLK (Uati Fa'asolosolo)
    • talafeagai ma I2C po'o ni fa'asologa feso'ota'iga fa'asolosolo tutusa
    • Fa'aaogaina e feso'ota'i ai ma se MCU i fafo (e pei o le microcontroller)
  • Tete'e Fa'aoso i luga:
    • R6 (10kΩ) mo le SDIO
    • R7 (10kΩ) mo SCLK
    • E fesoʻotaʻi uma i 3V3, fa'amautinoaina o tulaga mautu o le mafaufau ma feso'ota'iga fa'atuatuaina

2.4 Vaega o le Fa'asalalauga Leo

  • Galuega Faʻalogo leo:
    • AUALA: Leo fa'a-ala taumatau
    • LOUT: Leo fa'a-ala agavale
  • O nei taunuuga e mafai ona:
    • Feso'ota'i sa'o i headphones
    • Fesoʻotaʻi i failauga (fa'amatalaga: o se fa'asalalauga mai fafo fa'atele leo e manaʻomia mo le maualuga o le malosiaga e maua mai ai)

2.5 Vaega Fesoasoani mo le Fa'amamāina ma le Fa'afetauiina

  • Inductors:
    • L1, L2 (100 nH): E foliga mai e fa'aaogaina mo le fetaui lelei o le RF impedance po'o le fa'amama o le input i le pito i luma o le FM.
    • Fesoasoani e fa'aitiitia ai le atagia mai o faailoilo ma fa'aleleia atili ai le maaleale o le mauaina o fa'ailo
  • Pusa:
    • C13 (100 pF), C14 (24 pF): Galulue fa'atasi ma inductors e fausia ai se LC faamama feso'ota'iga
    • Taofiofia le fa'alavelave fa'atelevave ma fa'amamā le fa'ailo FM
  • Faʻavaeina:
    • O le tele o feso'ota'iga GND e fa'ailoa mai ai se mamanu o le lalolagi atoa
    • Fa'aitiitia le pisa ma fa'aleleia atili le mautu o le matagaluega atoa

3. Fa'atulagaga Autū ma Vaega o le Fuafuaga

  • Voltage Operating: 3.3V
    • E fetaui lelei ma MCU masani e aunoa ma le suia o le tulaga
  • Taimi masani o le Crystal: 32.768 kHz
    • Fa'asinomaga masani fa'apisinisi mo le taimi mautu
  • Pulea Faiga: Feso'ota'iga fa'asolosolo SDIO + SCLK
    • Fa'afaigofieina o le fa'aogaina o auala, e na'o laina pulea e lua e mana'omia
  • Fuafuaga Fa'amama:
    • Tele o capacitors e fa'aesea ai le malosiaga (0.1µF + 22µF)
    • Fa'amama LC i le pito i luma o le RF mo le puipuiga malosi mai le pisa
  • Galuega Faatino leo:
    • Leo fa'a-ala lua (ROUT / LOUT)
    • Lagolagoina le ta'alo FM stereo

4. Tulaga o Talosaga ma Fautuaga mo le Faʻalauteleina

Talosaga masani

  • Leitio FM feavea'i
  • Sipika atamai ma le aoga o le leitio FM
  • Faiga e talia ai le FM e pulea e le MCU

Faʻaopoopoga Filifiliga

  • Faaaoga se antenna telescopic fafo po'o le antenna PCB e fa'aleleia atili ai le lagona o le taliaina
  • Faʻaopopo se leo mea faʻamau leo (e pei o le LM386) i le ROUT/LOUT mo le fa'agaoioia o sipika tetele
  • Fa'agaoioia foliga fa'apitoa e ala i le pulea o le MCU:
    • Otometi le su'eina o nofoaga
    • Teuina o alalaupapa ua uma ona setiina
    • Faatonutonuina o numera numera

5. Fa'amatalaga ma Lapata'iga mo le Fuafuaga

  • Malosiaga mautu:
    • Ia mautinoa e maualalo le ripple i luga o le sapalai 3.3V e aloese ai mai le pisa o leo po'o le le mautu o le mauaina o le leo.
  • Faʻavaeina:
    • Faaaoga se faasinomaga mautu ma tutusa i le eleele
    • 'Alo'ese mai eseesega e ono tula'i mai i le va o le eletise ma le leo e puipuia ai le pisa
  • Fa'afetauiga fa'aletonu:
    • O le antenna e fesoʻotaʻi i ai FMIN e tatau ona fetaui lelei ma le impedance (e masani lava 50Ω) mo le taliaina lelei
  • Filifiliga Vaega:
    • Faaaoga se tioata sa'o maualuga 32.768 kHz
    • Fiafia Kapasitora NP0 / C0G mo RF ma vaega e fesoʻotaʻi ma le taimi ona o le mautu sili atu

Fa'ailoga o le polokalame matagaluega leitio

RDA5807.H
/*
**==============================================================================
** RDA5807.H:         
**
**  Description:
**
**==============================================================================
*/
#ifndef __RDA5807__
#define __RDA5807__
//------------------------------------------------------------------------------

#ifdef RDA5807_GLOBALS
   #define RDA5807_EXT
#else
   #define RDA5807_EXT extern
#endif // RDA5807_GLOBALS
//------------------------------------------------------------------------------
//==============================================================================

void RDA5807Init(void);

//------------------------------------------------------------------------------

RDA5807_EXT uint16_t g_nRDA5807Channel;

//------------------------------------------------------------------------------
void RDA5807Setup(void);
void RDA5807I2CWrite(uint8_t * pucData, int nLength);
void RDA5807SetChannel(float freq);



//==============================================================================
//             END OF THE FILE : RDA5807.H
//------------------------------------------------------------------------------
#endif // __RDA5807__

/*
**==============================================================================
** RDA5807.C:            
**
**==============================================================================
*/

//------------------------------------------------------------------------------
#include "stm32f0xx_hal.h"
#include "stm32f0xxa.h"

#define RDA5807_GLOBALS        1              // Define the global variables
#include "RDA5807.H"

//------------------------------------------------------------------------------
#define RDA5807_BOOT_LENGTH     12
uint8_t RDA5807_boot_config[] = {
    0xc1, 0x03,                             // Register 0x2
    0x00, 0x00,                             // Register 0x3
    0x0a, 0x00,                             // Register 0x4
    0x88, 0x0f,                             // Register 0x5
    0x00, 0x00,                             // Register 0x6
    0x42, 0x02,                             // Register 0x7
};


//------------------------------------------------------------------------------
#define RDA5807_TUNE_CONFIG_LENGTH  4

uint8_t RDA5807_tune_config[] = {
    0xc0, 0x01,                             // Register 2
    0x00, 0x00,                             // Reigster 3
};

void RDA5807SetTuneConfig(uint16_t channel) {
    RDA5807_tune_config[2] = (uint8_t)(channel >> 2);
    RDA5807_tune_config[3] = (uint8_t)(((channel & 0x3) << 6) | 0x10);
}

//------------------------------------------------------------------------------

void RDA5807Init(void) {

/* Assumin band starts at 87.0MHz(per setting below)
 * and channel spaceing of 100kHz(0.1Mhz)(per settings below)
 * then channel can be derive as floowins:
 * channel = (<desired freq in MHz> - 87.0) / 0.1
 *
 * which is ave as:
 * <10x desired ferq in MHz> - 870
*/
    g_nRDA5807Channel = 6;
    RDA5807Setup();
}

//------------------------------------------------------------------------------
extern I2C_HandleTypeDef hi2c1;
void RDA5807I2CWrite(uint8_t * pucData, int nLength) {
    HAL_I2C_Master_Transmit(&hi2c1, 0x20, pucData, nLength, 10);
}

//------------------------------------------------------------------------------
void RDA5807Setup(void) {
    RDA5807I2CWrite(RDA5807_boot_config, RDA5807_BOOT_LENGTH);
    RDA5807SetTuneConfig(g_nRDA5807Channel);
    RDA5807I2CWrite(RDA5807_tune_config, RDA5807_TUNE_CONFIG_LENGTH);
}


void RDA5807SetChannel(float freq) {
    g_nRDA5807Channel = (int)((freq - 87.0) * 10.0 + 0.5);
    RDA5807SetTuneConfig(g_nRDA5807Channel);
    RDA5807I2CWrite(RDA5807_tune_config, RDA5807_TUNE_CONFIG_LENGTH);
}

//==============================================================================
//                END OF THE FILE : RDA5807.C
//------------------------------------------------------------------------------

Tuua se Faamatalaga

o le a le lomia lou tuatusi imeli. fanua manaomia ua faailogaina *