键盘电子乐器

合集下载

电子琴键盘的工作原理

电子琴键盘的工作原理

电子琴键盘的工作原理电子琴作为一种电子乐器,通过按下键盘上的按键来发出音乐声音。

那么,它是如何工作的呢?本文将详细介绍电子琴键盘的工作原理。

一、概述电子琴键盘是电子琴的最主要部分之一,通过按下琴键来触发产生音色。

常见的电子琴键盘一般由黑白两种按键构成,黑键用于演奏半音,白键用于演奏全音。

二、按键感应当手指按下琴键时,电子琴会通过某种方式感应到这个动作,并且产生相应的音色。

目前市面上常见的电子琴键盘主要分为两种工作原理:力触式和触摸式。

1.力触式力触式的电子琴键盘,通常采用机械按键,每个琴键下方都有一个触发器。

当手指按下琴键时,触发器会受到一定的力,然后产生一个电信号,传递给琴体的音源模块,最终通过音箱发出声音。

2.触摸式触摸式的电子琴键盘,一般没有机械按键,而是在琴键表面覆盖一层感应薄膜。

当手指接近琴键表面时,感应薄膜会被触摸,从而触发产生电信号,后续的音色发声过程与力触式类似。

三、电信号转换当感应到按键动作后,电子琴需要将触发的信号转换成能够识别的电信号,然后传递给音源模块进行后续的音色合成。

1.编码转换电子琴通过编码转换器将按键触发的信号转换成数字信号,以便后续的处理和控制。

2.数字信号处理转换成数字信号后,电子琴就可以对其进行各种处理,例如音色选择、音量调节、效果添加等。

这些处理通常由内置的音源芯片来完成。

四、音源模块音源模块是电子琴的核心部分,它负责将数字信号转换为声音。

音源模块一般由合成器、音频输出和音箱组成。

1.合成器合成器是电子琴中最为重要的部分之一,它能够根据输入的数字信号合成各种不同的音色效果。

合成器内部包含了各种电路和算法,可以模拟出各种乐器的声音,例如钢琴、吉他、鼓等。

2.音频输出和音箱音频输出将合成器产生的音频信号转换为模拟信号,然后通过音箱放大器输出到扬声器上。

音箱的质量和性能直接影响着电子琴发出的声音效果。

五、总结电子琴键盘通过按键感应、电信号转换和音源模块合作,最终实现了演奏出各种音色的功能。

电子琴的原理

电子琴的原理

电子琴的原理电子琴是一种电子乐器,其原理是基于电子技术和音频处理技术的应用。

通过按下琴键,电子信号经过处理产生对应的音频输出,实现音乐的演奏。

下面将简要介绍电子琴的原理及其主要组成部分。

一、电子琴的原理主要包括以下几个方面:1. 音频产生:电子琴通过按键输入产生电子信号,然后将这些信号转化为音频信号。

按下琴键时,电子信号会触发振荡器产生相应频率的电信号,经过放大并经过音效处理模块,最终转化为音频输出。

2. 声音合成:电子琴具备多个音色和音效,实现音的合成。

通过改变振荡器的频率、波形和音色,电子琴可以模拟多种不同的乐器声音,如钢琴、吉他、小提琴等。

此外,电子琴还可以通过音效处理模块添加混响、合唱、合奏等音效。

3. 键盘输入:电子琴的键盘用于输入音符和控制信号。

每个键盘上的琴键都与一个开关相连,按下琴键时,开关闭合并向内部电路发送信号,触发音频产生。

4. 控制电路:电子琴通过控制电路实现音频信号的处理和调节。

通过控制电路,可以调节音量、音色、音效等参数,使演奏效果更加丰富。

二、电子琴的组成部分电子琴由以下几个主要组成部分构成:1. 键盘:电子琴的键盘由多个琴键组成,每个琴键表示一个音符。

琴键通常以黑白相间的方式排列,按下琴键时触发音频产生。

2. 信号处理电路:信号处理电路是电子琴的核心部分,包括振荡器、放大器、音色合成芯片等。

