基于fpga的音乐播放器的设计
- 格式:doc
- 大小:556.92 KB
- 文档页数:19
音乐播放器控制电路课程设计报告班级:学号:姓名:指导老师:一、设计目的将《断桥残雪》简谱按照要求进行编码并将其写入只读存储器ROM之中,然后通过设计的电路读出ROM的内容,进行解码后驱动蜂鸣器播放。
二、开发环境采用Altera Quartus II 9.0软件设计环境。
它提供了全面的逻辑设计能力,包括电路图、文本和波形的设计输入以及编译、逻辑综合、仿真和定时分析以及器件编程等诸多功能。
特别是在原理图输入等方面,Altera Quartus II 9.0被公认为是最易使用、人机界面最友好开发软件。
并采用FPGALP-2900开发装置硬件实现,给人们带来极大的方便。
三、设计过程概述1、数字简谱简介数字简谱用不同的点和线段配合8个阿拉伯数字0~7构成音符,记录表示千变万化的音乐曲子及其基本音乐元素。
乐音是由三个要素决定的:频率决定了乐音的音高,频谱决定过了乐音的音色,音形标志着演奏方式。
乐曲的基本元素是:音的高低(音高)、音的长短(时值)、音的力度和音质(音色)。
音的高低和长短不同决定了乐曲的不同,因此构成了音乐的最重要的基础元素。
音乐用1、2、3、4、5、6、7分别表示同一调式7个不同的音高:多、来、米、法、索、拉、西。
这七个数字上、下标注的点表示音调升高8度音程或降低8度音程。
数字0为休止符,表示停止发音。
数字下或数字上的线段表示因的持续时间的长短。
没有线段的数字为4分音符,器时值为音长的基本度量单元,成为一拍。
数字下面标注的线段表示时间减短,没增加一条线段,表示时值减少一半,音符相应的成为8分音、16分音……数字后面的线段称为延长线,表示前一个音符的市场的增加,每条延长线的时值增量为1拍。
音长是一个相对的时间概念,一拍的时间长度没有限制,可以是1s,也可以是2s或是0.5s,。
若将4分音符的时长定为1s,其他音符的时值长度以其为基本参照度量,半拍为0.5s,2拍为2s,以此类推。
2、音高与频率关系20Hz至20KHz的音频脉冲信号控制蜂鸣器,可以使其根据控制信号的频率发出不同的音调。
基于FPGA的音乐播放器尝试利用FPGA开发板板载资源以及外搭的功率放大电路制作一台音乐播放器,能够播放通过计算机拷贝在SD卡(或MMC卡、TF卡)的根目录中的某一个WAV文件。
一、基本要求:制作音乐播放器(50分)(1)除了外置的音频功率放大器之外,本系统的主体部分(单片机)应基于STI51开发板,音乐来源于SD卡(或MMC卡、TF卡)(10分)(2)制作一个音频功率放大器,能够实现音频信号的功率放大功能,并能成驱动普通扬声器或耳机。
(10分)(3)能够播放单声道、8位,采样率为1.5K(或更高)的WAV文件。
实际播放时,歌声、伴奏声能依稀可辨。
(30分)二、提高要求:提高音乐播放器的音质(50分)(1)能够播放单声道、8位,采样率为2.5K或更高的WAV文件。
实际播放时,歌声、伴奏声清晰可辨。
(20分)(2)音频功率放大器从FPGA开发板取电,使用USB即可完成系统所有器件的供电。
(10分)(3)改造一切可以改造的部分以提高播放器的音质。
(20分)(提示:可以利用Adobe Audition软件编辑WAV文件并改变音频位数与采样率;可以利用Ultraedit软件以二进制方式查看WAV文件;WAV文件数据区的每一个字节顺次送入D/A中即可实现WAV文件的播放。
)起草人:刘文浩2010-11-25,04:43若具备一定的基础,以下内容可以忽略。
下面的内容是利用单片机制作音乐播放器的步骤。
题目分析1 系统开发步骤本题目对于刚学习完单片机尚未上手的同学来说可能难度较大,刚开始就着手制作一个以SD卡(或MMC卡、TF卡)为存储介质的音乐播放器并且要想尽办法提高播放音乐的音质具有较大难度,且容易让制作者失去继续制作下去的信心。
建议在制作过程中循序渐进,一步一步逐步深入逐渐实现以下功能:第一步:能够播放存储在单片机程序(ROM)中的音乐。
(参考时间:4天)第二步:通过串口调试助手向单片机发送WAV文件,使单片机能够播放计算机发出的WAV文件数据流。
摘要根据国家发改委与专业教学委员会对教育机构的要求,为培养适应我国21世纪国民经济发展的电子设计人才;同时基于国家教委面向21世纪电工电子课程体系改革和电工电子工科教学基地建设两项教学改革研究成果。
要求高等本科在校学生能够自己动手完成简单的数字器件设计。
本次设计在自己手动焊接简易的PFGA板子上实现,并且在QusrtusII 9.0上利用VHDL设计数控分频器电路,利用数控分频原理设计音乐硬件演奏电路,并制定LPM-ROM 存储音乐数据,以“梁祝”乐曲为例,将音乐数据存储到LPM-ROM,就达到了已纯硬件的手段来实现乐曲演奏的效果,只要修改LPM-ROM所存储的音乐数据,将其转换为其他的音乐数据,再重新制定LPM-ROM,在连接到程序中就可以实现其他与取得演奏。
本次设计采用的FPGA主芯片位ALTERA公司的FLEX系列的EPF10K10LC84-4。
由于板子是自己手动在万用板上焊接的所以只焊接了必要的外设如蜂鸣器和LED。
关键词FPGA;音乐播放器;QuartusII;VHDL;目录摘要 (I)第一章前言 (2)1.1关于EDA技术 (2)1.2 关于VHDL (2)1.3 关于EDA工具 (3)1.4 有关本次课程设计 (3)第二章设计实现 (4)2.1音乐演奏电路原理 (4)2.1.1音符频率的获得 (4)2.1.2乐曲节奏的控制 ............................................................... 错误!未定义书签。
2.1.3乐谱发生器 ....................................................................... 错误!未定义书签。
2.1.4乐曲演奏电路原理框图 ................................................... 错误!未定义书签。
基于FPGA的音乐播放器姓名:陆波学号:09090323指导老师:周爱军•音乐硬件演奏电路基本原理•硬件电路的发声原理,声音的频谱范围约在几十到几千赫兹,若能利用程序来控制FPGA芯片某个引脚输出一定频率的矩形波,接上扬声器就能发出相应频率的声音。
乐曲中的每一音符对应着一个确定的频率,要想FPGA发出不同音符的音调,实际上只要控制它输出相应音符的频率即可。
乐曲都是由一连串的音符组成,因此按照乐曲的乐谱依次输出这些音符所对应的频,就可以在扬声器上连续地发出各个音符的音调。
而要准确地演奏出一首乐曲,仅仅让扬声器能够发生是不够的,还必须准确地控制乐曲的节奏,即乐曲中每个音符的发生频率及其持续时间是乐曲能够连续演奏的两个关键因素。
•音调的控制:频率的高低决定了音调的高低。
通过查阅资料,得到下面的音符名与频率的关系表:音符名频率/hz音符名频率/hz音符名频率/hz 低音1262中音1523高音11046低音2294中音2587高音21175低音3330中音3659高音31318低音4349中音4698高音41397低音5392中音5784高音51568低音6440中音6880高音61760低音7494中音7988高音71976•分频比预置数的计算:•分频比就是从6Mhz基准频率通过二分频得到的3Mhz频率基础上计算得到的。
对于乐曲中的休止符,只需将其分频系数设为0,将分频预置数设为16383即可。
例如:低音3的频率为330hz,分频比为3M/330hz=3000000/330=9091,则其分频预置数为:16383-9091=7292。
其他的音符对应的分频比和分频比预置数均按此法计算可得到。
依次计算出低、中、高3X7=21个音的预置数。
•各音阶对应的预置数如右表:音符名预置数音符名预置数音符名预置数低音14933中音110647高音113515低音26179中音211272高音213830低音37292中音311831高音314107低音47787中音412085高音414236低音58730中音512556高音514470低音69565中音612974高音614678低音710310中音713347高音714858•音长的控制:•音符的持续时间必须根据乐曲的速度及每个音符的节拍数来确定。
目录引言 (1)1 VHDL及QUARTUSII软件简介 (2)1.1EDA简介 (2)1.2硬件描述语言VHDL (2)1.3软件介绍 (3)2 简易音乐演奏器设计 (5)2.1硬件电路设计 (5)2.2软件代码设计 (6)2.2.1音符储存单元 (6)2.2.2选择播放模式及手动模块单元 (6)2.2.3分频模块单元 (8)2.2.4预置数模块单元 (9)2.2.5音频发声模块单元 (10)3引脚锁定及下载 (10)3.1引脚锁定 (10)3.2结果分析 (11)4设计总结 (11)参考文献 (116)附录 (16)引言VHDL语言是一种用于电路设计的高级语言。
它在80年代的后期出现。
最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。
随着EDA技术的高速发展,电子系统的设计技术和工具发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。
利用它进行产品开发,不仅成本低、周期短、可靠性高,而且具有完全的知识产权。
突出了其作为硬件描述语言的良好的可读性、可移植性和易读性等优点。
本文基于FPGA开发系统,在QuartusII 7.2软件平台上,完成了简易乐曲演奏器设计和与仿真,并下载到试验箱进行硬件实现。
首先,本文介绍了QuartusII 7.2软件的基本使用方法和VHDL硬件描述语言的特点,采用VHDL 硬件描述语言描述简易信号发生器,完成对电路的功能仿真。
在设计过程中,重点探讨了简易乐曲演奏设计思路和功能模块划分。
然后,初步探讨了电路逻辑综合的原理,该软件对简易乐曲演奏器进行了逻辑综合。
最后,使用EDA实验开发系统进行电路的下载和验证。
验证结果表明设计的简易乐曲演奏器完成了预期的功能。
本设计是采用VHDL来实现的简易乐曲演奏器。
它能实现自动播放和手动播放。
1 VHDL及QuartusII软件简介1.1 EDA简介EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
fpga音乐播放器课程设计一、课程目标知识目标:1. 让学生掌握FPGA基础知识,理解FPGA的内部结构和编程原理;2. 帮助学生了解音乐播放器的原理,掌握数字信号处理基础知识;3. 使学生能够运用Verilog或VHDL等硬件描述语言设计简单的FPGA音乐播放器。
技能目标:1. 培养学生动手实践能力,能够独立完成FPGA音乐播放器的设计、编程、调试与验证;2. 提高学生团队协作能力,能够在小组合作中发挥个人优势,共同完成项目任务;3. 培养学生解决问题和分析问题的能力,能够针对实际问题提出合理的解决方案。
情感态度价值观目标:1. 激发学生对电子设计和硬件编程的兴趣,培养良好的学习习惯;2. 培养学生勇于尝试、敢于创新的精神,增强自信心;3. 培养学生具备良好的沟通能力和团队协作精神,提高综合素质。
分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 掌握FPGA基本原理,能够描述FPGA内部结构和编程方法;2. 学会使用硬件描述语言Verilog或VHDL编写简单的FPGA程序;3. 理解音乐播放器的基本原理,能够运用数字信号处理知识设计音乐播放器;4. 完成一个简易的FPGA音乐播放器设计项目,具备实际操作和调试能力;5. 在项目实践中,提高团队协作、沟通表达和问题解决能力。
二、教学内容1. FPGA基本原理及编程方法:包括FPGA内部结构、工作原理、硬件描述语言(Verilog/VHDL)基础、编程流程等;2. 数字信号处理基础知识:涉及采样定理、量化、编码、数字信号表示等基本概念;3. 音乐播放器原理:介绍音乐播放器的基本工作流程,包括音频信号的采集、处理、存储和播放;4. FPGA音乐播放器设计:结合教材章节内容,设计以下教学大纲:a. FPGA硬件设计:选用合适的FPGA开发板,了解硬件资源分配,设计FPGA硬件电路;b. 音频信号处理:学习音频信号的采样、量化、编码等处理方法,编写相应程序;c. 音乐播放器程序设计:运用Verilog或VHDL编写音乐播放器程序,实现音频信号播放功能;d. 系统调试与验证:对设计好的音乐播放器进行功能测试、性能优化和调试;5. 项目实践:根据教学进度,安排以下教学内容:a. 分组讨论:学生分组讨论设计方案,明确项目任务分工;b. 设计与编程:各组学生根据分工,完成FPGA音乐播放器的设计和编程;c. 调试与展示:学生调试音乐播放器,展示项目成果,分享设计经验;d. 评价与反馈:教师对各组项目成果进行评价,给予反馈和建议。
摘要一、设计的任务与要求 (2)1、任务与要求 (2)2、系统原理 (2)3、创新部分 (3)二、系统顶层原理图 (3)三、各功能模块叙述 (3)1、时钟生成模块 (3)2、时钟生成子模块 (4)3、时钟生成子模块各内部模块 (4)4、模式选择模块 (8)5、模式选择子模块 (9)6、模式选择子模块各内部模块 (9)7、显示模块 (15)8、显示子模块 (16)9、显示子模块各内部模块 (16)10、数据选择使能模块 (21)11、数据选择使能子模块 (22)12、数据选择使能子模块各内部模块 (22)13、数据选择模块 (26)14、音乐输出模块 (27)15、音乐输出子模块 (28)16、音乐输出模块子模块各内部模块 (28)四、硬件验证结果说明 (33)1、硬件资源使用情况 (33)2、引脚锁定 (33)3、基本功能验证 (34)五、心得体会 (36)六、参考文献 (36)摘要本文是以altera公司的FPGA芯片(EP2C5T144C8)为核心控制器,在QuartusII7.2软件平台上,完成了简易MP3的设计和与仿真,并下载到GW48-CK实验开发箱上进行了硬件验证。
通过定制LPM-ROM存储音乐数据,达到了以纯硬件的手段来实现乐曲的演奏效果。
只要修改LPM-ROM中所存储的音乐数据,就可以实现其它乐曲的演奏。
该音乐播放器设计具有电路简单、程序易改和调试方便等特点。
整个系统工作稳定,程序精简,界面友好。
关键词:altera、FPGA、EP2C5T144C8、音乐播放器一、设计的任务与要求:1、任务与要求:基于嵌入式技术利用VHDL硬件语言描述完成音乐播放器(1)基本要求:a、预存2首乐曲;b、用数码管显示当前播放乐曲的序列号;c、设置开始/暂停键,乐曲播放过程中按该键则暂停播放,再按则继续播放;(2)提高部分:a、播放模式选择(顺序播放和随机播放);b、用户可自行设置播放顺序;c、播放乐曲的时间显示;d、自拟其他功能。
1引言1.1关于EDA技术随着科学技术的进步,电子器件和电子系统设计方法日新月异,电子设计自动化(Electronics Design Automation,EDA)技术正是适应了现代电子产品设计的要求,吸收了多学科最新成果而形成的一门新技术。
现如今掌握EDA技术是电子信息类专业的学生、工程技术人员所必备的基本能力和技能。
传统电子电路的设计,首先要对系统进行分析,然后按功能对系统进行划分,接下来就要选择特定芯片,焊接成PCB电路板,最后对成品PCB电路板进行调试。
这样的设计没有灵活性可言,搭成的系统需要的芯片种类多且数目大,而且对于电路图的设计和电路板的设计都需要很大的工作量,工作难度也很高。
然而,随着可编程器件和EDA技术的发展,传统设计的劣势被克服,采用可编程逻辑器件基于芯片的设计方法,期间的内部逻辑和引脚可以由设计者自行决定,大大提高了设计的灵活性,提高了工作效率;同时,将系统集成在一个芯片上的设计,使系统具有体积小、功耗低、可靠性高等特点。
EDA技术的发展大致经历了三个阶段:20世纪70年代的CAD(计算机辅助设计)阶段、20世纪80年代的CAE(计算机辅助工程)阶段、20世纪90年代后的EDA(电子设计自动化)阶段。
以下主要介绍第三个阶段。
EDA技术即电子设计自动化技术,它是以可编程逻辑器件(PLD)为载体,以硬件描述语言(HDL)为主要的描述方式,以EDA软件为主要的开发软件的电子设计过程。
它主要采用“自顶向下”的设计方法,设计流程主要包括:设计输入、综合、仿真、适配、下载。
EDA技术主要有以下特征:(1)高层综合的理论和方法取得进展,从而将EDA设计层次由RT级提高到了系统级,并推出了相应的系统级综合优化工具,大大缩短了复杂ASIC的设计周期。
(2)采用硬件描述语言来描述10万门以上的设计,并形成了VHDL和Verilog-HDL两种标准硬件描述语言。
(3)采用平面规划技术对逻辑综合和物理版图设计联合管理,做到在逻辑设计综合早期阶段就考虑到物理设计信息的影响。
(4)可测性综合设计。
(5)为带有嵌入式IP核的ASIC设计提供软、硬件协同设计工具。
(6)建立并行设计工具框架结构的集成化设计环境,以适应当今ASIC规模大而复杂、数字与模拟电路并存、硬件与软件设计并存、产品上市速度快等特点。
总而言之,EDA技术的出现,给电子信息产业带来了革命性的变革。
1.2关于VHDLVHDL是一种硬件描述语言,它可以对电子电路和系统的行为进行描述,基于这种描述,结合相关的软件工具,可以得到所期望的实际电路与系统。
使用VHDL语言描述的电路,可以进行综合和仿真。
然而,值得注意的是,尽管所有VHDL代码都是可仿真的,但并不是所有代码都能综合。
VHDL被广泛使用的基本原因在于它是一种标准语言,是与工具和工艺无关的,从而可以方便地进行移植和重用。
VHDL两个最直接的应用领域是可编程逻辑器件(PLD)和专用集成电路(ASIC),其中可编程逻辑器件包括复杂可编程逻辑器件(CPLD)和现场可编程门阵列(FPGA)。
关于VHDL最后要说明的是:与常规的顺序执行的计算机程序不同,VHDL从根本上讲是并发执行的。
在VHDL中,只有在进程(PROCESS)、函数(FUNCTION)和过程(PROCEDURE)内部的语句才是顺序执行的。
1.3EDA工具目前有多种EDA工具支持采用VHDL进行电路综合、仿真以及实现。
比较常见的是Altera公司的QuartusⅡ开发平台和Xilinx公司的ISE开发平台。
这些平台中使用的综合工具和仿真工具通常由专业的EDA厂商提供。
本次设计中所使用的平台正是QuartusⅡ7.2,它是Altera公司提供的一套集成了编译、布局布线和仿真工具在内的综合开发环境。
它能完成从代码输入到编译到仿真再到物理实现的全部设计流程。
1.4有关于本次课程设计本次课程设计要求使用EDA工具,设计实现简易音乐演奏器,理解音名与频率的关系及数控分频原理,经过对整体进行模块化分析、编程、综合、仿真及最终下载,完整实现简易音乐器的播放功能。
我们知道,与利用单片机来实现乐曲演奏相比,以纯硬件完成乐曲演奏电路的逻辑要复杂得多,如果不借助于功能强大的EDA工具与硬件描述语言,仅凭传统的数字逻辑技术,即使最简单的演奏电路也难以实现。
在后面的章节中会详细介绍利用EDA技术实现简易音乐演奏器的过程。
2 设计实现2.1准备知识在本次设计中采用了铃声《祝你生日快乐》作为要播放的乐曲,它的旋律如下:5 5 |6 5 1|7 —5 5|6 5 2|1 —5 5|5 3 1|7 6 —|0 0 4 4|3 1 2|1 —根据声乐知识,组成乐曲的每个音符的发音频率值及其持续的时间是乐曲能连续演奏所需的两个基本要素,获取这两个要素所对应的数值以及通过纯硬件的手段来利用这些数值实现所希望乐曲的演奏效果是本实验的关键。
表2-1为简谱中音名与频率的对应关系。
表2-1 简谱音名与频率的关系频率点及音符与音谱对应定义如表2-2所示。
表2-2音符语音谱定义2.2乐曲演奏电路的结构示意本设计由四个模块组成,如图2-3所示。
图2-3 乐曲演奏电路的结构示意2.3乐曲演奏电路的子结构顶层结构所包含的模块分别有音调发生器(ydfsq)模块、手动\自动选择(bmux)模块、音调编码器(ydbmq)模块及数控分频器(skfpq)模块。
以下便是对各个子模块的分析。
2.3.1音调发生器模块1.音调发生器模块的功能在此模块中设置了一个8位二进制计数器(计数最大值为107),这个计数器的计数频率选为4Hz,即每一计数值的停留时间为0.25s,恰好为当全音符设为1s时,四四拍的4分音符的持续时间。
例如,ydfsq在以下的VHDL逻辑描述中,《祝你生日快乐》乐曲的第一个音符为“5”,此音在逻辑中停留了4个时钟节拍,即为1s时间,相应地所对应“1”音符分频预置数为1409在skfpq的输入端停留了1s。
随着ydfsq 中的计数器按4Hz的时钟频率做加法计数时,乐谱逐次被选取,《祝你生日快乐》乐曲就开始自然连续而且循环的演奏起来了。
2.音调发生器模块的VHDL源程序library ieee;use ieee.std_logic_1164.all;entity ydfsq isport(clk:in std_logic;clkj:in std_logic_vector(1 downto 0);rst:in std_logic;toneindex:out integer range 0 to 14);end ydfsq;architecture bhv of ydfsq issignal counter:integer range 0 to 107;signal clker:std_logic;signal count4:integer;beginprocess(clk)beginif clk'event and clk='1' thenif clkj="10" thencount4<=count4+1;if count4>0 thenclker<=not clker;count4<=0;end if;elsif clkj="01" thencount4<=count4+1;if count4>2 thenclker<=not clker;count4<=0;end if;else count4<=count4+1;if count4>1 thenclker<=not clker;count4<=0;end if;end if;end if;end process;process(clker,counter,rst)beginif rst='1' thencounter<=0;elsif counter=107 thencounter<=0;elsif clker'event and clker = '1' then counter<=counter+1;end if;end process;process(counter)begincase counter iswhen 0 to 3|8 to 11|24 to 27|32 to 35|48 to 51=>toneindex<=5;when 4 to 7|28 to 31|68 to 75=>toneindex<=6;when 16 to 23|64 to 67=>toneindex<=7;when 12 to 15|40 to 47|60 to 63|92 to 95|100 to 107=>toneindex<=8;when 96 to 99=>toneindex<=9;when 56 to 59|88 to 91=>toneindex<=10;when 84 to 87=>toneindex<=11;when 52 to 55=>toneindex<=12;when 76 to 83=>toneindex<=0;when others=>NULL;end case;end process;end bhv;3.音调发生器模块的仿真图图2-4 音调发生器模块的仿真波形图通过仿真图可以清楚的看到,时钟clk由0开始计数,每计一次数输出toneindex 的值随之发生一定的变化,只不过根据乐谱的不同,输出的变化也不尽相同。
然后把输出toneindex输入到音调编码器模块,进行下一步编码工作。
于是,由仿真图印证了ydfsq模块逐次选取音符的功能。
2.3.2手动\自动选择模块1.手动\自动选择模块的功能根据设计的要求,该简易乐曲演奏器能实现手动或自动演奏乐曲的功能。
于是,可通过一个按键cs来进行自动与手动的选择,当cs按下时,乐曲自动演奏,其他情况下均为手动演奏乐曲,即可以通过按下其他的按键(与cs相连的按键除外)来控制不同的音符。
与此同时,还需要一个复位信号rst来控制该演奏器是否工作,当rst为1时,停止演奏,为0时,可以演奏。
以上提到的手动与自动的选择只能在rst为0时有效。
2.手动\自动选择模块的VHDL源程序library ieee;use ieee.std_logic_1164.all;entity bmux isport(d1:in integer range 0 to 14;d2:in integer range 0 to 14;cs,rst:in std_logic;q:out integer range 0 to 14);end bmux;architecture bhv of bmux isbeginprocess(cs,rst)beginif rst='1'thenq<=0;elsecase cs iswhen '0'=>q<=d1;when '1'=>q<=d2;when others=>q<=d1;end case;end if;end process;end bhv;3.手动\自动选择模块的仿真图图2-5手动\自动选择模块的仿真波形图此仿真图中输入cs代表手动\自动演奏的选择端,输入rst代表整体复位端,输入d1、d2分别代表手动和自动要演奏的音符,输出q代表经过选择后,要演奏的或是手动输入或是自动输入的音符。