基于STM32的FM电台概要.docx

上传人:b****7 文档编号:26046464 上传时间:2023-06-17 格式:DOCX 页数:45 大小:2.39MB
下载 相关 举报
基于STM32的FM电台概要.docx_第1页
第1页 / 共45页
基于STM32的FM电台概要.docx_第2页
第2页 / 共45页
基于STM32的FM电台概要.docx_第3页
第3页 / 共45页
基于STM32的FM电台概要.docx_第4页
第4页 / 共45页
基于STM32的FM电台概要.docx_第5页
第5页 / 共45页
点击查看更多>>
下载资源
资源描述

基于STM32的FM电台概要.docx

《基于STM32的FM电台概要.docx》由会员分享,可在线阅读,更多相关《基于STM32的FM电台概要.docx(45页珍藏版)》请在冰豆网上搜索。

基于STM32的FM电台概要.docx

基于STM32的FM电台概要

昆明理工大学津桥学院

ARM实作课程报告

实作设计题目:

数字FM电台设计开发

专业:

电子信息科学与技术

年级:

2011级

姓名:

学号:

指导教师:

王剑平

 

日期:

2013.11.20

津桥学院ARM实际应用系统开发选题报告

指导教师

王剑平

职称

副教授

学生年级

11级

学生专业

电信

开发题目

数字FM电台设计开发

选题的依据、目的、要求、工作量大小:

数字FM电台在日常生活中有广泛应用,本题目旨在帮助学生掌握数字电台的开发和应用。

选题的主要内容和意义:

设计数字FM电台,任务:

(1)了解数字FM电台的基本工作原理。

进行芯片选型、电路设计。

(2)实现电台发射频率可调。

要求:

(1)实现68MHz~107MHz范围可调。

(2)实现音频信号发射。

(3)实时显示发射频率。

课程所需材料清单及材料费预算:

(1)STM32开发板700元

(2)数字FM电台模块50元;

(3)液晶显示模块100元

(4)其它辅料200元

共计1050元

拟采用方法及预期成果:

采用STM32主控芯片实现功能,液晶显示结果。

采用无线耳机接受FM信号并进行测试。

教师意见:

同意选题

 

摘要

数字FM电台在日常生活中有广泛应用,战舰STM32开发板上载了一颗FM收发芯片:

RDA5820。

该芯片不但可以用来做用来做FM接收,实现音机功能;还可以用来做FM发射,实现电台的功能。

在接下来的实作中本文将就如何利用RDA5820的发射功能在一定的频率上实现发射SD卡中的音乐和通过麦克风传音作出详细的阐述。

【关键词】:

FMRDA5820发射电台

 

Abstract

DigitalFMradioiswidelyappliedindailylife,thebattleshipSTM32developmentboardtouploadaFMtransceiverchip:

RDA5820thechipnotonlycanbeusedtodotodoFMreceiver,achievesoundmachinefunction;FMemissioncanalsobeusedtodo,torealizethefunctionoftheradiointhenextimplementationinthisarticlewilldiscusshowtousethelaunchRDA5820functionimplementedincertainfrequencylaunchthemusicinSDcardandpassthroughamicrophonesoundtomakeadetail

【Keyword】:

FMRDA5820Launchradio

 

目录

津桥学院ARM实际应用系统开发选题报告I

摘要II

AbstractII

第1章绪论1

1.1课题背景1

1.2主要芯片介绍1

1.2.1RDA5820介绍1

1.2.2VS1053简介3

1.2.374HC4052简介5

1.2.4SD卡简介6

1.2.5TFTLCD简介9

第2章硬件设计及模块功能实现10

2.1FM电台设计框图10

2.2硬件设计10

2.2.1RDA5820与STM32的连接电路10

2.2.2VS1053解码芯片电路原理11

2.2.3SD卡接口和STM32的连接12

2.2.4TFTLCD显示模块14

2.3模块功能实现15

2.3.1SD卡模块指令15

2.3.2TFTLCD模块控制16

2.3.3VS1053的SPI数据传送和SCI寄存器18

第3章软件设计23

3.1FM电台软件设计流程图23

3.2软件设计结构框图24

3.3主函数介绍24

3.3.1系统初始化24

3.3.2FM信号发射设置25

3.3.3TFTLCD显示基本信息25

3.3.4音频源的选择25

3.4IIC驱动RDA5820FM收发芯片25

3.5SPI驱动VS1053音频解码器27

