本站小编为你精心准备了无线MIDI双向接口设计参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
MIDI(MusicalInstrumentDigitalInterface)即乐器数字接口,是电子乐器间硬件接口标准和音乐网络中各设备间的通信协议。它用音符数字控制信号、记录音乐,一首完整的MIDI音乐只有几十KB,节省了存储空间,并且包含数十条音乐轨道。目前几近所有的现代音乐都是基于MIDI并结合音色库制作合成。从当前应用市场来看,MIDI音乐系统使用普遍,但音乐现场常用的MIDI音乐系统接口仅支持有线单向传输,不仅连接、移动不方便,而且传输距离受限。本文主要提出了一种MIDI传输速率与标准串口传输速率的匹配方法,设计了基于ZigBee传输协议的低功耗、短距离、高可靠性的无线midi双向传输接口,完美地解决了传统有线单向传输带来的弊端。
1ZigBee无线通信技术
ZigBee是基于IEEE802.15.4标准的低功耗个人局域网协议,并且是基于该协议规定的一种短距离、低功耗的全新无线网络通信技术。它主要应用于远程控制、自动控制和无线传感器网络等相关领域,可嵌入各种设备,同时支持地理定位功能。ZigBee具有低功耗、低成本、可靠性高、网络容量大等特点,并且支持数据透明传输、一对一传输、多对一传输和一对多传输,适用于分布有大量终端设备的网络。其工作方式是:在数千个微小的传感器之间以接力的方式通过无线电波,将数据从一个传感器传到另一个传感器,并进入计算机分析或者被另一终端收集,使得MIDI音乐数据流可以在大量不同设备终端间传输。ZigBee所具有的空闲信道评估(CCA)、动态信道选择、信道算法、频率快变FA及直序扩频技术(DSSS)等功能使其在2.4GHzISM频段表现出很好的抗干扰性能,特别适用于低功耗、高可靠性数据传输场合。现有的应用比较广泛的无线通信技术主要有WiFi、蓝牙技术等,Zigbee技术与其相比具有较大优势,见表1。
2MIDI乐器数字接口
MIDI是一种用来保障音乐网络中各设备终端间数据传送的协议。根据标准MIDI协议的要求,MIDI数据流包括状态和数据两类字节,其基本命令格式主要由指令字节、音符字节及力度字节等组成。指令字节主要包括8mH关断指令和9mH开启指令(m为通道号)两种,音符字节是范围为0~7FH的音符数据,即演奏音符,力度字节也称为速度数据,其范围也是0~7FH,表示击键的力度。
3硬件平台设计
硬件部分由MIDI接口电路、匹配电路和ZigBee无线传输电路组成。由于MIDI传输速率不是标准波特率,因此需要基于匹配电路以实现与传输速率为115.2Kbps的KLZB214A串口转ZigBee模块匹配。匹配电路主要由光电耦合电路及波特率转换电路组成,以达到隔离及电平转换的目的,所选用光电隔离器件型号为6N137,最大可支持1MHz。MIDI为数据传送速率为31.25Kbps的异步串行接口,数据格式由为1个起始位、1个停止位和8个数据位组成。系统采用STM32微处理器硬件USART串口完成MIDI信号的接收和发送,波特率匹配电路选用意法半导体公司的高性能主控芯片STM32F103U8T6。无线传输电路基于可蓝电子公司ZigBee转串口通信模块KLZB214A,该模块内嵌符合标准的ZigBee2007协议栈,采用AES128加密。整机系统框图如图1所示。数据流由MIDIIN_A进入,经过光电耦合电路、波特率匹配电路,将MIDI标准的31.25Kbps的波特率转化为115.2Kbps的高速波特率。紧接着ZigBee模块A将数据传出,ZigBee模块B将数据接收,将接收到的数据通过波特率匹配电路使其115.2Kbps的高速波特率转化为MIDI标准的31.25Kbps波特率,最后通过驱动电路将数据传送到MIDIOUT_B端口输出,如此往复。在实际应用过程中,对需要进行数据传输的设备安装ZigBee模块,通过软件设置,实现在任意两个设备终端间进行数据通信,以达到MIDI数据流传输的目的。系统具体接口连接电路如图2所示。MIDI接口采用标准的5芯DIN连接器。MIDI信号流为电流信号而非电压信号,因此传送线使用带有屏蔽层的双绞线电缆,以增强其抗干扰能力。不仅其传输速率高达31.5Kbps,而且可达到15m传输距离,高于RS-232接口传输距离。
4软件设计
软件设计主要包括STM32F103U8T6微处理器与MIDI接口及ZigBee之间通信以实现波特率的转换。STM32F103U8T6微处理器内部带有两个可编程USART串口,通过对相关寄存器进行设置,可以将MIDI接口的低波特率转换成与ZigBee相匹配的高波特率,反之,可使得ZigBee传输的高速波特率转化为MIDI设备可识别的标准MIDI数据流。主程序流程图如图3所示。系统上电后,系统需要对USART1、USART2、系统时钟等模块进行初始化设置,标志位FLAG在无MIDI数据流时清零,当存在MIDI数据流时,即表明需要传输数据,标志位FLAG置1。目前许多MIDI音乐设备会在MIDI数据流中加入FE、F8等数据标识符以提高硬件连接的活跃性,并且在传输连续多个指令字节、音符字节以及力度字节的情况下,许多MIDI设备会省略指令字节8mH或9mH。为了保证MIDI数据流传输的标准性、准确性和高效性,需要对MIDI数据流进行软件滤波,滤除无用信息并调整数据格式。速率匹配算法包括低速转高速及高速转低速两部分。低速转高速只需在软件上将收到的数据经过软件滤波后,立即转发到下一接口。高速转低速部分,由于输入是高速且输出为低速,所以需将接收到的数据存入数组A中,并设定参数j记录接收数据个数。由于高速数据的来源是低速数据转化而来,高速转低速部分的输入是间断的高速数据流,而输出则为慢速连续的数据流。因此,如图4所示,当i<j时,即输出数据量小于输入数据量,输出继续“追赶”输入。当i=j时,即输出数据量等于输入数据量,令i=j=0,重新计数。根据上述“追赶”算法能够保证在高速转低速的过程中所传输数据的完整性。
5系统传输距离测试
本文的主要创新点是基于ZigBee实现MIDI接口的无线双向接口设计,ZigBee无线传输距离是该技术实现的关键。表2是分别在无障碍物的走廊和在走廊与教室间有障碍物的实验条件下对无线数据传输距离的测试。通过表2可知,在空旷的开放空间条件下,ZigBee无线通信技术传输数据的距离大约在50m,而在有障碍物条件下虽然数据传输的距离有近一半的衰减,但仍可达到25m左右。因此,基于ZigBee的无线双向MIDI接口设计方法适用于大型音乐现场和家庭使用。在实际应用中,可根据实际的环境条件,在不同地点放置主节点,实现远距离的音乐数据传输。
6结论
(1)本文提出了一种基于ZigBee技术的MIDI无线双向接口设计方案,利用KLZB214A无线通信模块,将传统MIDI的有线单向传输方式转换为无线双向传输方式,实现了MIDI接口之间的无线数据通信。(2)在无障碍物和有障碍物条件下传输距离分别达到50m及25m左右,表明基于ZigBee的双向无线MIDI接口设计方案可满足大多数音乐现场和家庭使用。(3)完美解决了传统MIDI接口仅支持有线单向传输的问题,而且连接、移动方便,传输距离远,可以实现任意设备之间的相互数据流传输。
作者:申晗 耿浩 黄平 单位:沈阳工业大学信息科学与工程学院