青岛大学本科生毕业论文(设计)
表2.3 RAM字符地址与液晶显示区域的对应关系
③ 图形显示
显示图形时必需要先写入垂直地址然后才能再写入水平地址,否则显示地址错误,下图为GDRAM的坐标地址的排列方式,注意最左边为最高位。
图2.3.2 GDRAM的坐标地址
2.3.2 模块接口说明
本设计采用8位并行接口,PSB引脚接高电平。
表2.4 LCD模块接口说明
管脚号 管脚名称 1 2 3 4 5 VSS VCC VO RS(CS) R/W(SID) 电平 0V - H/L H/L 管脚功能描述 电源地极 对比度(亮度)调整 当RS为高电平时, 数据位DB7—DB0为显示数据 当RS为低电平时, 数据位DB7—DB0为指令数据 当R/W为高电平,E为低电平,数据被读到DB7——DB0 当R/W为高电平,E为下降沿, DB7——DB0的数据被写入 [6]
3.0+5V 电源正极 11
青岛大学本科生毕业论文(设计)
6 15 16 17 18 19 20 EA(SCLK) PSB NC /RESET VOUT A K H/L H/L H/L - H/L - VDD VSS 使能信号 8位数据线:LSB到 MSB 高电平:8位或4位并口方式,低电平:2线或3线串口方式 空脚 低电平复位有效 LCD输出电压端 背光源正端(+5V) 背光源负端(0V) 7-14 DB0-DB7
2.3.3 读写时序
图2.3.3 MCU写资料到ST7920(8位数据线模式)
图2.3.4 MCU 从ST7920读资料(8位数据线模式)
12
青岛大学本科生毕业论文(设计)
2.4 音频解码器
音频解码器采用芬兰VLSI公司出品的VS1003B芯片,该芯片功能强大但是价格低廉,内置了一颗高性能低功耗的DSP音频处理器核心,具有MP3/WMA/MIDI音频解码和ADPCM编码功能,指令RAM大小为5KBytes,数据RAM大小为0.5KBytes,可兼容SPI串行控制接口、UART串行接口,同时拥有数据输入/输出接口和4个通用I/O口。片内还自带一个可变采样率的ADC用于实时频谱分析,一个立体声DAC以及音频耳放电路用来还原音频信号[7]。芯片外形如下图所示:
图2.4.1 音频解码器外观图
2.4.1 MP3文件简介
MP3是一种目前非常流行的音频压缩技术,全称为:Moving Picture Experts Group Audio
Layer III,即动态影像专家压缩标准音频层面3,我们一般简称其为MP3。
MP3利用了Moving Picture Experts Group Audio Layer III 的技术,以超高压缩率将相对较大的音频源文件压缩成容量非常小的MP3文件,即在最大程度保留原来音质的前提下,以最小的音质损失把音频源文件压缩到最小的程度。正是由于体积小、音质好的优点使得MP3格式的音频文件充斥着整个网络音频领域,甚至人们把用来播放音频文件的播放器简称为MP3,可见其在音频压缩领域中的地位。一般一分钟左右MP3格式的音乐文件大小约为1MB左右,这样每首歌平均下来只有不到5Mb左右[8]。本设计中音频解码器对单片机送来的音频文件进行实时的解码(解压缩),还原出高品质的MP3音乐。
13
青岛大学本科生毕业论文(设计)
2.4.2 电气特性
1)AVDD(模拟部分的内核电压):2.5V—3.6V,最佳工作电压为2.8V; 2)CVDD(数字部分的内核电压):2.4V—2.7V,最佳工作电压为2.5V; 3)IOVDD(I/O电压) :0.6—3.6V,最佳工作电压2.8V; 注:VS1003B模块的AVDD = IOVDD = 3.3V,CVDD = 2.5V。 4)输入时钟频率:12兆赫兹到13兆赫兹,最佳值为12.288兆赫兹;
5)VS1003B内部时钟倍频器:芯片复位默认为1倍频—4.5倍频,推荐值为3.0 3倍频,最大值为4.5倍频用于WMA文件的回放。
2.4.3 相关寄存器设置
音频解码器VS1003B一共有16个16bit的寄存器,地址分别为0x00到 0x0F。在VS1003B初始化后的值均为0(模式寄存器 (MODE,0x00) 和状态寄存器 (STATUS,0x01)除外,其在复位后的初始值分别为0x800和0x3C)[9]。
音频解码器VS1003B功能很强大,不仅可以播放各种主流格式的音频文件,还有录音功能以及其他音频处理的能力,因此相关寄存器较为复杂,本设计中仅使用播放音频文件的功能,以下对播放音频文件时用到的各寄存器做相关介绍:
1)0号寄存器:MODE(地址0x00;R/W,可读/写)模式寄存器,是一个较为重要的寄存器,对应不同的功能设置。常用功能有:
软件复位:即向该寄存器写入0x0804,实现软件复位。 启动测试:即向该寄存器写入0x0820,开启测试。
2)1号寄存器:SCI_STATUS(0x01,R/W,可读/写)状态寄存器,通过读取该寄存器可以知道VS1003B的当前工作状态信息。
3)2号寄存器:SCI_BASS(0x02,R/W)低音/高音设置寄存器。
4)3号寄存器:SCI_CLOCKF(0x3,RW)时钟寄存器,一般播放MP3等音频文件时,向该寄存器写入0x9800,即SC_MULT为4,SC_ADD为3 ,SC_FREQ为0 。
5)11号寄存器:SCI_VOL(0xB,RW)音量控制寄存器,左、右声道音量设置分别为高八位、低八位。音量控制不是按照数值的大小而增减,而是采用衰减倍数来从最大到最小音量的衰减,从0x0000(最大声)到0xFFFF(最小声)以0.5dB步进值递减。需要注意的是要想复位时不改变音量值,则只能软件复位,硬件复位将使SCI_VOL清零(即初始化时为最大音量)。
注:若设置为静音(SCI_VOL = 0xFFFF)则将关闭模拟部分的供电。
14
青岛大学本科生毕业论文(设计)
2.4.4 SPI时序图
图2.4.2 SPI时序图
2.4.5 模块引脚说明
数据片选:VS_XDCS接P1.4; SPI同步时钟: SPI_SCL接P2.1; 数据请求:VS_DREQ接P1.5; 片选信号:VS_XCS接P3.7;
SPI同步数据输出: SPI_SI接P2.0; SPI同步数据输入:SPI_SO接P3.0;
复位信号:VS_XRESET 接P3.6;
15