瓜子厂家
免费服务热线

Free service

hotline

010-00000000
瓜子厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

多媒体摇奖系统的设计与实现

发布时间:2020-06-30 23:19:53 阅读: 来源:瓜子厂家

本文介绍的摇奖系统是一种采用MCS-51单片机控制彩灯亮暗状态和音响变化的多媒体系统,该系统将传统的摇奖功能与电脑的多媒体技术相结合,最主要的特点体现在两个方面:第一是采用定点单片机来产生不同的随机数来设立不同的奖项,从而体现摇奖的公平性,同时能事先设立不同奖项的产生概率,因此商家能控制每一摇奖组中产生各种奖项的数目,从而来保护商家的利益,并且具有摇奖结果的统计功能。第二是该系统能根据不同的摇奖结果来产生不同的声、光、电显示效果,从而增加趣味性,提高产品的技术含量。

本文引用地址:为了实现上述两大特点,在开发该系统时,需要解决两大技术问题:第一,如何利用定点单片机来产生随机数,为此本文提出了一种基于定点单片机的随机数产生算法,同时也提出了不同等级奖项的产生概率的控制方法。第二,如何实现声光及其语音系统?本文介绍了采用ISD2500数码语音芯片来实现摇奖语音系统的具体方法。

在多媒体摇奖系统中,各种奖项的产生是通过的MCS-51单片机产生的随机数来实现的。 MCS-51系列单片机是目前8位定点单片机的主流,数量约占8位单片机的38.3%,在实时控制、智能化仪表等方面应用最广。该单片机有一个8位的面向控制的CPU、1个128字节的RAM、21个特殊功能的寄存器、4个8位并行I/0端口、1个全双工异步串行端口、2个16位定时器和计数器、2个优先级别的5个中断源,其中P0~P3是I/O端口,这4个并行I/O端口影射到SFR(特殊功能寄存器)。通过对这些寄存器的读写,可以实现从相应I/O端口的输入和输出。由于PO~P3端口被影射到特殊功能寄存器,对这些端口寄存器的读写就实现了信息由相应端口的输入和输出。尽管MCS-51单片机具有较强控制I/O的功能,但由于MCS-51是一个8位的定点单片机,而且RAM也较小,不能采用类似于浮点单片机的随机数的产生函数等算法来生成随机数。因此对定点单片机来说,如何生成随机数是一个很难的技术问题。根据随机数来确定奖项,这是体现摇奖系统的公平性的最基本要求。本文根据MCS-51的特点,提出了一种很简单而且很巧妙的获取随机数的方法。

MCS-51是一种工作频率较高的单片机,其工作频率可达12MHz,指令周期为1ms,因此其中的计数器的计数单位为1ms,因此我们可以对用户按下摇奖按钮到松开按钮进行以微秒为单位计数,并将该计数结果对一定大小的数(我们采用100)进行求余运算,由于计数单位是微秒级,用户无法控制计数器的求余结果,因此我们可以将此余数看作随机数,以此作为确定奖项的依据。为了控制奖项的产生概率,我们设立了一个多对一的影射表,将0~99的余数分别影射到不同的奖项中,从而实现对不同奖项产生概率的控制。例如,如果在100人为1组的抽奖活动,希望产生5种不同的奖项,并希望产生的一等奖的概率为2%,二等为8%,三等为20%,四等为30%,五等为40%。因此在设立影射表时,可以将100个余数中的2个影射到一等奖,8个不同的余数影射到二等奖,20个不同的余数影射到三等奖,30个不同的余数影射到四等奖,剩下的40个余数影射到五等奖。在建立影射表时,影射到同一等级奖项的余数最好不要连续,因为经过反复测试,证明如果不连续余数的影射会使奖项产生的分布性更好。

