数字FM电台设计开发
RDA5820是北京锐迪科推出的一款集成度非常高的立体声FM收发芯片。该芯片具有以下特点:
? FM发射和接收一体
? 支持65Mhz~115Mhz的全球FM接收频段,收发天线共用 ? 支持IIC/SPI接口 ? 支持32.768K晶振 ? 数字音量及自动AGC控制
? 支持立体声/单声道切换,带软件静音功能 支持I2S接口(输入/输出)
内置LDO,使用电压范围宽(2.7~5.5V) 高功率32欧负载音频输出、可以直接驱动耳机
? 集成度高、功耗低、尺寸小(4mm*4mm QFN封装)、应用简单
RDA5820应用范围很宽,在很多手机、MP3、MP4甚至平板电脑上都有应用。RDA5820的引脚图如图1.1所示:
?
RDA5820支持2种通信模式,SPI和IIC,在战舰STM32开发板上面,使用的是RDA5820的IIC模式。通过将图1.1 的MODE脚接GND,RDA5820即进入IIC模式,此时SCLK充当IIC的SCL,SDIO充当IIC的SDA。RDA5820的IIC地址为0X11(不包含最低位),对应读为0X23,写为0X20。
模式设置
RDA5820的模式设置通过40H(寄存器地址0X40)寄存器的CHIP_FUNC[3:0]位来设置,RDA5820可以工作在RX模式、TX模式、PA模式和DAC模式等,本章我们只介绍RX模式和TX模式。
图 1.1 RDA5820引脚图
2
数字FM电台设计开发
通过设置CHIP_FUNC[3:0]=0即可定义当前工作模式为FM接收模式。在该模式下,我们即可实现FM收音机功能。
通过设置CHIP_FUNC[3:0]=1即可定义当前工作模式为FM发送模式。在该模式下,我们即可实现FM电台的功能。
频点设置
软件可以通过配置03H(寄存器地址0X30)寄存器来选择FM频道。搜台(Seek)的步进长度(100KHz、200KHz或50KHz)由SPACE[1:0] 来选择,频道由CHAN[9:0]来选择,频率范围(76MHz~91MHz、87MHz~108MHz或76MHz~108MHz 或用户自定义65MHz~115MHz 范围内频段)由BAND[1:0]来选择。自定义的频段由寄存器53H(chan_bottom)和54H(chan_top)来设置,单位为100KHz,即定义65MHz~76MHz,可设置BAND[1:0]=3(用户自定义频段),并且设置chan_bottom=0x028A,chan_top=0x02f8。
频点计算方法如下(该公式也适用于FM频点的读取):
FMfreq=SPACE*CHAN+FMBTM
其中FMfreq即我们需要的FM频率(Mhz),SPACE为我们设置的步进长度(Khz),CHAN是我们设置的频点值,FMBTM则是我们在BAND里面所选频段的最低频率,当BAND=0的实惠,FMBTM=87Mhz;BAND=1的时候,FMBTM=76Mhz;BAND=2的时候,FMBTM=CHAN_BOTTOM*0.1Mhz。
例如,我们要设置FM频率为93.0Mhz,假设BAND=0,SPACE=100Khz。那么我们只需要设置CHAN=60即可。
频点设置部分,FM接收和FM发送是共用的,对两者都适用。
1.2.2 VS1053简介
VS1053是继VS1003后荷兰VLSI公司出品的又一款高性能解码芯片。该芯片可以实现对MP3/OGG/WMA/FLAC/WAV/AAC/MIDI等音频格式的解码,同时还可以支持ADPCM/OGG等格式的编码,性能相对以往的VS1003提升不少。VS1053拥有一个高性能的DSP处理器核VS_DSP,16K的指令RAM,0.5K的数据RAM,通过SPI控制,具有8个可用的通用IO口和一个串口,芯片内部还带了一个可变采样率的立体声ADC(支持咪头/咪头+线路/2线路)、一个高性能立体声DAC及音频耳机放大器。
VS1053的特性如下:
支持众多音频格式解码,包括OGG/MP3/WMA/WAV/FLAC(需要加载patch)/MIDI/AAC等。
对话筒输入或线路输入的音频信号进行OGG(需要加载patch)/IMA ADPCM编码
高低音控制
3
数字FM电台设计开发
带有EarSpeaker空间效果(用耳机虚拟现场空间效果) 单时钟操作12..13MHz 内部PLL锁相环时钟倍频器 低功耗
内含高性能片上立体声DAC,两声道间无相位差 过零交差侦测和平滑的音量调整 内含能驱动30 欧负载的耳机驱动器 模拟,数字,I/O 单独供电
为用户代码和数据准备的16KB片上RAM 可扩展外部DAC的I2S接口
用于控制和数据的串行接口(SPI) 可被用作微处理器的从机 特殊应用的SPI Flash引导 供调试用途的UART接口
新功能可以通过软件和8 GPIO 添加
VS1053相对于它的前辈VS1003,增加了编解码格式的支持(比如支持OGG/FLAC,还支持OGG编码,VS1003不支持)、增加了GPIO数量到8个(VS1003只有4个)、增加了内部指令RAM容量到16KiB(VS1003只有5.5KiB)、增加了I2S接口(VS1003没有)、支持EarSpeaker空间效果(VS1003不支持)等。同时VS1053的DAC相对于VS1003有不少提高,同样的歌曲,用VS1053播放,听起来比1003效果好很多。
VS1053的封装引脚和VS1003完全兼容,所以如果你以前用的是VS1003,则只需要把VS1003换成VS1053,就可以实现硬件更新,电路板完全不用修改。不过需要注意的是VS1003的CVDD是2.5V,而VS1053的CVDD是1.8V,所以你还需要把稳压芯片也变一下,其他都可以照旧了。
VS1053通过SPI接口来接受输入的音频数据流,它可以是一个系统的从机,也可以作为独立的主机。这里我们只把它当成从机使用。我们通过SPI口向VS1053不停的输入音频数据,它就会自动帮我们解码了,然后从输出通道输出音乐,这时我们接上耳机就能听到所播放的歌曲了。
4
数字FM电台设计开发
图 1.2 VS1053封装图
1.2.3 74HC4052 简介
74HC4052是一款高速CMOS器件,74HC4052引脚兼容HEF4052B。74HC4052遵循JEDEC标准no.7A。
74HC4052是双路4通道模拟多路选择器/多路分配器,带有公共选择逻辑。每个多路选择器包含4个独立输入/输出端(nY0至nY3)和1个公共输入/输出端(nZ)。公用通道选择逻辑包含2个数字选择端(S0和S1)和1个低有效使能端(E)。
E为低时,4个开关的其中之一将被S0和S1选中(低阻态)。E为高时,所有开关都进入高阻态,直接无视S0和S1。
VCC和GND是数字控制端(S0和S1,E)的供电引脚,74HC4052的VCC至
GND范围为2.0 V~10.0 V。74HC4052的模拟输入/输出端(nY0至nY3,nZ)在上限VCC和下限VEE之间摆动,VCC-VEE应当不超过10.0 V。
作为一个数字多路选择器/多路分配器,VEE将被连接到GND上(一般是接地)
宽模拟输入电压范围:-5 V~+5 V 低导通阻抗
VCC - VEE = 4.5 V时,80 欧姆(典型) VCC - VEE = 6.0 V时,70 欧姆(典型) VCC - VEE = 9.0 V时,60 欧姆(典型) 逻辑电平转换:沟通5 V逻辑和+- 5 V模拟信号 典型的内置“先断后合”
5
数字FM电台设计开发
遵循JEDEC标准no.7A ESD保护
人体模式(HBM) EIA/JESD22-A114E超过2000 V
机械模式(MM) EIA/JESD22-A115-A超过200 V
温度范围:-40~+85 ℃和-40~+125 ℃
74HC4052 基本参数 电压 2.0~10.0V 传输延迟 导通阻抗 逻辑电平 功耗考量
4 ns@5V 60 Ohms CMOS 低功耗或电池
供电应用
74HC4052 其他特性
74HC4052 封装与引脚
SO16, SSOP16, DIP16, TSSOP16
表1.1 74HC4052 基本参数
1.2.4 SD卡简介
SD卡(Secure Digital Memory Card)中文翻译为安全数码卡,它是在MMC的基础上发展而来,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机、个人数码助理(PDA)和多媒体播放器等。SD卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。大小犹如一张邮票的SD记忆卡,重量只有2克,但却拥有高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性。按容量分类,可以将SD卡分为3类:SD卡、SDHC卡、SDXC卡。如下表1.2所示:
容量 0~2G 2G~32G 32G~2T
命名
Standard Capacity SD Memory Card High Capacity SD Memory Card
简称 SDSC或SD SDHC
Extended Capacity SD Memory Card SDXC
表1.2 SD卡按容量分类
SD卡和SDHC卡协议基本兼容,但是SDXC卡,同这两者区别就比较大了,本章我们讨论的主要是SD/SDHC卡(简称SD卡)。
SD卡一般支持2种操作模式:
6