Jaantuska jaantuska wareeggan waa Module-ka qaataha raadiyaha FM la dhisay hareeraha RDA5807M sida IC-ga asaasiga ah. Waxay inta badan fulisaa Soo dhaweynta calaamadaha FM, soo saarista maqalka, iyo hawlaha xakamaynta aasaasiga ahFalanqaynta hoose waxay u qaybsan tahay qaybaha asaasiga ah, modules-yada shaqada, iyo xuduudaha naqshadaynta muhiimka ah.

1. Qaybaha Muhiimka ah iyo Hawlaha Biinanka
IC-ga Aasaasiga ah: RDA5807M
The RDA5807M waa qalab casri ah oo loogu talagalay soo dhaweeyaha raadiyaha FM-ka oo si heer sare ah isugu xiran oo taageera soo dhaweeyaha baahinta FM-ka iyo Xakamaynta taxanaha ah ee I2C / SDIOIyada oo ku saleysan jaantuska, biinanka muhiimka ah iyo xiriirkooda ayaa lagu soo koobay hoos:
| Magaca Pin | function | Qaybta/Shabaqa Isku Xiran | Description |
|---|---|---|---|
| JIDKA | Soo saarista maqalka kanaalka midig | Wax soo saar toos ah (ma jiraan qaybo dheeraad ah oo la muujiyay) | Waxay bixisaa codka analoogga ah ee kanaalka midig |
| LOUT | Soo saarista maqalka kanaalka bidix | Wax soo saar toos ah (ma jiraan qaybo dheeraad ah oo la muujiyay) | Waxay bixisaa maqal analoog ah oo bidix ah |
| RCLK | Biinka calaamadda saacadda | Ma jiro xiriir dibadeed oo cad (suurtogalnimada isku-xidhka gudaha) | Iswaafajinta saacad gudaha ah |
| VDD | Talada tamarta | Shabaq koronto 3V3 ah | 3.3V DC siinta korantada |
| GND | Ground | Shabakadda GND ee Caalamiga ah | Awoodda guud iyo dhulka calaamadda |
| SDIO | Xogta taxanaha ah I/O | Biin 3 (calaamadda xakamaynta) | Isgaarsiinta MCU si loo hagaajiyo, loo xakameeyo mugga, iwm. |
| SCLK | Saacad Taxane ah | Biin 2 (calaamadda saacadda) | Calaamadda saacadda ee isgaarsiinta SDIO |
| FMIN | Gelinta calaamadda FM | Biin 5 | Wuxuu ka helaa calaamadda FM RF anteenada |
| X1 | Aqbalka oscillator-ka ee kiristaalka ah | 32.768 kHz kiristaal | Waxay bixisaa saacad tixraac ah oo loogu talagalay hawlgalka soo noqnoqoshada deggan |
2. Kala-goynta Module-ka Shaqada
2.1 Module Supply Power
- Danab Input: 3.3V DC (la habeeyey)
- Qaybaha Shaandhaynta:
- C8 (0.1µF), C9 (0.1µF): Kaabayaasha kala-furfurka ee soo noqnoqda badan ee u dhexeeya VDD iyo GND, oo xakameynaya buuqa awoodda
- C10 (22µF): Kaaliyaha elektaroonigga badan ee loogu talagalay shaandhaynta soo noqnoqoshada hoose iyo kaydinta tamarta
- C26 (0.1µF): Kala furfurid dheeraad ah si loo sii wanaajiyo xasilloonida awoodda
Shaandhayntan marxalado badan leh waxay hubinaysaa Bixinta korontada oo deggan oo buuq yar leh ku socota qalabka FM-ka ee IC-ga.
2.2 Module-ka Soo Dhaweynta Calaamadaha FM
- Gelitaanka Signal:
- The Biinanka FMIN (Biinanka 5) waxay ku xirtaa anteeno FM dibadeed (walax anteeno ah oo aan lagu muujin shaxda)
- Waxay heshaa calaamadaha baahinta FM-ka gudaha 87-108 MHz band
- Wareegga Oscillator-ka Crystal:
- A 32.768 kHz kiristaal (X1) waxay bixisaa saacad tixraac sax ah
- Hubinta hagaajinta saxda ah ee FM-ka waxayna ka hortagtaa qulqulka soo noqnoqda inta lagu jiro xulashada saldhigga
2.3 Qaybta Xakamaynta iyo Isgaarsiinta
- Xiriirka isgaadhsiinta:
- SDIO (Xog Taxane ah) + SCLK (Saacadaha Taxanaha ah)
- jaanqaadaan I2C ama hab-maamuusyada isgaarsiinta taxanaha ah ee la midka ah
- Waxaa loo isticmaalaa in lagu xidho MCU dibadeed (tusaale ahaan, microcontroller)
- Iska caabbinta Jiid-soo-jiidashada:
- R6 (10kΩ) ee SDIO
- R7 (10kΩ) ee SCLK
- Labaduba waxay ku xiran yihiin 3V3, hubinta heerarka macquulka ah ee deggan iyo isgaarsiinta la isku halleyn karo
2.4 Module-ka Soo-saarka Maqalka
- Soo saarida Maqalka:
- JIDKA: Maqalka analoogga ah ee kanaalka midig
- LOUT: Maqalka analoogga ah ee kanaalka bidix
- Waxsoosaarku wuxuu noqon karaa:
- Si toos ah ugu xiran headphones
- Ku xiran ku hadla (fiiro gaar ah: mid dibadda ah cod-weyneeye waxaa loo baahan yahay si loo helo tamar sare)
2.5 Qaybta Shaandhaynta iyo Isku-dubaridka Kaaliyaha ah
- Inductors:
- L1, L2 (100 nH): Waxay u badan tahay in loo isticmaalo isbarbardhigga RF impedance ama shaandhaynta gelinta ee dhamaadka hore ee FM
- Waxay kaa caawisaa yaraynta milicsiga calaamadaha iyo hagaajinta xasaasiyadda soo dhawaynta
- Capacitors:
- C13 (100 pF), C14 (24 pF): La shaqee inductor-yada si aad u sameyso Shabakadda shaandhada LC
- Jooji faragelinta soo noqnoqoshada sare oo nadiifi calaamadda FM
- Goobidda:
- Xidhiidho badan oo GND ah ayaa tilmaamaya naqshad caalami ah oo guud
- Waxay yareysaa buuqa waxayna hagaajisaa xasilloonida guud ee wareegga
3. Qodobbada Muhiimka ah iyo Astaamaha Naqshadeynta
- Voltage Operating: 3.3V
- Si buuxda ula jaanqaadi kara MCU-yada caadiga ah iyada oo aan la beddelin heerka
- Soo noqnoqoshada Crystal: 32.768 Khz
- Soo noqnoqoshada tixraaca heerka warshadaha ee waqtiga xasilloon
- Habka Xakamaynta: Isku-xirka taxanaha ah ee SDIO + SCLK
- Jid-socod fudud, laba khad oo kontarool oo keliya ayaa loo baahan yahay
- Naqshadeynta Shaandhaynta:
- Kaabsadeyaal badan oo kala furfuraya awoodda (0.1µF + 22µF)
- Shaandhaynta LC ee dhamaadka hore ee RF si loo helo difaac adag oo buuq ah
- Output Audio:
- Codka analogga ah ee laba-kanaal ah (ROUT / LOUT)
- Waxay taageertaa dib u ciyaarista stereo FM
4. Xaaladaha Codsiga iyo Talooyinka Ballaarinta
Codsiyada caadiga ah
- Raadiyeyaasha FM-ka ee la qaadi karo
- Sameecadaha caqliga leh oo leh shaqeynta raadiyaha FM
- Nidaamyada qaataha FM-ka ee ay maamusho MCU
Fursadaha Ballaadhinta
- Adeegso a Anteeno telescopic dibadeed ama anteeno PCB ah si loo hagaajiyo xasaasiyadda soo dhawaynta
- Kudar amplifier awood maqal ah (tusaale ahaan, LM386) ilaa ROUT/LOUT si loo wado sameecado waaweyn
- Karti u yeelo sifooyinka horumarsan iyada oo loo marayo xakamaynta MCU:
- Iskaan-gareynta saldhigga otomaatiga ah
- Kaydinta kanaalka ee hore loo sii dejiyay
- Xakamaynta mugga dhijitaalka ah
5. Qoraallada Naqshadeynta iyo Taxaddarrada
- Dejinta Awoodda:
- Hubi in gariirku hooseeyo oo ku yaal saadka 3.3V si looga fogaado buuqa codka ama soo dhawaynta aan degganayn
- Goobidda:
- Isticmaal tixraac dhul oo adag oo joogto ah
- Iska ilaali kala duwanaanshaha suurtagalka ah ee u dhexeeya dhulka korontada iyo dhulka maqalka si aad uga hortagto buuqa
- Iswaafajinta Culayska:
- Anteenada ku xiran FMIN waa inay noqotaa mid la jaanqaadaysa impedance (badanaa 50Ω) si loo helo soo dhaweyn wanaagsan
- Xulashada Qaybaha:
- Isticmaal a Saxnaan sare 32.768 kHz kiristaal
- Ka doorbid Kondenser-yada NP0 / C0G qaybaha RF iyo waqtiga la xiriira sababtoo ah xasillooni sare
Koodhka barnaamijka wareegga raadiyaha
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
//------------------------------------------------------------------------------