振荡器产生不同频率的电信号,放大器将信号放大并输出,音色合成芯片实现不同音色的合成和处理。

3. 音箱:音箱负责将音频信号转化为可听见的声音,使演奏出的音乐能够传达给人们听觉。

音箱具有放大和扩散音频信号的功能,提供更好的听觉体验。

4. 控制面板:控制面板通常位于电子琴的顶部,用于调节音量、音色、音效等参数。

通过控制面板,演奏者可以根据需求自由调节各种参数,实现更加个性化的演奏效果。

5. 电源:电子琴通常使用电池或外部电源供电。

电源提供电能供应给电子部件正常运行。

三、小结电子琴是一种基于电子技术和音频处理技术的现代乐器。

钢琴与电子琴比较两种键盘乐器的音色与表现力

钢琴与电子琴比较两种键盘乐器的音色与表现力

钢琴与电子琴比较两种键盘乐器的音色与表现力钢琴与电子琴比较:两种键盘乐器的音色与表现力钢琴和电子琴都是常见的键盘乐器,它们各自有着独特的音色和表现力。

本文将比较这两种乐器在音色质量、表现力以及适用场景等方面的不同之处。

一、音色质量钢琴作为一种传统乐器,其音色质量举世闻名。

它产生的声音纯净、饱满,具有丰富的谐波与共鸣效果。

钢琴的音色表现力强大,能够通过不同的音阶、音域和力度产生多样的音效。

同时,钢琴的音色在各个音区都相对平衡,不易出现音色偏差。

电子琴的音色则是通过电子技术模拟和合成的。

虽然也能够产生出高质量的音色,但与钢琴相比,在音质的还原度上稍逊一筹。

电子琴的音色较为清晰,有时带有一定的电子感,可能缺少一些钢琴的深邃与温暖。

二、表现力钢琴因其独特的键盘结构,赋予了演奏者极高的表现力。

弹奏钢琴时,演奏者可以通过对按键的力度、速度和延音等细微的控制,来传达情感和感情的变化。

这种钢琴特有的表现力使其成为古典音乐、爵士乐和流行音乐等多种音乐风格中不可或缺的乐器。

电子琴由于其电子化的属性,演奏时对表现力的要求相对较低。

虽然现代电子琴通常具备一些模拟钢琴的功能,如加权键盘、触控力度等,但仍然不能与钢琴相提并论。

然而,电子琴在其他方面具备优势,比如可以通过各种音色切换和特效来探索新的音乐风格和创作方式。

三、适用场景钢琴通常用于正式的音乐会厅、学校和教堂等场合。

它的音色庄重、深情,能够给人带来一种独特的音乐享受。

钢琴的表现力和音质也使其成为伴奏和独奏的理想选择。

相比之下,电子琴更加灵活多样,适用于电子音乐、流行乐队和现代放克等音乐风格。

电子琴可以模拟各种乐器的音色,能够生成出更丰富多样的音效。

此外,电子琴的便携性也使得它在舞台表演和巡演中得到广泛应用。

结论:综上所述,钢琴与电子琴在音色和表现力上存在明显的差异。

钢琴以其独特的音质和强大的表现力而备受推崇,适用于正式场合和需要高水平演奏的音乐作品。

而电子琴则注重灵活性与多样性,在现代音乐和创作中发挥着重要的作用。

音乐中的键盘乐器分类介绍

音乐中的键盘乐器分类介绍

音乐中的键盘乐器分类介绍音乐是人类创造的一种美妙的艺术形式。

在音乐的世界里,键盘乐器扮演着不可忽视的角色。

它们以其独特的音色和表现力,使音乐作品更加丰富多样。

本文将介绍一些常见的键盘乐器,带你进入键盘乐器的奇妙世界。

一、钢琴钢琴是最常见的键盘乐器之一。

它由一系列黑白相间的琴键和弦构成,横跨了整个音域。

