Este diagrama esquemático del circuito es un Módulo receptor de radio FM construido alrededor de la RDA5807M como el circuito integrado principal. Implementa principalmente Recepción de señal FM, salida de audio y funciones de control básicasEl análisis a continuación se divide en componentes principales, módulos funcionales y parámetros de diseño clave.

1. Funciones de los componentes principales y los pines
Circuito integrado central: RDA5807M
El RDA5807M es un IC receptor de radio FM altamente integrado que admite la recepción de transmisiones FM y Control en serie I2C/SDIOSegún el esquema, los pines de la llave y sus conexiones se resumen a continuación:
| Nombre pin | Función | Componente conectado / Red | Descripción |
|---|---|---|---|
| DERROTA | Salida de audio del canal derecho | Salida directa (no se muestran componentes adicionales) | Proporciona audio analógico de canal derecho |
| PATÁN | Salida de audio del canal izquierdo | Salida directa (no se muestran componentes adicionales) | Proporciona audio analógico del canal izquierdo |
| RCLK | Pin de señal de reloj | No hay conexión externa explícita (probablemente sincronización interna) | Sincronización del reloj interno |
| VDD | Entrada de alimentación | Red de alimentación 3V3 | Fuente de alimentación DC 3.3V |
| GND | Polo a Tierra | Red global GND | Tierra común de potencia y señal |
| SDIO | E/S de datos en serie | Pin 3 (señal de control) | Comunicación con MCU para sintonización, control de volumen, etc. |
| SCLK | reloj de serie | Pin 2 (señal de reloj) | Señal de reloj para comunicación SDIO |
| FMIN | Entrada de señal FM | Pasador 5 | Recibe señal FM RF de la antena |
| X1 | Entrada del oscilador de cristal | Cristal de 32.768 kHz | Proporciona un reloj de referencia para un funcionamiento de frecuencia estable. |
2. Desglose del módulo funcional
Módulo de fuente de alimentación 2.1
- Voltaje De Entrada: 3.3 V CC (regulada)
- Componentes de filtrado:
- C8 (0.1 µF), C9 (0.1 µF): Condensadores de desacoplamiento de alta frecuencia entre VDD y GND, que suprimen el ruido de potencia
- C10 (22 µF): Condensador electrolítico a granel para filtrado de baja frecuencia y almacenamiento de energía.
- C26 (0.1 µF): Desacoplamiento adicional para mejorar aún más la estabilidad de la potencia
Este filtrado multietapa garantiza Entrega de potencia estable y con bajo nivel de ruido al IC del receptor FM.
Módulo de recepción de señal FM 2.2
- Entrada de señal:
- El Pin FMIN (Pin 5) Se conecta a una antena FM externa (elemento de antena no mostrado en el esquema)
- Recibe señales de transmisión FM en el 87-108 MHz Número
- Circuito oscilador de cristal:
- A Cristal de 32.768 kHz (X1) proporciona un reloj de referencia preciso
- Garantiza una sintonización precisa de FM y evita la deriva de frecuencia durante la selección de estación
2.3 Módulo de control y comunicación
- Interface de comunicación:
- SDIO (datos en serie) + SCLK (Reloj serial)
- Compatible con Protocolos de comunicación serial I2C o similares
- Se utiliza para interactuar con una MCU externa (por ejemplo, un microcontrolador).
- Resistencias pull-up:
- R6 (10 kΩ) para SDIO
- R7 (10 kΩ) para SCLK
- Ambos están conectados a 3V3, garantizando niveles lógicos estables y una comunicación confiable
Módulo de salida de audio 2.4
- Salidas de audio:
- DERROTA: Audio analógico del canal derecho
- PATÁN: Audio analógico del canal izquierdo
- Estas salidas pueden ser:
- Conectado directamente a auriculares
- Conectado a altavoces (nota: un externo amplificador de audio Se requiere para una mayor potencia de salida)
2.5 Módulo auxiliar de filtrado y coincidencia
- Inductores
- L1, L2 (100 nH): Probablemente se utiliza para la adaptación de impedancia de RF o el filtrado de entrada en el front-end de FM.
- Ayuda a reducir la reflexión de la señal y mejorar la sensibilidad de recepción.
- condensadores:
- C13 (100 pF), C14 (24 pF): Trabajar con inductores para formar un Red de filtros LC
- Suprime interferencias de alta frecuencia y purifica la señal FM
- Toma de tierra:
- Varias conexiones GND indican una diseño de terreno común global
- Reduce el ruido y mejora la estabilidad general del circuito.
3. Parámetros clave y características de diseño
- Tensión De Funcionamiento: 3.3V
- Totalmente compatible con los MCU convencionales sin cambios de nivel
- Frecuencia del cristal: 32.768 kHz
- Frecuencia de referencia estándar de la industria para una sincronización estable
- Método de control: Interfaz serial SDIO + SCLK
- Enrutamiento simplificado, solo se requieren dos líneas de control
- Diseño de filtrado:
- Múltiples condensadores de desacoplamiento de potencia (0.1 µF + 22 µF)
- Filtrado LC en el frente de RF para una fuerte inmunidad al ruido
- Salida de audio:
- Audio analógico de doble canal (ROUT/LOUT)
- Admite reproducción de FM estéreo
4. Escenarios de aplicación y sugerencias de expansión
Aplicaciones principales
- Radios FM portátiles
- Altavoces inteligentes con funcionalidad de radio FM
- Sistemas receptores FM controlados por MCU
Opciones de expansión
- Usa una Antena telescópica externa o antena PCB para mejorar la sensibilidad de recepción
- Agregue un amplificador de potencia de audio (por ejemplo, LM386) a ROUT/LOUT para controlar altavoces más grandes
- Habilitar funciones avanzadas a través del control de MCU:
- Escaneo automático de estaciones
- Almacenamiento de canales preestablecidos
- Control de volumen digital
5. Notas de diseño y precauciones
- Estabilidad de energía:
- Asegúrese de que la fuente de alimentación de 3.3 V tenga una ondulación baja para evitar ruido de audio o recepción inestable.
- Toma de tierra:
- Utilice una referencia de tierra sólida y consistente
- Evite las diferencias de potencial entre la tierra de alimentación y la tierra de audio para evitar ruido
- Coincidencia de impedancia:
- La antena conectada a FMIN debe tener impedancia adaptada (normalmente 50Ω) para una recepción óptima
- Selección de componentes:
- Usar un Cristal de alta precisión de 32.768 kHz
- Utilice Condensadores NP0/C0G Para componentes relacionados con RF y temporización debido a su estabilidad superior
Código de programa de circuito de radio
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
//------------------------------------------------------------------------------




