RDA5820 是北京锐迪科推出的一款集成度非常高的立体声 FM收发芯片。该芯片具有以下
特点:
FM 发射和接收一体
支持 65Mhz~115Mhz的全球 FM接收频段,收发天线共用。
支持 IIC/SPI接口
支持 32.768K晶振
数字音量及自动 AGC控制
支持立体声/单声道切换,带软件静音功能
支持 I2S接口(输入/输出)
内置 LDO,使用电压范围宽(2.7~5.5V)
高功率 32欧负载音频输出、可直接驱动耳机
集成度高、功耗低、尺寸小(4mm*4mm QFN封装)、应用简单
RDA5820引脚图如图所示
RDA5820 支持 2种通信模式, SPI和 IIC,MODE脚接 GND,RDA5820即进入 IIC模式,此时 SCLK充当 IIC的 SCL,SDIO充当 IIC的 SDA。RDA5820的 IIC地址为 0X11(不包含最低位),对应读为 0X23,写为 0X20
实际电路连接如下
RDA5820拥有半自动搜台,全自动搜台两种模式
具体设置参考代码
#include "rda5820.h"
//初始化
//0,初始化成功;
//其他,初始化失败.
u8 Rda5820Init(void)
{
u16 id;
IIcInit(); //初始化IIC口
id=Rda5820ReadReg(RDA5820_R00); //读取ID =0X5805
if(id==0X5805) //读取ID正确
{
Rda5820WriteReg(RDA5820_R02,0x0002); //芯片软复位
DelayMs(400);//等待复位结束
Rda5820WriteReg(RDA5820_R02,0x0001); //芯片上电
DelayMs(600);
Rda5820WriteReg(RDA5820_R02,0xD201); //芯片上电,不复位 正常天线 32.768时钟 循环搜索 不开始搜索 想上搜索 低音增强 立体声 非静音 非高阻抗
Rda5820WriteReg(RDA5820_R03,0x0000); //100k apace 87-108baud 不开启调谐
Rda5820WriteReg(RDA5820_R04,0x0000); //关闭中断 0.75us去加重 不使能iis io口全部浮空
Rda5820WriteReg(RDA5820_R05,0X8548); //搜索强度8,LNAN,1.8mA,VOL最大 无输入低噪声
// Rda5820WriteReg(RDA5820_R0A,0X7800); //0A不用设置
// Rda5820WriteReg(RDA5820_R0B,0X7800); //0b不用设置
Rda5820WriteReg(RDA5820_R40,0X0000); //半自动搜台 RX工作模式
Rda5820WriteReg(RDA5820_R41,0X0000); //RDS应答为0 不复位fifo fifo深度为0
// Rda5820WriteReg(RDA5820_R42,0X0000); //42不用设置
Rda5820WriteReg(RDA5820_R4A,0X0010); //fifo满中断
Rda5820FreqSet(8700);//设置初始化频率81.00M
}else return 1;//初始化失败
return 0;
}
//写RDA5820寄存器
void Rda5820WriteReg(u8 addr,u16 val)
{
IIcStart();
IIcSendByte(RDA5820_WRITE); //发送写命令
IIcWaitAck();
IIcSendByte(addr); //发送地址
IIcWaitAck();
IIcSendByte(val>>8); //发送高字节
IIcWaitAck();
IIcSendByte(val&0XFF); //发送低字节
IIcWaitAck();
IIcSto