钢琴以其广泛的音域和动态范围,被誉为“乐器之王”。

它的弹奏方式是通过按压琴键,使琴弦被钢琴音箱的琴琴牙撞击,发出声音。

钢琴有三个专业分类:黑色钢琴,白色钢琴和电子钢琴。

每个分类都有其独特的声音特点和用途。

二、电子琴电子琴是一种用电子技术制造的键盘乐器。

与传统的钢琴不同,电子琴可以通过电子合成技术模拟各种不同的音色。

它通常具有多种音色选择、节奏伴奏、录音和播放功能,使其成为现代音乐表演中不可或缺的乐器。

电子琴适用于各种音乐风格,并广泛用于独奏、伴奏和合奏。

三、风琴风琴是一种古老的键盘乐器。

它使用管风琴或电子风琴。

管风琴的声音由空气吹动多个管道产生,而电子风琴则通过数字音源产生声音。

风琴以其庄重、宏伟的音色而闻名。

它在基督教教堂音乐、古典音乐演奏和风琴独奏中得到广泛应用。

四、独立键盘乐器除了上述常见的键盘乐器外,还有一些独立键盘乐器,如扬琴、键式口琴和合成器。

扬琴使用一组触键,有助于演奏传统民间音乐。

键式口琴是一种受欢迎的口腔乐器,通过吹气和按键可以演奏出音乐。

合成器是一种电子乐器,可以通过调整不同参数来合成各种音色。

五、新兴的键盘乐器随着科技的不断发展,新兴的键盘乐器不断涌现。

其中一种是MIDI控制器键盘,它可以通过与计算机或其它音源设备的连接,实现音乐的创作和演奏。

另一个例子是手掌琴,它是一种手持的小型键盘乐器,可以在旅行或户外演奏。

综上所述,键盘乐器在音乐创作和演奏中发挥着重要的作用。

无论是古典音乐还是现代流行音乐,键盘乐器都具有独特的音色和表现力。

希望通过本文的介绍,读者对键盘乐器有更深入的了解,并能在欣赏音乐的同时,更好地欣赏键盘乐器的美妙之处。

音乐中的键盘乐器种类概览

音乐中的键盘乐器种类概览

音乐中的键盘乐器种类概览键盘乐器是一类以按键为主要发声方式的乐器。

它们以其特殊的演奏方式和丰富多样的音色而倍受音乐家和爱好者的喜爱。

本文将对音乐中常见的键盘乐器进行概述,以便更好地了解这些乐器。

一、钢琴钢琴是键盘乐器中最著名、最重要的一种。

它由键盘、弦和音箱等部分组成,通过按下按键触发弹脚机构,使弦发声。

钢琴的音色宽广,音域丰富,能够表达各种情感。

它的演奏技巧丰富多样,深受音乐家和观众的喜爱。

二、电子琴电子琴是使用电子合成技术制造的键盘乐器。

相较于钢琴,电子琴音色更加多样化,可模拟多种乐器的音色,如风琴、大提琴等。

它体积小巧、便携,适合舞台表演和现代流行音乐演奏。

同时,电子琴还具备自动伴奏和录音等功能,方便演奏者进行创作和演示。

三、风琴风琴是一种以风力发声的键盘乐器。

它利用风箱和管风琴片发声,音色庄重、厚重。

风琴技巧独特,演奏时需要手指、脚踏板和情感的协调运用。

风琴广泛应用于教堂音乐和古典音乐演奏,是宗教仪式和庄严场合的不可或缺的乐器。

四、合成器合成器是一种能产生合成音的电子乐器。

它通过数字、模拟合成技术模拟各种声音,包括乐器、自然音效等。

合成器的音色生动多样,是现代音乐、电子音乐和电影配乐中常用的乐器。

演奏合成器需要掌握不同的音色和音效调节技巧,能够创造出缤纷多彩的音乐世界。

五、键琴键琴是一种小型键盘乐器,以其简洁的结构和便携性受到青睐。