3.6SD卡读写驱动28

3.774HC4052音频选择28

3.8TFT-LCD显示驱动29

第4章下载调试31

4.1调试环境31

4.2下载验证31

结论34

主要工作 34

心得体会 34

参考文献35

第1章绪论

1.1课题背景

自20世纪90年代以来,无线通信在全球范围内取得了突飞猛进的发展。

无论是军用或民用通信,在各种频段上出现了许多新的系统和模式,满足了社会上各种各样的需求。

发射机作为无线通信设备的重要组成部分,其发展极大的促进了无线通信技术的发展。

无线电技术诞生以来,信息传输和信息处理始终是其主要任务。

为了有效地进行传输,必须将携带信息的低频电信号调制到几十MHz~几百MHz以上的高频振荡信号上,再经天线发送出去。

为减小各种因素引起的系统不稳定,增强系统的可靠性,系统必须包括自动增益控制、自动频率控制和自动相位控制在内的反馈控制电路。

本文所讨论的就是一个利用锁相环组成的直接调频信号发射器。

FM发射电台具有使接收机接收灵敏度高,抗干扰力强、音质清晰等特点,但往往在制作、调试过程中易出现电路易停振、抗干扰力差、失真等故障。

该FM发射机电路工作频率稳定,抗干扰力强,制作调试简单。

本设计是一个调频发射电台,调频就是频率调制,所谓频率调制就是原来等幅恒频的高频信号的频率,随着调制信号的幅度变化而变化,调频发射电台就是发送这些频率调制的无线电信号,经过解调变换成无限信号并发送信号的电子设备。

本设计就是利用STM32开发板,设计一个数字FM发射电台系统。

通过教师的悉心指导和自己的不断努力,最终完成了毕业设计的各项任务,成功设计一小功率调频发射电台,基本完成其各项功能。

 

随着消费类电子的兴起和繁荣以及数字电子技术的发展,收音机逐渐数字化,集成化,而且成本越来越低,这使得在各种设备中嵌入收音机的现象更加普遍。

广大从事消费类电子设计的厂商都不忘在诸如MP3、智慧手机、便携式Video播放器等产品中嵌入FM接收部分。

这样电台的建设就更加有意义了。

高频电子线路本是一门较为复杂的电路。

其中更有精髓的知识值的我们去学习。

同时随着计算机技术与高频电子技术的发展,模拟电子技术,得到广泛应用,在模拟电子电路中尤其得到广泛应用,成为现代电子电器必不可少的电子技术。

在高频电子线路中,LC振荡电路是无孔不入,无所不在。

应用于发射机中,加上简单的电路及连线,就可以组成各种形式的、任意信号,广泛应用。

小功率调频发射电台在使用中,控制方法科学、简单、明了,控制电路及连线简单、易行,工作稳定性好,从而得到广泛应用。

在此,我们就调频发射电台的应用作较完整和系统的研究,促进小功率调频发射电台的正确使用。

1.2主要芯片介绍

1.2.1RDA5820介绍

RDA5820是北京锐迪科推出的一款集成度非常高的立体声FM收发芯片。

该芯片具有以下特点:

FM发射和接收一体

支持65Mhz~115Mhz的全球FM接收频段,收发天线共用

支持IIC/SPI接口

支持32.768K晶振

数字音量及自动AGC控制

支持立体声/单声道切换,带软件静音功能

支持I2S接口(输入/输出)

内置LDO,使用电压范围宽(2.7~5.5V)

高功率32欧负载音频输出、可以直接驱动耳机

集成度高、功耗低、尺寸小(4mm*4mmQFN封装)、应用简单

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.1RDA5820引脚图

通过设置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.2VS1053简介

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)/IMAADPCM编码

高低音控制

带有EarSpeaker空间效果(用耳机虚拟现场空间效果)

单时钟操作12..13MHz

内部PLL锁相环时钟倍频器

低功耗

内含高性能片上立体声DAC,两声道间无相位差

过零交差侦测和平滑的音量调整

内含能驱动30欧负载的耳机驱动器

模拟,数字,I/O单独供电

为用户代码和数据准备的16KB片上RAM

可扩展外部DAC的I2S接口

用于控制和数据的串行接口(SPI)

可被用作微处理器的从机

特殊应用的SPIFlash引导

供调试用途的UART接口

新功能可以通过软件和8GPIO添加

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不停的输入音频数据,它就会自动帮我们解码了,然后从输出通道输出音乐,这时我们接上耳机就能听到所播放的歌曲了。

图1.2VS1053封装图

1.2.374HC4052简介

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.0V~10.0V。

74HC4052的模拟输入/输出端(nY0至nY3,nZ)在上限VCC和下限VEE之间摆动,VCC-VEE应当不超过10.0V。

  作为一个数字多路选择器/多路分配器,VEE将被连接到GND上(一般是接地)

宽模拟输入电压范围:

-5V~+5V

低导通阻抗

VCC-VEE=4.5V时,80欧姆(典型)

VCC-VEE=6.0V时,70欧姆(典型)

VCC-VEE=9.0V时,60欧姆(典型)

逻辑电平转换:

沟通5V逻辑和+-5V模拟信号

典型的内置“先断后合”

遵循JEDEC标准no.7A

ESD保护

人体模式(HBM)EIA/JESD22-A114E超过2000V

机械模式(MM)EIA/JESD22-A115-A超过200V

温度范围:

-40~+85℃和-40~+125℃

74HC4052基本参数

电压

2.0~10.0V

传输延迟

4ns@5V

74HC4052其他特性

导通阻抗

60Ohms

逻辑电平

CMOS

功耗考量

低功耗或电池供电应用

74HC4052封装与引脚

SO16,SSOP16,DIP16,TSSOP16

表1.174HC4052基本参数

1.2.4SD卡简介

SD卡(SecureDigitalMemoryCard)中文翻译为安全数码卡,它是在MMC的基础上发展而来,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机、个人数码助理(PDA)和多媒体播放器等。

SD卡由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制。

大小犹如一张邮票的SD记忆卡,重量只有2克,但却拥有高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性。

按容量分类,可以将SD卡分为3类:

SD卡、SDHC卡、SDXC卡。

如下表1.2所示:

容量

命名

简称

0~2G

StandardCapacitySDMemoryCard

SDSC或SD

2G~32G

HighCapacitySDMemoryCard

SDHC

32G~2T

ExtendedCapacitySDMemoryCard

SDXC

表1.2SD卡按容量分类

SD卡和SDHC卡协议基本兼容,但是SDXC卡,同这两者区别就比较大了,本章我们讨论的主要是SD/SDHC卡(简称SD卡)。

SD卡一般支持2种操作模式:

1,SD卡模式(通过SDIO通信);

2,SPI模式;

主机可以选择以上任意一种模式同SD卡通信,SD卡模式允许4线的高速数据传输。

SPI模式允许简单的通过SPI接口来和SD卡通信,这种模式同SD卡模式相比就是丧失了速度。

SD卡的引脚排序如下图1.4所示:

图1.4SD卡引脚排序图

SD卡引脚功能描述如表1.3所示:

表1.3SD卡引脚功能表

SD卡只能使用3.3V的IO电平,所以,MCU一定要能够支持3.3V的IO端口输出。

注意:

在SPI模式下,CS/MOSI/MISO/CLK都需要加10~100K左右的上拉电阻。

SD卡有5个寄存器,如表1.4所示:

名称

宽度

描述

CID

128

卡标识寄存器

RCA

16

相对卡地址(Relativecardaddress)寄存器:

本地系统中卡的地址,动态变化,在主机初始化的时候确定

*SPI模式中没有

CSD

128

卡描述数据:

卡操作条件相关的信息数据

SCR

64

SD配置寄存器:

SD卡特定信息数据

OCR

32

操作条件寄存器

表1.4SD卡相关寄存器

SD卡初始化过程

因为我们使用的是SPI模式,所以先得让SD卡进入SPI模式。

方法如下:

在SD卡收到复位命令(CMD0)时,CS为有效电平(低电平)则SPI模式被启用。

不过在发送CMD0之前,要发送>74个时钟,这是因为SD卡内部有个供电电压上升时间,大概为64个CLK,剩下的10个CLK用于SD卡同步,之后才能开始CMD0的操作,在卡初始化的时候,CLK时钟最大不能超过400Khz!

接着我们看看SD卡的初始化,SD卡的典型初始化过程如下:

1、初始化与SD卡连接的硬件条件(MCU的SPI配置,IO口配置);

2、上电延时(>74个CLK);

3、复位卡(CMD0),进入IDLE状态;

4、发送CMD8,检查是否支持2.0协议;

5、根据不同协议检查SD卡(命令包括:

CMD55、CMD41、CMD58和CMD1等);

6、取消片选,发多8个CLK,结束初始化

这样我们就完成了对SD卡的初始化,注意末尾发送的8个CLK是提供SD卡额外的时钟,完成某些操作。

通过SD卡初始化,我们可以知道SD卡的类型(V1、V2、V2HC或者MMC),在完成了初始化之后,就可以开始读写数据了。

SD卡读取数据,这里通过CMD17来实现,具体过程如下:

1、发送CMD17;

2、接收卡响应R1;

3、接收数据起始令牌0XFE;

4、接收数据;

5、接收2个字节的CRC,如果不使用CRC,这两个字节在读取后可以丢掉。

6、禁止片选之后,发多8个CLK;

以上就是一个典型的SD卡读数据过程,SD卡的写于读数据差不多,写数据通过CMD24来实现,具体过程如下:

1、发送CMD24;

2、接收卡响应R1;

3、发送写数据起始令牌0XFE;

4、发送数据;

5、发送2字节的伪CRC;

6、禁止片选之后,发多8个CLK;

以上就是一个典型的写SD卡过程。

1.2.5TFTLCD简介

TFT-LCD即薄膜晶体管液晶显示器。

其英文全称为:

ThinFilmTransistor-LiquidCrystalDisplay。

TFT-LCD与无源TN-LCD、STN-LCD的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。

TFT-LCD也被叫做真彩液晶显示器。

上一章介绍了OLED模块,本章,我们给大家介绍ALIENTEKTFTLCD模块,该模块有如下特点:

1,2.4’/2.8’/3.5’3种大小的屏幕可选。

2,320×240的分辨率(3.5’分辨率为:

320*480)。

3,16位真彩显示。

4,自带触摸屏,可以用来作为控制输入。

本章,我们以2.8寸的ALIENTEKTFTLCD模块为例介绍,该模块支持65K色显示,显示分辨率为320×240,接口为16位的80并口,自带触摸屏。

图1.5ALIENTEK2.8寸TFTLCD外观图

第2章硬件设计及模块功能实现

2.1FM电台设计框图

本文设计SD卡音源和MIC音源两种音源输入,经音频选择,CPU处理之后输出

2.2硬件设计

实验设计为FM发射模式,设计发射频率为92.2Mhz,开机显示发射频率,KEY_UP键选择音源输入等信息。

按一下KEY_UP键即进入SD卡音源输入模式,这时KEY0:

M+(下一曲)KEY2:

M-(上一曲)起效,再按第二下进入MIC音源模式,这时KEY_DOWN键起效,可以用它来选择直接播放或者录音储存后播放模式。

同时用DS0提示程序正在运行。

所要用到的部分硬件资源如下:

1)指示灯DS0

2)KEY0、KEY1、KEY2和WK_UP等四个按键

3)TFTLCD模块

4)SD卡

5)RDA5820

6)74HC4052

7)VS1053B

2.2.1RDA5820与STM32的连接电路

这里RDA5820用IIC总线,接在STM32的PB10和PB11两个脚上,下图中OUTL和OUTR接在RDA5820的LIN和RIN,OUTR和OUTL是来自音频选择器(74HC4052)的输出端,作为FM发送时的音源输入。

图2.1RDA5820与STM32的连接图

2.2.2VS1053解码芯片电路原理

VS1053通过7根线同STM32连接,他们是:

VS_MISO、VS_MOSI、VS_SCK、VS_XCS、VS_XDCS、VS_DREQ和VS_RST。

这7根线同STM32的连接关系如表2.1所示:

表2.1VS1053各信号线与STM32连接关系

其中VS_RST是VS1053的复位信号线,低电平有效。

VS_DREQ是一个数据请求信号,用来通知主机,VS1053可以接收数据与否。

VS_MISO、VS_MOSI和VS_SCK则是VS1053的SPI接口他们在VS_XCS和VS_XDCS下面来执行不同的操作。

从上表可以看出,VS1053的SPI是接在STM32的SPI1上面的。

1)复位VS1053

这里包括了硬复位和软复位,是为了让VS1053的状态回到原始状态,准备解码下一首歌曲。

2)配置VS1053的相关寄存器

这里我们配置的寄存器包括VS1053的模式寄存器(MODE)、时钟寄存器(CLOCKF)、音调寄存器(BASS)、音量寄存器(VOL)等。

图2.2VS1053B音频解码模块原理图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1