带有背景音乐的动态图片

上传人:博****1 文档编号:430993705 上传时间:2023-01-27 格式:DOC 页数:18 大小:1.05MB
返回 下载 相关 举报
带有背景音乐的动态图片_第1页
第1页 / 共18页
带有背景音乐的动态图片_第2页
第2页 / 共18页
带有背景音乐的动态图片_第3页
第3页 / 共18页
带有背景音乐的动态图片_第4页
第4页 / 共18页
带有背景音乐的动态图片_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《带有背景音乐的动态图片》由会员分享,可在线阅读,更多相关《带有背景音乐的动态图片(18页珍藏版)》请在金锄头文库上搜索。

1、目录第1章 设计要求1第2章 方案设计及基本原理22.1 方案设计22.2 SPLC501液晶显示模组基本原理22.3 SACM_A2000基本原理72.4 硬件连接9第3章 程序设计103.1 主程序流程图103.2 程序代码113.3 程序调试结果及分析11第4章 结论与体会124.1 实验结论124.2 实验体会12参考文献14附录15单片机的控制系统课程设计第1章 设计要求用一台装有Windows系统和nSP IDE仿真环境的PC机和一个nSP 十六位单片机实验箱来作设计,其中用到的实验箱硬件模块为:SPCE061A核心及周边电路模块(包含32个I/O口),两路音频输出电路,LCD显示

2、模组模块。(1) 编程要求:主程序利用C语言编写。(2) 实现功能:图片显示配合背景音乐播放。由于实验中要播放音乐,对音质的要求比较高,所以本实验要求利用SACM_A2000格式播放音乐。(3) 实验现象:开机后显示图象ON_01,接着按ON_01ON_02ON_03ON_04ON_05ON_06ON_07ON_08ON_010的顺序循环显示动态图片,同时播放背景音乐。第2章 方案设计及基本原理2.1 方案设计新建一个工程ex8_LCD_DynamicGraphicMusic,在新工程里建立一个C语言文件main.c。在IDE的安装路径下找到实验要求的9幅图片。提取这9幅图片的字模数据,一次提

3、取它们的全部图片,不需要一幅幅提取;字模文件保存在新建的ex8_LCD_DynamicGraphicMusic工程文件夹当中,命名为PicData。用一台装有Windows系统和nSP IDE仿真环境的PC机和一个nSP 十六位单片机实验箱来作设计,其中用到的实验箱硬件模块为:SPCE061A核心及周边电路模块(包含32个I/O口),两路音频输出电路,LCD显示模组模块。拷贝语音播放库sacmv26e.lib和头文件a2000.h、a2000.inc到新建的ex8_LCD _DynamicGraphicMusic工程文件夹。拷贝支持sacmv26e.lib的汇编语言文件hardware.asm

4、和IDE的安装路径下找到实验要求的头文件hardware.h、hardware.inc到新建的ex8_LCD_DynamicGraphicMusic工程文件夹。拷贝SPLC501IDE的安装路径下找到实验要求的液晶显示DataOSforLCD.asm、IDE的安装路径下找到实验要求的SPLC501Driver_IO.asm、SPLC501Driver_IO.inc、SPLC501User.c和SPLC501User.h五个驱动程序文件到新建的ex8_LCD_ DynamicGraphic Music工程文件夹。在IDE集成开发环中链接sacmv26e.lib库到新建的工程中。添加IDE的安装路

5、径下找到实验要求的PicData.c、hardware.asm、DataOSforLCD.asm、SPLC501Driver_IO.asm和SPLC501User.c到新建的工程的“Source Files”,添加PicData.h、a2000.h、a2000.inc、hardware.h、hardware.inc、SPLC501Driver_IO.inc、SPLC501User.h六个头文件到“Head Files”。用一台装有Windows系统和nSP IDE仿真环境的PC机和一个nSP 十六位单片机实验箱来作设计,其中用到的实验箱硬件模块为:SPCE061A核心及周边电路模块(包含32个

6、I/O口),两路音频输出电路,LCD显示模组模块。按照程序流程图编写程序。Rebuild All。按照硬件连接图连接硬件。注意把JP3和JP7所有引脚全部断开,即把JP3和JP7的所有跳线全部拔掉,以免对I/O口的数据造成影响。下载程序,运行。2.2 SPLC501液晶显示模组基本原理1. DM Tool字模提取工具利用一台装有Windows系统和单片机仿真环境的PC机和一个凌阳十六位单片机实验箱来作设计,其中用到的实验箱硬件模块为:SPCE061A核心及周边电路模块,两路音频输出电路,LCD显示模组模块。DM Tool字模提取工具提取BMP位图字模的步骤如下:图 2-1 导入图片第一步第一步

7、,导入图片:打开DM Tool工具,新建一个DM Tool的工程,在“Picture”的下拉菜单点击“Import Pictures”,如图 2-1。图 2-2 导入图片第二步点击“Import Pictures”后出现下图的对话框,在IDE的安装路径SPCE061Aexamplemodel_Exaex3_LCD501_Graphicpicturesunplus找到我们要提取的图片sp1,如图2-2。注意:利用“Import Pictures”菜单导入图象的选项只能导入BMP格式的位图; DM Tool工具可以最终生成字模数据的尺寸为240240点,所以用户在导图象时要注意图象的尺寸;但由于S

8、PLC501液晶显示器的屏幕大小为12864点,则在SPLC501液晶显示模块上显示的图片尺寸就不能超过12864点,如超过则无法显示。用户可以利用图像处理的软件对原始图像进行修改后再导入DM Tool中,提取合适的图像字模数据。图 2-3 导入图片第三步选择sp1,点击“打开”,出现图2-3的对话框。按照图中选择“source image”和“Invariable”,点击“OK”就导入图片了。如图2-4,导入的图片就出现在Regionbar转换列表和操作区中。 图 2-4 导入图片后DM Tool界面图 2-5 Edit and Export Cchar File界面第二步,提取字模并保存:

9、点击图标,打开图 2-5的对话框。图 2-6 选择“Down to Up,Left to Right”点击图标,打开图 2-6的对话框。“Select”选择“Down to Up,Left to Right”,点击“char.c file:”右边的浏览图标,打开图 2-7的对话框。图 2-7 选择保存路径图 2-8生成字模数据文件这里选择保存到“我的文档”文件夹中,选择保存的文件名为sunplus,点击保存,回到“Export Cchar File”窗口,点击“OK”。这时字模数据的生成操作已完成,生成了sunplus.c和sunplus.h两个字模数据文件,如图 2-8。导出文件后,用户可以

10、关闭字模数据生成窗口,返回到DM Tool软件的主窗口,以便进行其它的操作,DM Tool的使用方法可以参考DM Tool的用户手册。和导出的汉字字模数据相同,BMP位图字模数据也以数组的形式保存,可以直接包含到工程中进行引用。2. SPLC501液晶显示模组显示图片图2-9 SPLC501液晶显示模组显示BMP位图的过程利用SPLC501液晶显示模组显示BMP位图和显示汉字的过程基本相同,见图 2-9。图2-10 利用SPLC501液晶显示模组显示BMP位图需要的操作过程利用SPLC501液晶显示模组显示BMP位图的过程为:新建一个工程,利用字模提取工具提取字模,把字模数据文件保存在工程文件

11、夹,添加字模数据文件到工程,拷贝并添加驱动程序文件,编写程序,运行显示。利用一台装有Windows系统和单片机仿真环境的PC机和一个凌阳十六位单片机实验箱来作设计,其中用到的实验箱硬件模块为:SPCE061A核心及周边电路模块,两路音频输出电路,LCD显示模组模块。如图2-10所示。图2-11硬件连接框图硬件连接图如图 2-11,分别用实验箱跳线连接IOB4与AO,IOB5与RWP,IOB6与EP,IOB9与/CS,IOA8-IOA15与D0-D7。即用跳线把实验箱JP6(*)的所有引针全部短接。利用一台装有Windows系统和单片机仿真环境的PC机和一个凌阳十六位单片机实验箱来作设计,其中用

12、到的实验箱硬件模块为:SPCE061A核心及周边电路模块,两路音频输出电路,LCD显示模组模块。另外,VR、C86和PS跳线都与V3短接,把SPLC501液晶显示模组的时序选择为6800时序。2.3 SACM_A2000基本原理SACM_A2000压缩算法压缩比较小(8:1),利用SPLC501液晶显示模组显示BMP位图的过程为:新建一个工程,利用字模提取工具提取字模,把字模数据文件保存在工程文件夹,添加字模数据文件到工程,拷贝并添加驱动程序文件,利用一台装有Windows系统和单片机仿真环境的PC机和一个凌阳十六位单片机实验箱来作设计,其中用到的实验箱硬件模块为:SPCE061A核心及周边电

13、路模块,两路音频输出电路,LCD显示模组模块。编写程序,运行显示。所以具有高质量、高码率的特点,适用于高保真音乐和语音。 图 2-12 自动播放图2-13 IRQ4_1KHz中断凌阳SACM_A2000压缩算法有两种语音播放方式:自动方式和手动方式。凌阳SACM_A2000压缩算法的语音播放要经过一个语音播放初始化,即初始化为自动方式或者手动方式,取数据,填充语音队列(或者是解压缩队列),解压缩,输出播放的过程。自动播放时,取数据,填充语音队列及解压缩只要调用SACM_A2000_ServiceLoop()一个函数就可以实现。参见图2-12。由于CPU处理的速度非常快,于是在视觉上,就会感觉到

14、一个动态的图片并且配有音乐背景。IRQ4_1KHz中断服务程序流程图如图2-13。在自动播放中,语音播放的主循环当中调用SACM_A2000_ ServiceLoop()函数,完成获取语音资源并填充语音队列、进行语音解码的操作;主循环中要先显示一帧或者几帧图象,而显示程序相对来说耗时较长;为了保证语音资源的及时获取,同时得到及时的解码,在设计当中利用IRQ4的1KHz中断用SACM_ A2000_ServiceLoop()函数,主循环当中只进行刷新显示即可。2.4 硬件连接图 2-14 硬件连接图如图2-14硬件连接图,IOA8-IOA15连接SPLC501液晶显示模块的D0-D7,IOB4连

15、接AO,IOB5连接RWP,IOB6连接EP,RE连接/RES,IOB9连接/CS,VR、C86和PS跳线都与V3短接,把SPLC501液晶显示模组的时序选择为6800时序;即把JP6中所有左右两排的引针全部用跳线短接,把J8和J13靠左边的两个引针用跳线短接起来。第3章 程序设计3.1 主程序流程图图3-1主程序流程图主程序流程图如图3-1,初始化操作包括初始化LCD和初始化语音播放,语音播放初始化为自动播放方式;开IRQ4_1KHz中断,完成获取语音资源并填充语音队列、进行语音解码的操作;主循环中要先显示一帧或者几帧图象,而显示程序相对来说耗时较长;为了保证语音资源的及时获取,同时得到及时的解码,在1KHz中断当中完成语音的服务程序(SACM_ A2000_ServiceLoop())调用,以及进行计数累加(定义有一个全局的变量,用于中断计时),响应300次IRQ4_1KHz中断的时间刚好是LCD动态图片的显示刷新时间

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

当前位置:首页 > 资格认证/考试 > 自考

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