它常常作为初学者学习音乐的入门工具,也经常出现在肖邦和巴赫等作曲家的音乐中。

键琴不仅可以作为独奏乐器使用,也可以与其他乐器合奏。

六、手风琴手风琴是一种多功能的键盘乐器。

它可以手部同时弹奏多个按键,通过风箱和固定在其中的双簧片制造声音。

手风琴音色丰满、明亮,常被用于民间音乐、舞蹈音乐和器乐演奏中。

演奏手风琴需要掌握左右手的协调和特殊的演奏技巧。

七、电钢琴电钢琴是一种将钢琴音色通过放大器输出的电子乐器。

它结合了钢琴和电子技术的特点,音色柔和、清澈,演奏起来便捷舒适。

电子琴入门教程(完整版)

电子琴入门教程(完整版)

电子琴入门教程(完整版)一、了解电子琴电子琴是一种电子乐器,它模拟了多种乐器的声音,并通过键盘进行演奏。

与传统的钢琴相比,电子琴具有更多的功能和音效,适合初学者和音乐爱好者。

二、电子琴的选购1. 音色:选择音色丰富、逼真的电子琴,能够更好地模拟各种乐器的声音。

2. 键盘:键盘的数量和触感对于演奏的舒适度和准确性有很大的影响。

一般来说,初学者可以选择61键的电子琴。

3. 功能:根据个人需求选择功能丰富的电子琴,如内置音乐库、录音功能、节拍器等。

三、电子琴的基本操作1. 开机与关机:按下电源按钮,电子琴即可开机。

使用完毕后,按下电源按钮关机。

2. 音色选择:通过音色选择按钮或旋钮,可以选择不同的音色。

3. 音量调节:通过音量旋钮或按钮,可以调节电子琴的音量。

4. 节拍器:打开节拍器功能,可以帮助初学者练习节奏感。

四、电子琴的基本演奏技巧1. 手指姿势:将手指自然弯曲,指尖轻轻放在键盘上,避免用力过猛。

2. 音阶练习:从简单的音阶开始练习,熟悉键盘的布局和手指的移动。

3. 和弦练习:学习和弦的构成和演奏方法,提高演奏的丰富性和表现力。

5. 音乐作品演奏:选择一些简单的音乐作品进行演奏,逐渐提高演奏水平。

五、电子琴的保养与维护1. 清洁:定期使用软布擦拭键盘和琴体,避免灰尘和污垢的积累。

2. 避免潮湿:将电子琴放置在干燥通风的环境中,避免潮湿和阳光直射。

3. 防止碰撞:避免将电子琴放置在容易碰撞的地方,以免造成损坏。

4. 电源管理:在不使用电子琴时,及时关闭电源,节省能源并延长使用寿命。

六、音乐理论知识的学习1. 音乐符号:了解并掌握音乐符号的含义,如音符、休止符、节奏等。

2. 音阶与和弦:学习音阶的构成和和弦的进行,提高对音乐的理解和演奏能力。

3. 调性与调号:了解调性与调号的关系,能够更好地理解和演奏不同调性的音乐作品。

4. 音乐风格:了解不同音乐风格的特点,如古典、流行、爵士等,培养自己的音乐品味。

电子琴简谱

电子琴简谱

电子琴简谱
电子琴是一种键盘乐器,在20世纪50年代中期开始流行,它拥有一种柔和而优雅的音色,令人印象深刻。

它可以模拟许多乐器,并且它拥有很多可以编曲、录制音频和播放音乐的功能,是一种很受欢迎的乐器。

除了技术上的优势,电子琴的简谱也是很容易学习的。

一般而言,电子琴的简谱通常可以分为两种:标准简谱和特殊简谱。

标准电子琴简谱主要由五种符号组成,即黑键,白键,节奏符号,过渡符号和变调符号。

其中,黑键是指音符,并以空格或黑点表示;白键是指空白符号,表示没有音符;节奏符号是指提示玩家演奏曲子是以何种速度和节奏;过渡符号是指当一个音符在同一个音高上重复演奏时,用于表示下一个音符的符号;变调符号是指改变曲子音调的符号。