摇奖系统的语音子系统能根据不同结果和所处的不同状态来自动产生不同的语音和音乐信号。组成该系统的核心部件是美国信息存储器件(ISD)公司的2500数码语音芯片,该芯片采用了直接模拟量存储技术,能较好地保留模拟量中的有效成分,音质好,即使录放音乐歌曲也能保真还原;在片内有480Kb的EEPROM,因此掉电也不会丢失信息;10个地址输入端,寻址能力可达1024位,因此可分600段,并设有溢出端,便于多个器件级联。采用该芯片组成的语音系统可以获得比传统的语音合成方式更好的音质,更低的成本,更高的可靠性和灵活性。

根据摇奖的状态数和奖项数,事先在2500语音芯片中设置相应的语音段,并录制不同的语音和音乐信号。单片机MCS-51在不同的时间根据摇奖系统所处的不同状态或者是摇奖后的不同奖项来控制2500语音芯片来播放不同段的语音和音乐,从而给观众听觉上感官效果。并配合摇奖机面板上的不同彩灯的闪烁效果,使观众可以处于一个五彩缤纷的声、光、电高科技效果中。

多媒体摇奖系统由控制、灯光显示、语音和接口等子系统组成,系统的组成框图如图1所示。其中灯光显示子系统是由5组不同的颜色的彩灯组成,每种颜色代表一种奖项,在观众按下摇奖按钮并松开之后,某一组颜色的灯亮表示该观众获得某项奖项。另外,在摇奖系统处于不同的阶段,各种彩灯以不同的频率轮流闪烁。灯光显示子系统在控制子系统下工作。

控制子系统是整个摇奖系统的核心,它不仅能够根据事先设置的摇奖概率来产生不同的奖项,而且还能够控制不同彩灯的亮暗和语音播放来表示摇奖的结果。控制子系统的核心部件是AT89C51单片机,该单片机通过8位并行I/O端口P0口的前5位P0。0到P0。4来连接5组彩灯,并通过设置相应的位置位和复位来控制彩灯的亮暗,同时也可控制相应语音段的播放。其控制流程图如图2所示。

语音子系统能根据摇奖后的不同结果和所处的不同状态来播放不同的语音和音乐,其核心是ISD2500数码语音芯片,该芯片以分段的形式(5段)存储了5个声音文件(.WAV),在何时播放何段声音文件是由单片机来控制的。ISD2500的分段寻址由A0到A9来控制,其录音和放音功能均从设定起始地址开始,录音结束是由停止键确定,芯片自动在该段的结束位置插入结束标志(EOM);而放音时芯片遇到EOM标志就自动停止放音。ISD2500地址的空间分配如表1所示,其中0~599作为分段用,地址600~767未使用,地址768~1023为工作模式选择。

由于本系统只采用了5段语音,所以MCS-51单片机只需使用并行口P2中前5位来控制,即分别为P2。0到P2。4,控制代码如下所示:。

Voice:

Mov a, r5;

Rl a

Mov r5, a

Djnz r4,voice

Mov p0,r5

Mov a,r5

Cpl a

Mov r5, a

Mov p2,r5

Call delay1

Mov p2,#ffh

……

其中,delay过程是一个延迟子程序,主要用来消除按钮的抖动。

另外,本摇奖系统还建立了一个摇奖结果的查询子系统,该功能只能是系统管理员使用,由密码锁定,主要用于管理员来查询各奖项的得奖人数。采用两个七段数码管来显示,其中数码管是通过3个74LS164移位寄存器与单片机连接。AT89C51单片机通过串行口将所要显示的结果的数字字型码以逐位方式送入到移位寄存器链,构成字符的寄存显示。同时操作员还可以通过面板控制系统对系统参数做初始化。

利用定点单片机来产生随机数和随机数产生概率的控制算法,并以该算法为基础,开发的具有语音播放、同时具有声光电显示效果的多媒体摇奖系统,具有科技含量高,制造成本低廉等特点,可广泛应用于商家的促销活动和电视台举办各种趣味活动中。■

参考文献

1 陈光东,赵性初,单片微型计算机原理和接口技术,华中理工大学出版社。

2 姚凯学等,单片机原理及应用,重庆大学出版社。

山东职业装订制

北京防静电工服制作

沈阳防静电工服定制