Ανάλυση Σχηματικού Διαγράμματος Ραδιοφώνου με βάση το RDA5807M

Αυτό το σχηματικό διάγραμμα κυκλώματος είναι ένα Μονάδα δέκτη ραδιοφώνου FM χτισμένο γύρω από το RDA5807M ως το βασικό ολοκληρωμένο κύκλωμα (IC). Υλοποιεί κυρίως Λήψη σήματος FM, έξοδος ήχου και βασικές λειτουργίες ελέγχουΗ παρακάτω ανάλυση χωρίζεται σε βασικά στοιχεία, λειτουργικές ενότητες και βασικές παράμετροι σχεδιασμού.

Σχηματικό διάγραμμα ραδιοφώνου FM RDA5807M

1. Βασικά Στοιχεία και Λειτουργίες Pin

Ολοκληρωμένο κύκλωμα πυρήνα: RDA5807M

The RDA5807M είναι ένα ολοκληρωμένο κύκλωμα δέκτη ραδιοφώνου FM με υψηλή ενσωμάτωση που υποστηρίζει λήψη ραδιοφωνικών εκπομπών FM και Σειριακός έλεγχος I2C / SDIOΜε βάση το σχηματικό διάγραμμα, οι ακίδες κλειδιού και οι συνδέσεις τους συνοψίζονται παρακάτω:

Όνομα καρφιτσώματοςΛειτουργίαΣυνδεδεμένο στοιχείο / δίκτυοΠεριγραφή
ΚΑΤΑΤΡΟΠΩΣΗΈξοδος ήχου δεξιού καναλιούΆμεση έξοδος (δεν εμφανίζονται επιπλέον εξαρτήματα)Παρέχει αναλογικό ήχο δεξιού καναλιού
ΑΓΡΟΙΚΟΣΈξοδος ήχου αριστερού καναλιούΆμεση έξοδος (δεν εμφανίζονται επιπλέον εξαρτήματα)Παρέχει αναλογικό ήχο αριστερού καναλιού
RCLKΠείρος σήματος ρολογιούΔεν υπάρχει ρητή εξωτερική σύνδεση (πιθανός εσωτερικός συγχρονισμός)Εσωτερικός συγχρονισμός ρολογιού
VDDΤροφοδοσία ρεύματοςΔίκτυο ισχύος 3V3Τροφοδοσία DC 3.3V
GNDΈδαφοςΠαγκόσμιο δίκτυο GNDΚοινή τροφοδοσία και γείωση σήματος
SDIOΣειριακή Είσοδος/Έξοδος ΔεδομένωνΑκροδέκτης 3 (σήμα ελέγχου)Επικοινωνία με την MCU για συντονισμό, έλεγχο έντασης ήχου κ.λπ.
SCLKΣειριακό ρολόιΑκροδέκτης 2 (σήμα ρολογιού)Σήμα ρολογιού για επικοινωνία SDIO
FMINΕίσοδος σήματος FMΠιν. 5Λαμβάνει σήμα 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.


2.2 Μονάδα λήψης σήματος FM

  • Είσοδος σήματος:
    • The Ακροδέκτης FMIN (Ακροδέκτης 5) συνδέεται σε εξωτερική κεραία FM (το στοιχείο κεραίας δεν φαίνεται στο σχηματικό)
    • Λαμβάνει σήματα FM στο 87-108 MHz ζώνη
  • Κύκλωμα κρυσταλλικού ταλαντωτή:
    • A Κρύσταλλο 32.768 kHz (X1) παρέχει ένα ακριβές ρολόι αναφοράς
    • Εξασφαλίζει ακριβή συντονισμό FM και αποτρέπει την απόκλιση συχνότητας κατά την επιλογή σταθμού

2.3 Μονάδα Ελέγχου και Επικοινωνίας

  • Επικοινωνία:
    • SDIO (Σειριακά Δεδομένα) + SCLK (Σειριακό Ρολόι)
    • Συμβατό με I2C ή παρόμοια πρωτόκολλα σειριακής επικοινωνίας
    • Χρησιμοποιείται για διασύνδεση με εξωτερικό MCU (π.χ. μικροελεγκτή)
  • Αντιστάσεις έλξης:
    • R6 (10kΩ) για SDIO
    • R7 (10kΩ) για το SCLK
    • Και τα δύο συνδέονται με 3V3, εξασφαλίζοντας σταθερά λογικά επίπεδα και αξιόπιστη επικοινωνία