特殊电子琴简谱除了上述标准简谱外,还添加了一些特殊的符号,特别是在某些曲子的编曲中。

特殊符号的存在,可以帮助玩家明确演奏时的动作,例如,弓弦符号“~”可以表示电子琴的弓弦需要轻拨;轻拨符号“+”可以提示玩家用轻拨的动作将音符从低音往高调演奏,等等。

为了更好地学习电子琴简谱,玩家需要具备一定的乐理基础,特别是基本音阶和节拍的熟悉,这些是学习简谱的基础。

此外,应该具备一定的练习习惯,慢慢地练习曲子,把重点放在节奏的把握上,熟悉简谱的符号,结合视觉上的理解。

最后,练习时也要注意休息,太多的练习可能无法充分得到积累,
会让人感到疲劳而影响学习效果,另外音乐练习时也要充分倾听自己的内心,从而更好地享受音乐,达到最好的效果。

总之,学习电子琴简谱并不难,但需要玩家具备一定的乐理基础,结合视觉上的理解,慢慢练习,多听多看,用心体会音乐,并切记不要忘记休息,这样才能达到更好的效果。

电子琴的原理与应用

电子琴的原理与应用

电子琴的原理与应用1. 简介电子琴是一种利用电子技术实现的键盘乐器,广泛应用于音乐演奏、教学和娱乐等领域。

本文将介绍电子琴的工作原理及其在不同应用场景中的应用。

2. 电子琴的工作原理电子琴的工作原理可以简要概括为以下几个方面:2.1 键盘传感电子琴的键盘采用传感技术,通过触摸键盘时的压力变化来检测用户的击键动作。

常见的键盘传感技术包括电容触摸和弹力触摸等,这些技术能够准确地感知用户的触摸位置和力度,并将其转化为相应的电信号。

2.2 数字声源电子琴使用数字声源技术来生成各种音色。

数字声源通过存储一系列音色的波形数据,并根据用户的击键信号选择并合成相应的波形。

常见的数字声源技术有采样合成、物理建模合成等,这些技术能够实现高质量的音色合成。

2.3 声音处理电子琴在声音输出前,经过一系列的声音处理过程以提升音质、增加音效等。

声音处理技术包括滤波、谐振、混响、合唱等,这些技术能够对音色进行调节和增强,使得电子琴演奏出更加丰富的音乐效果。

3. 电子琴的应用电子琴在各个领域都有不同的应用,下面将列举一些主要应用场景:3.1 音乐演奏电子琴是现代音乐创作和表演中不可或缺的乐器之一。

其灵活的音色合成和弹奏方式,使得音乐家能够创作出各种风格的音乐,并在舞台上进行演奏。

电子琴的音色丰富多样,可以模拟各种乐器的音色,如钢琴、吉他、人声等,极大地拓宽了音乐创作的可能性。

3.2 音乐教学电子琴在音乐教学中起着重要的角色。

其简单易学的键盘布局和丰富多样的音色,使得学生能够更快地掌握音乐基础知识和技巧。

同时,电子琴还可以连接电脑或移动设备,通过软件教学辅助学生学习音乐理论、曲目演奏等,提高教学效果。

3.3 娱乐休闲电子琴也是一种受欢迎的娱乐休闲工具。

无论是在家庭聚会、朋友聚会还是咖啡厅、酒吧等场所,电子琴都能够为人们提供娱乐乐趣。

人们可以随时演奏自己喜欢的音乐,释放压力,享受音乐带来的乐趣。

3.4 电子琴教育电子琴作为一种音乐教育工具,被广泛应用于学校的音乐教育课程中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于AT89S51键盘电子乐器的设计专业班级:设计者:指导老师:设计时间:一、设计目的:键盘电子乐器二、功能要求:利用单片机AT89C51端口作为键盘接口,设计一个具有2个八度音阶的键盘乐器,音阶键不少于16个,采用扫描方式管理键盘,音域范围自行定义。

