手持信息终端上MIDI播放的实现
时间:08-31
来源:互联网
点击:
软件的实现
通过对软件平台的介绍,可以知道Asix OS是一个嵌入式的多任务实时操作系统,所有应用程序都是通过任务调度机制来实现的。因此要实现MIDI的播放需要软件在以下三个层次给予支持:音频驱动模块、音频服务模块、应用程序(MIDI播放器)。当点击应用程序(如MIDI播放器)后,操作系统就会进行任务调度,然后启动相应的服务模块(音频服务模块),通过服务模块再调用底层驱动来播放MIDI音乐。下面将具体阐述一下各模块的功能和实现:
该模块是MIDI能够播放声音的基础,它直接和底层硬件相关,通过CPU中PWM模块的一些寄存器来实现声音设备的打开关闭等操作。它通过声音服务模块被所有的需要发音的程序所调用,是所有发音程序得以正常工作的基础。
它由以下几个子模块组成:PWM音频设备初始化模块;PWM音频设备回放率配置模块;PWM音频设备启动模块和关闭模块;PWM音频设备工作模式选择模块。
该模块屏蔽了底层的驱动,为应用程序访问音频设备提供了统一的接口,使用户无需关心底层的具体实现即可以完成声音设备的控制,使之具有较好的移植性。它主要通过消息机制来实现,为应用程序和底层驱动模块的通信提供了一个桥梁,从而避免了直接和硬件打交道。服务层主要由定时播放模块、定长播放模块和配置模块组成。
音频服务模块是播放MIDI的关键,它处于承上启下的作用,用于连接上层的应用程序和底层的设备驱动。该模块中MIDI解码子模块完成对MIDI文件的解释,并得到最终要播放的音符信息和各种控制信息链表,由于MIDI的解码涉及到MIDI文件的规范协议和具体的算法,这里不作详细的描述。
音频服务模块提供两个层次的接口,面向应用程序的接口和面向底层的接口。
服务模块的接口工作原理如图4所示。
图4 服务模块接口
MIDI播放模块包括MIDI播放器(用来测试MIDI播放的应用程序之一),此外还可以在手机铃声、信息提示音、笔触音等等程序中实现MIDI的播放,但其实现原理基本上都是一样的。除了界面上的设计,主要就是调用MIDI服务模块提供的几个接口函数即可实现MIDI的播放,这里不作详细介绍。
结语
本文的手持信息终端平台经过实际测试,播放效果令人满意,能够和一般的手机铃声相媲美。由于MIDI文件的体积较小,正好可以弥补手持信息终端存储容量小的缺陷,因此它具有广阔的应用前景。
通过对软件平台的介绍,可以知道Asix OS是一个嵌入式的多任务实时操作系统,所有应用程序都是通过任务调度机制来实现的。因此要实现MIDI的播放需要软件在以下三个层次给予支持:音频驱动模块、音频服务模块、应用程序(MIDI播放器)。当点击应用程序(如MIDI播放器)后,操作系统就会进行任务调度,然后启动相应的服务模块(音频服务模块),通过服务模块再调用底层驱动来播放MIDI音乐。下面将具体阐述一下各模块的功能和实现:
该模块是MIDI能够播放声音的基础,它直接和底层硬件相关,通过CPU中PWM模块的一些寄存器来实现声音设备的打开关闭等操作。它通过声音服务模块被所有的需要发音的程序所调用,是所有发音程序得以正常工作的基础。
它由以下几个子模块组成:PWM音频设备初始化模块;PWM音频设备回放率配置模块;PWM音频设备启动模块和关闭模块;PWM音频设备工作模式选择模块。
该模块屏蔽了底层的驱动,为应用程序访问音频设备提供了统一的接口,使用户无需关心底层的具体实现即可以完成声音设备的控制,使之具有较好的移植性。它主要通过消息机制来实现,为应用程序和底层驱动模块的通信提供了一个桥梁,从而避免了直接和硬件打交道。服务层主要由定时播放模块、定长播放模块和配置模块组成。
音频服务模块是播放MIDI的关键,它处于承上启下的作用,用于连接上层的应用程序和底层的设备驱动。该模块中MIDI解码子模块完成对MIDI文件的解释,并得到最终要播放的音符信息和各种控制信息链表,由于MIDI的解码涉及到MIDI文件的规范协议和具体的算法,这里不作详细的描述。
音频服务模块提供两个层次的接口,面向应用程序的接口和面向底层的接口。
服务模块的接口工作原理如图4所示。

图4 服务模块接口
MIDI播放模块包括MIDI播放器(用来测试MIDI播放的应用程序之一),此外还可以在手机铃声、信息提示音、笔触音等等程序中实现MIDI的播放,但其实现原理基本上都是一样的。除了界面上的设计,主要就是调用MIDI服务模块提供的几个接口函数即可实现MIDI的播放,这里不作详细介绍。
结语
本文的手持信息终端平台经过实际测试,播放效果令人满意,能够和一般的手机铃声相媲美。由于MIDI文件的体积较小,正好可以弥补手持信息终端存储容量小的缺陷,因此它具有广阔的应用前景。
电子 嵌入式 电阻 触摸屏 电路 PWM 放大器 相关文章:
- 变革电信网网络安全框架 (01-03)
- 浅谈IPv6技术的若干问题(01-09)
- LG电子低成本CDMA手机的设计原则剖析 (01-12)
- 专家教你做个病毒高手(04-30)
- 数据库归档要考虑的四大问题(05-26)
- 5个步骤成功加密电子邮件(07-18)
