课程设计报告
音频播放器
班
级
: 20090614
学
号
姓
名
2012 年 10 月
课程设计题目
音频播放器设计
主要内容
学习WAV格式音频播放原理、数字音频接口及IIS总面应包含所有的按键,并且要歌曲的曲目单, 还有显示歌词。
3. 2 触摸屏按键设计
本系统要完成触摸屏按键的功能,即要让系统接收到触摸屏的消息,如果触摸点在 pFirst_Button_RECT 里,创建播放界面及置这个 framestate 标志位为 1。
定义矩形框结构、设置 PID 参数轴 1P 的文本框、将字符转换为 Unicode 数据、设 置文本框内容。
定义矩形结构、创建列表框控件、焦点移到列表框控件、将文件名转换为Unicode、 向列表框中添加表项、将文件名存入文件名数组、重画控件。
3. 3 编码设计
本系统的流程是初始化硬件、初始化操作系统和创建用户任务。
因为只要硬件就得有驱动程序才能去使用,
文件都是驱动程序。这一层即是驱动层(对于本系统最重要的是液晶驱动和 IIS 音频驱 动)。
上面一层是 API 接口层,它给程序提供很多接口(即函数),它可以在 之 间调用。
本系统的所有功能全部在用户任务里,设计的任务 maintask 只有一个。 在用户任务中设计一些控件的创建如文本框、列表框,还有showbmp来显示图片。 这样便可以出现相应的按钮。
然后就是等待系统的消息(即pMsg=WaitMessage(O))在这里有两种。而本部分主 要设计的是触摸屏消息。接下来是对消息进行更加具体的判定。
4. 系统实现 当初始界面接收到触摸屏消息时,如果触摸点在 pFirst_Button_RECT 里,创建播放 界面及置这个framestate (自己定义的状态标志位)标志位为1。
if(IsInRect2(pFirst_Button_RECT, pTouch_Position))
{
ClearScreen(); Frame_State=1;
ClearScreen();
ShowBmp(pdc,bmpname2,10,90); DrawButton(pPlay1_Button); DrawButton(pPlay2_Button);
DrawButton(pPlay3_Button); DrawButton(pStop_Button); DrawButton(pNext_Button); DrawButton(pPrior_Button); DrawButton(pExit_Button);
DrawButton(pOpen_Button); CreateText();
} }
以上代码即是显示系统操作界面的代码,只要触摸了图 中的 ENTER 键,便可 以进入操作界面。显示播放第一首、第二首、第三首歌曲键,停止键, OPEN 键,下一
曲键,上一曲键。
图 初始界面 if(Frame_State==1)// 当正处在播放界面时
{ if(IsInRect2(pPlay1_Button_RECT, pTouch_Position))
{
ShowBmp(pdc,bmpname
嵌入式音乐播放器实验报告 来自淘豆网m.daumloan.com转载请标明出处.