இந்த சுற்று திட்ட வரைபடம் ஒரு எஃப்எம் ரேடியோ ரிசீவர் தொகுதி சுற்றி கட்டப்பட்டது RDA5807M மைய ஐசியாக. இது முக்கியமாக செயல்படுத்துகிறது FM சிக்னல் வரவேற்பு, ஆடியோ வெளியீடு மற்றும் அடிப்படை கட்டுப்பாட்டு செயல்பாடுகள். கீழே உள்ள பகுப்பாய்வு பின்வருமாறு பிரிக்கப்பட்டுள்ளது முக்கிய கூறுகள், செயல்பாட்டு தொகுதிகள் மற்றும் முக்கிய வடிவமைப்பு அளவுருக்கள்.

1. முக்கிய கூறு மற்றும் பின் செயல்பாடுகள்
கோர் ஐசி: RDA5807M
தி RDA5807M இது FM ஒளிபரப்பு வரவேற்பை ஆதரிக்கும் மிகவும் ஒருங்கிணைந்த FM ரேடியோ ரிசீவர் IC ஆகும் மற்றும் I2C / SDIO தொடர் கட்டுப்பாடு. திட்ட வரைபடத்தின் அடிப்படையில், விசை ஊசிகளும் அவற்றின் இணைப்புகளும் கீழே சுருக்கப்பட்டுள்ளன:
| பின் பெயர் | விழா | இணைக்கப்பட்ட கூறு / நிகரம் | விளக்கம் |
|---|---|---|---|
| பாதை | வலது-சேனல் ஆடியோ வெளியீடு | நேரடி வெளியீடு (கூடுதல் கூறுகள் எதுவும் காட்டப்படவில்லை) | வலது-சேனல் அனலாக் ஆடியோவை வழங்குகிறது |
| லௌட் | இடது-சேனல் ஆடியோ வெளியீடு | நேரடி வெளியீடு (கூடுதல் கூறுகள் எதுவும் காட்டப்படவில்லை) | இடது-சேனல் அனலாக் ஆடியோவை வழங்குகிறது |
| ஆர்.சி.எல்.கே. | கடிகார சமிக்ஞை முள் | வெளிப்படையான வெளிப்புற இணைப்பு இல்லை (அநேகமாக உள் ஒத்திசைவு) | உள் கடிகார ஒத்திசைவு |
| ஒருதிசை | பவர் சப்ளை உள்ளீடு | 3V3 பவர் நெட் | 3.3V DC மின்சாரம் |
| நிலம் | தரையில் | உலகளாவிய GND நிகரம் | பொதுவான மின்சாரம் மற்றும் சமிக்ஞை தரை |
| எஸ்டிஐஓ | தொடர் தரவு I/O | பின் 3 (கட்டுப்பாட்டு சமிக்ஞை) | டியூனிங், ஒலியளவு கட்டுப்பாடு போன்றவற்றுக்கு MCU உடனான தொடர்பு. |
| எஸ்.சி.எல்.கே. | தொடர் கடிகாரம் | பின் 2 (கடிகார சமிக்ஞை) | SDIO தகவல்தொடர்புக்கான கடிகார சமிக்ஞை |
| எஃப்எம்ஐஎன் | FM சிக்னல் உள்ளீடு | முள் | ஆண்டெனாவிலிருந்து FM RF சிக்னலைப் பெறுகிறது |
| X1 | படிக அலையியற்றி உள்ளீடு | 32.768 kHz படிகம் | நிலையான அதிர்வெண் செயல்பாட்டிற்கான குறிப்பு கடிகாரத்தை வழங்குகிறது. |
2. செயல்பாட்டு தொகுதி முறிவு
2.1 பவர் சப்ளை மாட்யூல்
- உள்ளீடு மின்னழுத்தம்: 3.3V DC (ஒழுங்குபடுத்தப்பட்டது)
- வடிகட்டுதல் கூறுகள்:
- C8 (0.1µF), C9 (0.1µF): VDD மற்றும் GND இடையே உயர் அதிர்வெண் இணைப்பு நீக்கும் மின்தேக்கிகள், மின் இரைச்சலை அடக்குகின்றன.
- C10 (22µF): குறைந்த அதிர்வெண் வடிகட்டுதல் மற்றும் ஆற்றல் சேமிப்புக்கான மொத்த மின்னாற்பகுப்பு மின்தேக்கி
- C26 (0.1µF): மின் நிலைத்தன்மையை மேலும் மேம்படுத்த கூடுதல் இணைப்பு நீக்கம்
இந்த பல-நிலை வடிகட்டுதல் உறுதி செய்கிறது நிலையான மற்றும் குறைந்த இரைச்சல் மின் விநியோகம் FM ரிசீவர் ICக்கு.
2.2 FM சிக்னல் வரவேற்பு தொகுதி
- சமிக்ஞை உள்ளீடு:
- தி FMIN பின் (பின் 5) வெளிப்புற FM ஆண்டெனாவுடன் இணைக்கிறது (ஆண்டெனா உறுப்பு வரைபடத்தில் காட்டப்படவில்லை)
- FM ஒளிபரப்பு சிக்னல்களைப் பெறுகிறது. 87–108 மெகா ஹெர்ட்ஸ் இசைக்குழு
- படிக அலையியற்றி சுற்று:
- A 32.768 kHz படிகம் (X1) துல்லியமான குறிப்பு கடிகாரத்தை வழங்குகிறது.
- துல்லியமான FM ட்யூனிங்கை உறுதிசெய்து, நிலையத் தேர்வின் போது அதிர்வெண் சறுக்கலைத் தடுக்கிறது.
2.3 கட்டுப்பாடு மற்றும் தொடர்பு தொகுதி
- தொடர்பு இடைமுகம்:
- SDIO (தொடர் தரவு) + SCLK (சீரியல் கடிகாரம்)
- இணக்கமானது I2C அல்லது அதைப் போன்ற தொடர் தொடர்பு நெறிமுறைகள்
- வெளிப்புற MCU உடன் இடைமுகப்படுத்தப் பயன்படுகிறது (எ.கா., மைக்ரோகண்ட்ரோலர்)
- புல்-அப் ரெசிஸ்டர்கள்:
- R6 (10kΩ) SDIO க்கு
- R7 (10kΩ) SCLK-க்காக
- இரண்டும் இணைக்கப்பட்டுள்ளன 3V3, நிலையான தர்க்க நிலைகள் மற்றும் நம்பகமான தகவல்தொடர்பை உறுதி செய்தல்
2.4 ஆடியோ வெளியீட்டு தொகுதி
- ஆடியோ வெளியீடுகள்:
- பாதை: வலது-சேனல் அனலாக் ஆடியோ
- லௌட்: இடது-சேனல் அனலாக் ஆடியோ
- இந்த வெளியீடுகள் பின்வருமாறு இருக்கலாம்:
- நேரடியாக இணைக்கப்பட்டுள்ளது ஹெட்ஃபோன்கள்
- இணைக்கப்பட்டுவிட்டது பேச்சாளர்கள் (குறிப்பு: ஒரு வெளிப்புறம் ஆடியோ பெருக்கி அதிக சக்தி வெளியீட்டிற்கு தேவைப்படுகிறது)
2.5 துணை வடிகட்டுதல் மற்றும் பொருத்துதல் தொகுதி
- தூண்டிகள்:
- எல்1, எல்2 (100 என்ஹெச்): FM முன் முனையில் RF மின்மறுப்பு பொருத்தம் அல்லது உள்ளீட்டு வடிகட்டலுக்குப் பயன்படுத்தப்படலாம்.
- சமிக்ஞை பிரதிபலிப்பைக் குறைக்கவும் வரவேற்பு உணர்திறனை மேம்படுத்தவும் உதவுகிறது
- மின்தேக்கிகள்:
- C13 (100 pF), C14 (24 pF): தூண்டிகளுடன் இணைந்து பணியாற்றி ஒரு LC வடிகட்டி நெட்வொர்க்
- உயர் அதிர்வெண் குறுக்கீட்டை அடக்கி, FM சிக்னலை சுத்திகரிக்கவும்.
- அடிப்படை:
- பல GND இணைப்புகள் a ஐக் குறிக்கின்றன உலகளாவிய பொதுவான வடிவமைப்பு
- சத்தத்தைக் குறைத்து ஒட்டுமொத்த சுற்று நிலைத்தன்மையை மேம்படுத்துகிறது
3. முக்கிய அளவுருக்கள் மற்றும் வடிவமைப்பு அம்சங்கள்
- இயக்க மின்னழுத்தம்: 3.3V
- நிலை மாற்றம் இல்லாமல் பிரதான MCU களுடன் முழுமையாக இணக்கமானது
- படிக அதிர்வெண்: 32.768 கிலோஹெர்ட்ஸ்
- நிலையான நேரத்திற்கான தொழில்துறை-தரநிலை குறிப்பு அதிர்வெண்
- கட்டுப்பாட்டு முறை: SDIO + SCLK தொடர் இடைமுகம்
- எளிமைப்படுத்தப்பட்ட ரூட்டிங், இரண்டு கட்டுப்பாட்டு கோடுகள் மட்டுமே தேவை.
- வடிகட்டுதல் வடிவமைப்பு:
- பல மின் இணைப்பு நீக்க மின்தேக்கிகள் (0.1µF + 22µF)
- வலுவான இரைச்சல் நோய் எதிர்ப்பு சக்திக்காக RF முன் முனையில் LC வடிகட்டுதல்
- ஆடியோ வெளியீடு:
- இரட்டை-சேனல் அனலாக் ஆடியோ (ROUT / LOUT)
- ஸ்டீரியோ எஃப்எம் பிளேபேக்கை ஆதரிக்கிறது
4. பயன்பாட்டு காட்சிகள் மற்றும் விரிவாக்க பரிந்துரைகள்
வழக்கமான பயன்பாடுகள்
- எடுத்துச் செல்லக்கூடிய FM ரேடியோக்கள்
- எஃப்எம் ரேடியோ செயல்பாட்டுடன் கூடிய ஸ்மார்ட் ஸ்பீக்கர்கள்
- MCU-கட்டுப்படுத்தப்பட்ட FM பெறுதல் அமைப்புகள்
விரிவாக்கம் விருப்பங்கள்
- ஒரு பயன்படுத்த வெளிப்புற தொலைநோக்கி ஆண்டெனா அல்லது PCB ஆண்டெனா வரவேற்பு உணர்திறனை மேம்படுத்த
- ஒரு சேர்க்க ஆடியோ பவர் பெருக்கி (எ.கா., LM386) பெரிய ஸ்பீக்கர்களை இயக்குவதற்கு ROUT/LOUT க்கு
- MCU கட்டுப்பாடு வழியாக மேம்பட்ட அம்சங்களை இயக்கு:
- தானியங்கி நிலைய ஸ்கேனிங்
- முன்னமைக்கப்பட்ட சேனல் சேமிப்பிடம்
- டிஜிட்டல் ஒலியளவு கட்டுப்பாடு
5. வடிவமைப்பு குறிப்புகள் மற்றும் முன்னெச்சரிக்கைகள்
- சக்தி நிலைத்தன்மை:
- ஆடியோ சத்தம் அல்லது நிலையற்ற வரவேற்பைத் தவிர்க்க 3.3V விநியோகத்தில் குறைந்த சிற்றலையை உறுதி செய்யவும்.
- அடிப்படை:
- உறுதியான மற்றும் நிலையான தரைக் குறிப்பைப் பயன்படுத்தவும்.
- சத்தத்தைத் தடுக்க மின் தரைக்கும் ஆடியோ தரைக்கும் இடையிலான சாத்தியமான வேறுபாடுகளைத் தவிர்க்கவும்.
- மின்மறுப்பு பொருத்தம்:
- ஆண்டெனா இணைக்கப்பட்டுள்ளது எஃப்எம்ஐஎன் மின்மறுப்பு-பொருத்தமாக இருக்க வேண்டும் (பொதுவாக 50Ω) உகந்த வரவேற்புக்காக
- கூறு தேர்வு:
- ஒரு பயன்படுத்த உயர் துல்லியம் 32.768 kHz படிகம்
- போக்குவரத்தை விரும்புகிறேன் NP0 / C0G மின்தேக்கிகள் உயர்ந்த நிலைத்தன்மை காரணமாக RF மற்றும் நேரம் தொடர்பான கூறுகளுக்கு
ரேடியோ சுற்று நிரல் குறியீடு
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
//------------------------------------------------------------------------------