2.4 Μονάδα εξόδου ήχου

  • Έξοδοι ήχου:
    • ΗΤΤΑ: Αναλογικός ήχος δεξιού καναλιού
    • ΑΓΡΟΙΚΟΣ: Αναλογικός ήχος αριστερού καναλιού
  • Αυτές οι έξοδοι μπορούν να είναι:
    • Συνδέθηκε απευθείας με ακουστικά
    • Συνδεδεμένο με Ηχεία (σημείωση: ένας εξωτερικός ενισχυτή ήχου απαιτείται για υψηλότερη ισχύ εξόδου)

2.5 Βοηθητική Μονάδα Φιλτραρίσματος και Αντιστοίχισης

  • Πηνία:
    • L1, L2 (100 nH): Πιθανότατα χρησιμοποιείται για αντιστοίχιση σύνθετης αντίστασης RF ή φιλτράρισμα εισόδου στο μπροστινό άκρο των FM
    • Βοηθά στη μείωση της αντανάκλασης του σήματος και στη βελτίωση της ευαισθησίας λήψης
  • πυκνωτές:
    • C13 (100 pF), C14 (24 pF): Εργαστείτε με επαγωγείς για να σχηματίσετε ένα Δίκτυο φίλτρων LC
    • Καταστέλλει τις παρεμβολές υψηλής συχνότητας και καθαρίζει το σήμα FM
  • Γείωση:
    • Πολλαπλές συνδέσεις GND υποδεικνύουν ένα παγκόσμιος σχεδιασμός κοινού εδάφους
    • Μειώνει τον θόρυβο και βελτιώνει τη συνολική σταθερότητα του κυκλώματος

3. Βασικές παράμετροι και χαρακτηριστικά σχεδιασμού

  • Τάση λειτουργίας: 3.3V
    • Πλήρως συμβατό με τα mainstream MCU χωρίς μετατόπιση επιπέδου
  • Συχνότητα κρυστάλλου: 32.768 kHz
    • Συχνότητα αναφοράς βιομηχανικού προτύπου για σταθερό χρονισμό
  • Μέθοδος ελέγχου: Σειριακή διεπαφή SDIO + SCLK
    • Απλοποιημένη δρομολόγηση, απαιτούνται μόνο δύο γραμμές ελέγχου
  • Σχεδιασμός φιλτραρίσματος:
    • Πολλαπλοί πυκνωτές αποσύνδεσης ισχύος (0.1µF + 22µF)
    • Φιλτράρισμα LC στο μπροστινό μέρος RF για ισχυρή ανοσία στον θόρυβο
  • Έξοδος ήχου:
    • Αναλογικός ήχος διπλού καναλιού (ROUT / LOUT)
    • Υποστηρίζει στερεοφωνική αναπαραγωγή FM

4. Σενάρια εφαρμογής και προτάσεις επέκτασης

τυπικές Εφαρμογές

  • Φορητά ραδιόφωνα FM
  • Έξυπνα ηχεία με λειτουργία ραδιοφώνου FM
  • Συστήματα δέκτη FM ελεγχόμενα από MCU

Επιλογές επέκτασης

  • Χρησιμοποιήστε ένα εξωτερική τηλεσκοπική κεραία ή κεραία PCB για βελτίωση της ευαισθησίας λήψης
  • Προσθέστε ένα audio ενισχυτή (π.χ., LM386) σε ROUT/LOUT για την οδήγηση μεγαλύτερων ηχείων
  • Ενεργοποίηση προηγμένων λειτουργιών μέσω ελέγχου MCU:
    • Αυτόματη σάρωση σταθμών
    • Αποθήκευση προκαθορισμένων καναλιών
    • Ψηφιακός έλεγχος έντασης

5. Σημειώσεις σχεδιασμού και προφυλάξεις

  • Σταθερότητα ισχύος:
    • Εξασφαλίστε χαμηλή κυμάτωση στην τροφοδοσία 3.3V για να αποφύγετε θόρυβο ήχου ή ασταθή λήψη
  • Γείωση:
    • Χρησιμοποιήστε μια σταθερή και συνεπή αναφορά εδάφους
    • Αποφύγετε τις πιθανές διαφορές μεταξύ της γείωσης ρεύματος και της γείωσης ήχου για να αποτρέψετε τον θόρυβο
  • Αντιστοίχιση σύνθετης αντίστασης:
    • Η κεραία που είναι συνδεδεμένη με FMIN θα πρέπει να είναι συμβατή με την αντίσταση (συνήθως 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
//------------------------------------------------------------------------------

Αφήστε ένα σχόλιο

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται *