课程设计论文基于stm32FM电台设计

上传人:汽*** 文档编号:457149658 上传时间:2022-11-26 格式:DOC 页数:15 大小:1.51MB
返回 下载 相关 举报
课程设计论文基于stm32FM电台设计_第1页
第1页 / 共15页
课程设计论文基于stm32FM电台设计_第2页
第2页 / 共15页
课程设计论文基于stm32FM电台设计_第3页
第3页 / 共15页
课程设计论文基于stm32FM电台设计_第4页
第4页 / 共15页
课程设计论文基于stm32FM电台设计_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《课程设计论文基于stm32FM电台设计》由会员分享,可在线阅读,更多相关《课程设计论文基于stm32FM电台设计(15页珍藏版)》请在金锄头文库上搜索。

1、 成绩课程设计报告题 目:基于STM32的FM电台课程名称: ARM嵌入式系统 学生姓名: 学生学号: 1214040227 系 别: 电子工程学院 专 业: 电子信息科学与技术 届 别: 2012 指导教师: 电子工程学院制2015年4月基于STM32的FM电台学生:王超指导教师:吴琰电子工程学院 电子信息科学与技术1 FM部件介绍1. 主要芯片介绍1.1RDA5820介绍 RDA5820是北京锐迪科推出的一款集成度非常高的立体声FM收发芯片。RDA5820的模式设置通过40H(寄存器地址0X40)寄存器的CHIP_FUNC3:0位来设置,RDA5820可以工作在RX模式、TX模式、PA模式

2、和DAC模式等,本章我们只介绍RX模式和TX模。通过设置CHIP_FUNC3:0=0即可定义当前工作模式为FM接收模式。在该模式下,我们即可实现FM收音机功能。通过设置CHIP_FUNC3:0=1即可定义当前工作模式为FM发送模式。在该模式下,我们即可实现FM电台的功能。1.2 1053简介VS1053是继VS1003后荷兰VLSI公司出品的又一款高性能解码芯片。该芯片可以实现对MP3/OGG/WMA/FLAC/WAV/AAC/MIDI等音频格式的解码,同时还可以支持ADPCM/OGG等格式的编码,性能相对以往的VS1003提升不少。VS1053拥有一个高性能的DSP处理器核VS_DSP,16

3、K的指令RAM,0.5K的数据RAM,通过SPI控制,具有8个可用的通用IO口和一个串口,芯片内部还带了一个可变采样率的立体声ADC(支持咪头/咪头+线路/2线路)、一个高性能立体声DAC及音频耳机放大器。VS1053通过SPI接口来接受输入的音频数据流,它可以是一个系统的从机,也可以作为独立的主机。这里我们只把它当成从机使用。我们通过SPI口向VS1053不停的输入音频数据,它就会自动帮我们解码了,然后从输出通道输出音乐,这时我们接上耳机就能听到所播放的歌曲了,如图1所示。图1 VS1053封装图1.3 74HC4052 简介74HC4052是一款高速CMOS器件,74HC4052引脚兼容H

4、EF4052B。74HC4052遵循JEDEC标准no.7A。 E为低时,4个开关的其中之一将被S0和S1选中(低阻态)。E为高时,所有开关都进入高阻态,直接无视S0和S1。VCC和GND是数字控制端(S0和S1,E)的供电引脚,74HC4052的VCC至GND范围为2.0 V10.0 V。74HC4052的模拟输入/输出端(nY0至nY3,nZ)在上限VCC和下限VEE之间摆动,VCC-VEE应当不超过10.0 V。作为一个数字多路选择器/多路分配器,VEE将被连接到GND上(一般是接地)宽模拟输入电压范围:-5 V+5 V。1.4 TFTLCD简介TFT-LCD即薄膜晶体管液晶显示器。其英

5、文全称为:Thin Film Transistor-Liquid Crystal Display。TFT-LCD与无源TN-LCD、STN-LCD的简单矩阵不同,它在液晶显示屏的每一个象素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量。TFT-LCD也被叫做真彩液晶显示器。2 硬件设计及模块功能实现2.1硬件设计实验设计为FM发射模式,设计发射频率为92.2Mhz,开机显示发射频率,KEY_UP键选择音源输入等信息。按一下KEY_UP键即进入SD卡音源输入模式,这时KEY0:M+(下一曲) KEY2:M-(上一曲)起

6、效,再按第二下进入MIC音源模式,这时KEY_DOWN键起效,可以用它来选择直接播放或者录音储存后播放模式。同时用DS0提示程序正在运行。所要用到的部分硬件资源如下:1) 指示灯DS0, 2) KEY0、KEY1、KEY2和WK_UP等四个按键, 3) TFTLCD模块 ,4) SD卡 ,5) RDA5820 ,6) 74HC4052, 7) VS1053B。 2.1.1 RDA5820与STM32的连接电路这里RDA5820用IIC总线,接在STM32的PB10和PB11两个脚上,下图中OUTL和OUTR接在RDA5820的LIN和RIN,OUTR和OUTL是来自音频选择器(74HC4052

7、)的输出端,作为FM发送时的音源输入。如图2所示。图2 RDA5820与STM32的连接图2.1.2 VS1053解码芯片电路原理VS1053通过7根线同STM32连接,他们是:VS_MISO、VS_MOSI、VS_SCK、VS_XCS、VS_XDCS、VS_DREQ和VS_RST。其中VS_RST是VS1053的复位信号线,低电平有效。VS_DREQ是一个数据请求信号,用来通知主机,VS1053可以接收数据与否。VS_MISO、VS_MOSI和VS_SCK则是VS1053的SPI接口他们在VS_XCS和VS_XDCS下面来执行不同的操作。从上表可以看出,VS1053的SPI是接在STM32的

8、SPI1上面的。 1) 复位VS1053 这里包括了硬复位和软复位,是为了让VS1053的状态回到原始状态,准备解码下一首歌曲。2) 配置VS1053的相关寄存器这里我们配置的寄存器包括VS1053的模式寄存器(MODE)、时钟寄存器(CLOCKF)、音调寄存器(BASS)、音量寄存器(VOL)等。如图3所示。图3 VS1053B音频解码模块原理图2.1.3 SD卡接口和STM32的连接 我们用跳线帽将P10的SD_DT3、SD_CMD、SD_SCK、SD_DT0分别同P12的SD_CS、SPI2_MOSI、SPI2_SCK、SPI2_MISO连接起来,即实现SD卡的SPI模式连接。硬件连接示

9、意图如图4所示:图4 SD卡SPI方式硬件连接示意图 将图中所示的4处,用跳线帽短接,接口实现SD卡与STM32的SPI连接。最后,你还得自备一个SD卡,将其插入板子下面的SD卡接口。2.1.4 TFTLCD显示模块,模块原理图如图5所示:图 5 ALIENTEK 2.8寸TFTLCD模块原理图TFTLCD模块采用2*17的2.54公排针与外部连接,接口定义如图6所示:图6 ALIENTEK 2.8寸TFTLCD模块接口图从图6可以看出,ALIENTEK TFTLCD模块采用16位的并方式与外部连接,之所以不采用8位的方式,是因为彩屏的数据量比较大,尤其在显示图片的时候,如果用8位数据线,就会

10、比16位方式慢一倍以上,我们当然希望速度越快越好,所以我们选择16位的接口。关于触摸屏本章我们不多介绍,后面的章节会有详细的介绍。该模块的80并口有如下一些信号线:CS:TFTLCD片选信号。WR:向TFTLCD写入数据。RD:从TFTLCD读取数据。D15:0:16位双向数据线。RST:硬复位TFTLCD。RS:命令/数据标志(0,读写命令;1,读写数据)。2.2 模块功能实现22.1 TFTLCD模块控制我们仅以ILI9320控制器为例进行介绍,其他的控制基本都类似。位模式(26万色)下的显存量。模块的16位数据线与显寸的对应关系为565方式,如图7所示:图7 16位数据与显存对应关系图最

11、低5位代表蓝色,中间6位为绿色,最高5位为红色。数值越大,表示该颜色越深。接下来,我们介绍一下ILI9320的几个重要命令,因为ILI9320的命令很多,我们这里不可能一一介绍,有兴趣的大家可以找到ILI9320的datasheet看看。里面对这些命令有详细的介绍。R0,这个命令,有两个功能,如果对它写,则最低位为OSC,用于开启或关闭振荡器。而如果对它读操作,则返回的是控制器的型号。这个命令最大的功能就是通过读它可以得到控制器的型号,而我们代码在知道了控制器的型号之后,可以针对不同型号的控制器,进行不同的初始化。因为93xx系列的初始化,其实都比较类似,我们完全可以用一个代码兼容好几个控制器

12、。I/D1:0:当更新了一个数据之后,根据这两个位的设置来控制地址计数器自动增加/减少1,其关系如图8所示:图8 GRAM显示方向设置图通过这几个位的设置,我们就可以控制屏幕的显示方向了,这种方法虽然简单,但是不是很通用,比如不同的液晶,可能这里差别就比较大,有的甚至无法通用!比如9341和9320就完全不通用。3 软件设计3.1 主函数介绍3.1.1 系统初始化该模块实现对系统各模块的初始化工作,以便后面程序使用这些模块时正常工作。以下是所有初始化函数:delay_init(); /延时函数初始化NVIC_Configuration(); /设置NVIC中断分组2:2位抢占优先级,2位响应优

13、先级uart_init(9600); /串口初始化为9600LCD_Init(); /显示屏初始化KEY_Init(); /按键初始化font_init(); /初始化字库Audiosel_Init(); /初始化音源选择usmart_dev.init(72); /usmart初始化mem_init(SRAMIN); /初始化内部内存池VS_Init(); /初始化VS1053 exfuns_init();/为fatfs相关变量申请内存 f_mount(0,fs0); /挂载SD卡 f_mount(1,fs1); /挂载FLASH.usmart_dev.init(72); /初始化USMART

14、RDA5820_Init(); /初始化FM收发3.1.2 FM信号发射设置该模块实现对RDA5820配置,根据需要这里将模式设置为发射,频率配置为93.6,发射功率设置为最大。以下是所有相关配置函数的调用:RDA5820_Band_Set(0); /设置频段为87108MhzRDA5820_Space_Set(0); /设置步进为100KhzRDA5820_TxPGA_Set(3); /信号增益设置为3RDA5820_TxPAG_Set(63); /发射功率为最大.RDA5820_TX_Mode();/发送模式freqset=9360; /默认为93.6MhzRDA5820_Freq_Set(freqset);/设置频率3.1.3 TFTLCD显示基本信息该模块部分主要在TFTLCD上显示必要的信息,提示用户如何操作。以下是程序内容:POINT_COLOR=RED; /设置字体为红色 Show_Str(60,10,200,16,电台实验,16,0); Show_Str(60,30,200,16,调频92.2Mhz,16,0);Show_Str(60,50,200,16,*,16,0);LCD_ShowString(60,70,200,16,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号