也可播放1-3首音乐三、方案论证:系统框图设计如图所示:四、系统硬件设计:系统硬件设计如图2所示:图2 系统硬件设计五、软件设计:(1)弹奏程序流程图如图3所示:图3流程图(2)播放歌曲程序流程图如图4图4 流程图(2)程序:/***** 文件名:键盘电子乐器.c*****/#include<reg52.h>#include<intrins.h>#define uchar unsigned char#define uint unsigned intuchar Count;void Play_Song(uchar i);sbit ge=P3^0; //歌曲开关按键sbit Speak =P3^7; //扬声器控制脚uint FreqTemp;unsigned int code Freqtab[] = { //定时半周期的初始值64021,64103,64260,64400, //低音3 4 5 664524,64580,64684,64777, //低音7,中音1 2 364820,64898,64968,65030, //中音4 5 6 765058,65110,65157,65178 //高音1 2 3 4};//关于半周期的初始值与频率的关系,可见:/************************************************************* * 函数功能: 用扫描法读P1 外接4×4 键盘* 函数返回: 按下键:返回0~15、如无键按下:返回16**************************************************************/ uchar Keyscan(void){ uchar i, j, temp, Buffer[4] = {0xfe, 0xfd, 0xfb, 0xf7};for(j = 0; j < 4; j++) //循环四次,扫描四行{ P1 = Buffer[j]; //在低四位分别输出一个低电平_nop_();temp = 0x80; //计划先读出P1.7位for(i = 0; i < 4; i++) //循环四次,检查四列{ if(!(P1 & temp)) //从高四位,截取1位{return (i + j * 4); //返回取得的按键值}temp >>= 1; //往右边一位}}return 16; //没有键按下就返回16}/************************************************************** * 函数功能:按键数码管显示* 输入: k (键盘数值)***************************************************************/ void Display(uchar k) //数码管显示{ if(k<8)P2 =0xC7 ;elseP2=0x89 ;}void mmkey(void){ uchar Key_Value = 16, Key_Temp1, Key_Temp2;//读出的键值TMOD = 0x01; //T0定时方式1ET1 = 1; //允许T1中断EX1 = 1; //允许外部中断INT1中断允许EA = 1; //开总中断while(1){ if(ge==0)Play_Song(0); //Play_Song(0)为祝你平安Play_Song(1)为路边的野花你不要采TR1 = 0; //暂不发音Key_Temp1 = Keyscan(); //读入按键if(Key_Temp1 != 16) //有键按下{ Display(Key_Value); //显示键值、延时消抖Key_Temp2 = Keyscan(); //再读一次if (Key_Temp1 == Key_Temp2)//两次相等{ Key_Value = Key_Temp1; //就确认下来FreqTemp = Freqtab[Key_Value]; //根据键值,取出定时半周期的初始值Display(Key_Value); //显示TR1 = 1; //启动定时器,发音while (Keyscan() < 16); //等待释放Speak = 0; //停止发音}}}}void T1_INT(void) interrupt 3{ TL1 = FreqTemp; //载入定时半周期的初始值TH1 = FreqTemp >> 8;Speak = ~Speak; //发音}/*以下数组是音符编码*/unsigned char code SONG[] ={ //祝你平安0x26,0x20,0x20,0x20,0x20,0x20,0x26,0x10,0x20,0x10,0x20,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x30,0x10,0x30,0x80,0x26,0x20,0x20,0x20,0x20,0x20,0x1c,0x20,0x20,0x80,0x2b,0x20,0x26,0x20,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x80,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x60,0x40,0x10,0x39,0x10,0x26,0x20,0x30,0x20,0x30,0x20,0x39,0x10,0x26,0x10,0x26,0x80,0x26,0x20,0x2b,0x10,0x2b,0x10,0x2b,0x20,0x30,0x10,0x39,0x10,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x20,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x40,0x26,0x20,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x1c,0x20,0x1c,0x20,0x1c,0x20,0x30,0x20,0x30,0x60,0x39,0x10,0x30,0x10,0x20,0x20,0x2b,0x10,0x26,0x10,0x2b,0x10,0x26,0x10,0x26,0x10,0x2b,0x10,0x2b,0x80,0x18,0x20,0x18,0x20,0x26,0x20,0x20,0x20,0x20,0x60,0x26,0x10,0x2b,0x20,0x30,0x20,0x30,0x20,0x1c,0x20,0x20,0x20,0x20,0x80,0x26,0x20,0x30,0x10,0x30,0x10,0x30,0x20,0x39,0x20,0x26,0x10,0x2b,0x10,0x2b,0x20,0x2b,0x40,0x40,0x10,0x40,0x10,0x20,0x10,0x20,0x10,0x2b,0x10,0x26,0x30,0x30,0x80,0x00,//路边的野华不要采0x20,0x40,0x1C,0x10,0x18,0x10,0x20,0x10,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20,0x20,0x1C,0x20,0x18,0x20,0x20,0x80,0xFF,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0xFF,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x20,0x1C,0x10,0x18,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10,0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20, 0x2B,0x20,0x26,0x20,0x20,0x20,0x30,0x80,0x20,0x30,0x1C,0x10,0x20,0x10,0x1C,0x10, 0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x15,0x1F,0x05,0x20,0x10, 0x1C,0x10,0x20,0x20,0x26,0x20,0x2B,0x20,0x30,0x20,0x2B,0x40,0x20,0x30,0x1C,0x10, 0x18,0x20,0x15,0x20,0x1C,0x20,0x20,0x20,0x26,0x40,0x20,0x20,0x2B,0x20,0x26,0x20, 0x20,0x20,0x30,0x30,0x20,0x30,0x1C,0x10,0x18,0x40,0x1C,0x20,0x20,0x20,0x26,0x40, 0x13,0x60,0x18,0x20,0x15,0x40,0x13,0x40,0x18,0x80,0x00,};/********************************************************************* 名称: Time0_Init()* 功能: 定时器的初始化,定时时间可用光碟中软件计算,11.0592MZ晶振,10ms * 输入: 无* 输出: 无***********************************************************************/ void Time0_Init(){ TMOD = 0x01;IE = 0x82;TH0 = 0xDC;TL0 = 0x00;}// 名称: Time0_Int()//功能: 定时器中断,中断中实现Count 加一void Time0_Int() interrupt 1{ TH0 = 0xDC;TL0 = 0x00;Count++; //长度加1}/********************************************************************* 名称: Delay_xMs()* 功能: 延时子程序,经过软件调试,测得延时程序大概为55us.* 输入: x* 输出: 无***********************************************************************/ void Delay_xMs(uint x){ uint i,j;for(i=0; i<x; i++){for(j=0;j<3; j++);}}/********************************************************************* 名称: Play_Song()* 功能: 播放扬声器器控制程序* 输入: i (选择播放哪首歌曲,0为“祝你平安”,1为“路边的野花你不要采”* 输出: 无***********************************************************************/ void Play_Song(uchar i){ uchar Temp1,Temp2;uint Addr;Count = 0; //中断计数器清0Addr = i * 217;while(1){ Temp1 = SONG[Addr++];if (Temp1 == 0xFF) //休止符{TR0 = 0;Delay_xMs(100);}else if (Temp1 == 0x00) //歌曲结束符{return;}else{ Temp2 = SONG[Addr++];TR0 = 1; //计时开始while(1){Speak = ~Speak; //P3.7开始发声Delay_xMs(Temp1);if(Temp2 == Count){Count = 0;break;}}}if(ge==1) break; }}void Main(){Time0_Init(); //定时器0中断初始化while(1){ mmkey();}}六、仿真图:如图 5 所示图5 仿真图七、心得体会:这次设计从硬件方面来讲不是很难,程序也相对长一点,但都是书本上所学的知识,主要是中断及其服务程序的编写。

相关文档
最新文档