单片机电子琴单片机课程设计
简易电子琴设计(单片机课程设计)
简易电子琴设计用单片机控制扬声器,弹奏出一段音乐。
一、预备知识:乐曲由不同音符组成,各音符都有对应的频率,频率不同的方波加在扬声器上,就产生一个持续的音符。
利用不同的音符、音高、音长组合,就可产生想要的音乐。
对于单片机来说,利用其定时器产生不同频率的方波非常方便,以11.0592、22.1184MHz 晶振(实验箱)为例,列出高中低音符与单片机定时器初值如下表所示注意:1、一个音段常见由7个标准音组成(1do、2ri、3mi、4fa、5sol、61a、7si),但实际乐曲中还有一些介于2个标准音之间的音,即半度音,有 1.5、2.5、4.5、5.5、6.5共5个,所以完整的1个音段有12个音。
2、选择简谱时,尽量选用只含7个标准音的乐曲,而且要选C大调的(简谱左上角标着1=C X/4 ),否则各音符的频率要做相应的变化。
10二、设计目的了解扬声器的发声原理,进一步熟悉定时器、键盘扫描、LED 显示电路的工作原理及编程方法。
三、设计内容1 、设计键盘、LED 显示、扬声器驱动电路原理图;2、设计程序流程图;3 、编程调试,利用按键作为琴键,按下不同的键发出相应的音调,同时在LED 最右位显示对应键号值。
四、参考接线扬声器的SPK+ 端接VCC,SPK 负端连接到某一I/O 口。
五、设计步骤程序:KEYBUF EQU 30HSTH0 EQU 31HSTL0 EQU 32HTEMP EQU 33HORG 0000LJMP MAINORG 000BHLJMP INT_T0MAIN:MOV TMOD,#01HSETB ET0SETB EAWAIT:MOV P3,#0FFHCLR P3.4MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY1LCALL DELAYMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY1MOV A,P3ANL A,#0FHCJNE A,#0EH,NK1MOV KEYBUF,#0LJMP DK1NK1:CJNE A,#0DH,NK2MOV KEYBUF,#1LJMP DK1NK2:CJNE A,#0BH,NK3MOV KEYBUF,#2LJMP DK1NK3:CJNE A,#07H,NK4MOV KEYBUF,#3LJMP DK1NK4:NOPDK1:MOV A,KEYBUFMOV B,#2MUL ABMOV TEMP ,AMOV DPTR,#TABMOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK1A:MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK1ACLR TR0NOKEY1:MOV P3,#0FFHCLR P3.5MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY2LCALL DELAYMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY2MOV A,P3ANL A,#0FHCJNE A,#0EH,NK5MOV KEYBUF,#4LJMP DK2NK5:CJNE A,#0DH,NK6MOV KEYBUF,#5LJMP DK2NK6:CJNE A,#0BH,NK7MOV KEYBUF,#6LJMP DK2NK7:CJNE A,#07H,NK8MOV KEYBUF,#7LJMP DK2NK8:NOPDK2:MOV A,KEYBUFMOV B,#2MUL ABMOV TEMP ,AMOV DPTR,#TABMOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK2A:MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK1ACLR TR0 NOKEY2:MOV P3,#0FFHCLR P3.6MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY3LCALL DELAYMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY3MOV A,P3ANL A,#0FHCJNE A,#0EH,NK9MOV KEYBUF,#8LJMP DK1NK9:CJNE A,#0DH,NK10MOV KEYBUF,#9LJMP DK1NK10:CJNE A,#0BH,NK11MOV KEYBUF,#10LJMP DK1NK11:CJNE A,#07H,NK12MOV KEYBUF,#11LJMP DK3NK12:NOPDK3:MOV A,KEYBUFMOV B,#2MUL ABMOV TEMP ,AMOV DPTR,#TABMOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK3A:MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK3ACLR TR0NOKEY3:MOV P3,#0FFHCLR P3.7MOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY4LCALL DELAYMOV A,P3ANL A,#0FHXRL A,#0FHJZ NOKEY4MOV A,P3ANL A,#0FHNK13:NK14: NK15:NK16: DK4: CJNE A,#0EH,NK13 MOV KEYBUF,#12 LJMP DK4CJNE A,#0DH,NK14 MOV KEYBUF,#13 LJMP DK4CJNE A,#0BH,NK15 MOV KEYBUF,#14 LJMP DK4CJNE A,#07H,NK16 MOV KEYBUF,#15 LJMP DK4NOPMOV A,KEYBUF MOV B,#2MUL ABMOV TEMP ,AMOV DPTR,#TABMOVC A,@A+DPTRMOV STH0,AMOV TH0,AINC TEMPMOV A,TEMPMOVC A,@A+DPTRMOV STL0,AMOV TL0,ASETB TR0DK4A:MOV A,P3ANL A,#0FHXRL A,#0FHJNZ DK4ACLR TR0NOKEY4:MOV DPTR,#LED_TABMOV A,KEYBUFMOVC A,@A+DPTRMOV P1,ALJMP MAINDELAY:MOV R6,#10 D1: MOV R7,#248DJNZ R7,$DJNZ R6,D1RETINT_T0:MOV TH0,STH0MOV TL0,STL0CPL P2.0RETITAB:DW 62018,62401,62743,62895DW 63185,63441,63670,63774DW 63966,64138,64216,64360DW 64489,64603,64655,64752 LED_TAB:DB ;低1,2,3,4;低5,6,7 ,中1;中2,3,4,5;中6,7 ,高1,2至9 共阴3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH ;0DB 77H, 7CH, 39H, 5EH, 79H, 71H;A 至F END原理图:EXFJldlVTAll■匚AIE:pc.ii*r 1 ■HM口1 店MinPE.MiAE.-iF匚ar屋理ix傅?1 ALVEffSviC rzarti*i"Pl.1吒灯血fl J叭孑n1)r i J raji'TITIf irf ri.hTC和止■Fl?mfio。
单片机简易电子琴课程设计
单片机简易电子琴课程设计简易电子琴实验一、课程设计目的与要求1、掌握蜂鸣器的使用方法;2、掌握蜂鸣器的不同发音的方法;3、通过本次课程设计加深对单片机课程的认识和掌握,对单片机的应用做进一步了解。
二、课程设计设备STAR 序列试验仪一套、PC 机一台三、课程设计内容1、简易电子琴原理(1)蜂鸣器输入不同频率的方波,会发出不同的声音;(2)通过按键,由单片机控制产生不同频率的方波,从而发出不同的声音。
2、课程设计过程(1)通过单片机,是G6区的1-7号键由低到高发出1-7的音阶。
四、课程设计原理图1234567P1.0P1.1P1.2P1.3P1.4P1.5P1.6VccBuzzerLS12KR15.1KR28550Q60.01uFC40Ctrl100R11P1.7五、课程设计框图主程序:节拍1子程序(手动按键时用) 节拍2子程序(手动按键时用)0FFH->P1 开始 播放一段音乐 P1.0=0调用节拍1子程序 N Y 调用节拍2子程序 Y调用节拍3子程序Y 调用节拍4子程序 调用节拍5子程序 调用节拍6子程序 调用节拍7子程序P1.1=0P1.2=0N P1.3=0Y Y Y P1.4=0P1.5=0N P1.6=0Y N N N 0->P1.7 延时180us 1->P1.7 延时190us开始 返回0->P1.7 延时200us 1->P1.7 延时200us开始 返回节拍3子程序(手动按键时用)节拍4子程序(手动按键时用)开始0->P1.7延时180us1->P1.7延时170us返回开始0->P1.7延时160us1->P1.7延时160us返回节拍5子程序(手动按键时用)节拍6子程序(手动按键时用)开始0->P1.7延时150us1->P1.7延时150us返回开始0->P1.7延时140us1->P1.7延时140us返回节拍7子程序(手动按键时用)节拍1子程序(自动放音时用,时间约0.2s )节拍2子程序(自动放音时用,时间约0.2s ) 节拍3子程序(自动放音时用,时间约0.2s )0->P1.7 延时220us 计数器-1 1->P1.7 延时210us 1100->计数器 N计数器-1=0返回Y 0->P1.7 延时130us 1->P1.7 延时130us开始 返回开始节拍4子程序(自动放音时用,时间约0.2s ) 节拍5子程序(自动放音时用,时间约0.2s )节拍6子程序(自动放音时用,时间约0.2s ) 节拍7子程序(自动放音时用,时间约0.2s )NY 0->P1.7 延时170us 计数器-1 1->P1.7 延时170us开始 1300->计数器 计数器-1=0返回Y N0->P1.7 延时180us 计数器-1 1->P1.7 延时180us 开始 1250->计数器 计数器-1=0返回0->P1.7 延时185us 计数器-1 1->P1.7 延时180us开始 1200->计数器 Y N计数器-1=0返回NY 0->P1.7 延时190us 计数器-1 1->P1.7 延时190us 开始 1150->计数器 计数器-1=0返回六、课程设计步骤1、主机连线说明D1区:Ctrl — A3区:P1.7 G6区:JP74 —A3区:JP51(P1口)2、运行程序,按G6区的1-7号键,输出7种音阶。
基于51单片机的电子琴设计课程设计
目录前言 (2)第1章基于51单片机的电子琴设计 (3)1.1 电子琴的设计要求 (3)1.2 电子琴设计所用设备及软件 (3)1.3 总体设计方案 (3)第2章系统硬件设计 (5)2.1 琴键控制电路 (5)2.2 音频功放电路 (6)2.3 时钟-复位电路 (6)2.4 LED显示电路 (6)2.5 整体电路 (6)第3章电子琴系统软件设计 (7)3.1 系统硬件接口定义 (7)3.2 主函数 (8)3.2.1 主函数程序 (8)3.3 按键扫描及LED显示函数 (9)3.3.1 键盘去抖及LED显示子程序 (10)3.4 中断函数 (11)3.4.1 中断程序 (12)第4章电子琴和调试 (12)4.1 调试工具 (12)4.2 调试结果 (13)4.3 电子琴设计中的问题及解决方法 (14)第5章电子琴设计总结 (15)参考文献 (16)附录 (17)前言音乐教育是学校美育的主要途径和最重要内容,它在陶冶情操、提高素养、开发智力,特别是在培养学生创新精神和实践能力方面发挥着独特的作用。
近年来,我国音乐教育在理论与实践上都取得了有目共睹的成绩,探索并形成了具有中国特色的、较为完整的音乐教育教学体系。
但我国音乐教育的改革力度离素质教育发展的要求还存在一定距离。
如今,电子琴作为电子时代的新产物以其独特的功能和巨大的兼容性被人们广泛的接受和推崇。
而在课堂教学方面,它拥有其它乐器无法比拟的两个瞬间:瞬间多元素思维的特殊的弹奏方法;瞬间多声部(包括多音色)展示的乐队音响效果的特点。
结合电子琴自身强大的功能及独特的优点来进行音乐教育的实施,这样就应该大力推广电子琴进入音乐教室,让电子琴教学在音乐教育中发挥巨大的作用。
现代乐器中,电子琴是高新科技在音乐领域的一个代表,体现了人类电子技术和艺术的完美结合。
电子琴自动伴奏的稳定性、准确性,以及鲜明的强弱规律、随人设置的速度要求,都更便于人们由易到难、深入浅出的准确掌握歌曲节奏和乐曲风格,对其节奏的稳定性和准确性训练能起到非常大的作用。
单片机电子琴课程设计完整版
单片机技术及系统设计课程设计题目:基于单片机的电子琴制作专业:电子电子信息工程班级:电子1073班姓名: xxx 学号: xxx 组员: xxx 学号: xxx 实验地点:科技楼403指导老师: xxx设计时间 2010-5-30 至 2010-6-30成绩:一、设计指标:(1)设计一个(4×4)的键盘,并将16个键设计成16个音;(2)可弹奏想要表达的音乐;(3)该电子琴包含1首示例音乐,接通电源可播放示例音乐。
二、设计要求:(1)按设计指标进行电路设计;(2)列出音阶与单片机定时器输出频率关系表格;(3)制作符合设计指标的硬件电路。
三、设计说明:电子琴是高科技在音乐领域的一个代表,它是古典文化与现代文明的一个浓缩体。
它不但可以帮助我们的音乐教师进行传统音乐文化的教育教学工作,而且由于它又具备现代音乐,特别是电子音乐、电脑音乐的基本结构、特征,因而使我们的教师在进行现代音乐、电子音乐、电脑音乐的教学时,更直接、更简便。
单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。
它的应用必定导致传统的控制技术从根本上发生变革。
因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。
电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。
它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。
本文的主要内容是用AT89C51单片机为核心控制元件,设计一个电子琴。
以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块,在主控模块上设有16个弹奏按键、1个播放键和扬声器。
四、设计简单原理介绍一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。
基于单片机的电子琴设计
基于单片机的电子琴设计一、引言二、总体设计方案(一)设计目标设计一款基于单片机的电子琴,能够实现基本的音符演奏、音色切换、节奏控制等功能,并且具有良好的音质和稳定性。
(二)系统组成本电子琴系统主要由单片机控制模块、键盘输入模块、音频输出模块、显示模块和电源模块等部分组成。
1、单片机控制模块选用 STM32 系列单片机作为控制核心,负责处理键盘输入信号、生成音频信号、控制显示等功能。
2、键盘输入模块采用矩阵键盘,通过扫描键盘获取用户的按键操作,将其转换为对应的音符编码发送给单片机。
3、音频输出模块使用DAC 芯片将单片机生成的数字音频信号转换为模拟音频信号,再通过放大器和扬声器输出声音。
4、显示模块采用液晶显示屏,用于显示当前的演奏状态、音色选择、节奏模式等信息。
5、电源模块为整个系统提供稳定的电源供应,可采用电池供电或外接电源适配器。
三、硬件设计(一)单片机最小系统STM32 单片机的最小系统包括时钟电路、复位电路和电源电路。
时钟电路为单片机提供工作时钟,复位电路用于系统初始化,电源电路为单片机提供稳定的电源。
(二)键盘电路矩阵键盘由行线和列线组成,通过逐行扫描的方式检测按键状态。
将键盘的行线和列线分别连接到单片机的 GPIO 引脚,通过编程实现键盘扫描和按键识别。
(三)音频输出电路选用高性能的 DAC 芯片,如 PCM1794,将单片机输出的数字音频信号转换为模拟音频信号。
为了提高音频输出的质量,还需要添加放大器和滤波电路,以增强信号的功率和去除噪声。
(四)显示电路液晶显示屏通过 SPI 接口或 I2C 接口与单片机连接,单片机通过发送指令和数据来控制显示屏的显示内容。
(五)电源电路根据系统的工作电压和电流需求,选择合适的电源芯片,如LM7805 等,将输入电源转换为所需的电压,并通过滤波电容等元件提高电源的稳定性。
四、软件设计(一)主程序流程主程序首先进行系统初始化,包括单片机初始化、键盘初始化、音频输出初始化、显示初始化等。
单片机课程设计报告电子琴
单片机课程设计报告电子琴一、选题背景随着数字技术的飞速发展和信息科学的快速推进,单片机作为信息处理的核心器件,正在得到越来越广泛的应用。
随着芯片技术的不断更新和改进,单片机应用领域的拓宽和深化,各行各业对单片机专业人才的需求也愈发迫切。
因此,在单片机课程的教学中,设计一些实用的小项目、小应用,既能提高学生的实践操作能力,又能激发其学习兴趣和学科热情,是非常有必要的。
二、课程目标通过设计电子琴这一实用项目,达到以下三个目标:(1)掌握单片机的基本知识和操作技巧。
在设计项目中,需要使用到很多单片机相关的知识和技术,如单片机的编程语言、端口连接、程序设计、调试样板、原理图设计等。
通过这些操作,学生可以对单片机的工作原理和编程方法有一个更加深入的理解。
(2)培养学生应用知识的能力。
设计电子琴,需要使用到单片机的定时器、PWM输出、按键检测、LED灯控制等相关知识。
学生需要将这些知识应用到实际操作中,才能真正掌握这些知识点,更好地了解单片机的工作原理和性能特点。
(3)激发学生的创造性思维和创新意识。
在设计电子琴的过程中,学生需要从众多课程内容和技能中选择并运用所学知识,遇到问题时需要有创造性解决的思维和意识。
此过程能够帮助学生提高独立思考和创新能力,将所学知识真正运用到实践中。
三、教学方法针对单片机课程设计中的三个目标,教学方法如下:1. 理论和实践相结合学生需要了解单片机的基本知识和操作技巧,包括单片机的性能特点、端口连接、程序设计、原理图设计等。
同时,为了更好地掌握实际操作,需要将理论知识与实践操作相结合,在课程中给予足够的操作机会和实践练习,让学生深刻感受到不同参数的变化对最终设备造成的影响。
2. 开放性思考学习单片机课程时,教师需要引导学生进行开放性思考。
鼓励学生发现问题、提出问题、寻找问题的解决方案,从而提高学生的创造性思维和创新意识。
3. 相互合作学习在课程设计中,可以采用分组方式,让学生互相合作、共同学习、共同探讨解决问题的方法和途径。
电子琴单片机课程设计
引言 (1)1.硬件设计及说明 (2)1.1 系统组成及原理图 (2)1.2 AT89C51单片机 (2)1.3晶振电路 (5)1.4发音电路 (6)2.软件的设计 (8)2.1 如何用单片机实现发音 (8)2.2 系统总体功能流程图 (8)2.3 程序清单 (9)3. Proteus软件仿真 (11)3.1时序仿真图 (11)3.2仿真结果与分析 (11)4.课程设计总结及心得体会 (12)4.1设计中遇到的问题及分析 (12)4.2心得体会 (12)致谢 (14)参考文献 (15)引言单片微型计算机是大规模集成电路技术发展的产物,属第四代电子计算机,它具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。
它的应用必定导致传统的控制技术从根本上发生变革。
因此,单片机的开发应用已成为高科技和工程领域的一项重大课题。
随着电子科技的飞速发展,电子产品在人们的生活中扮演着一个不可或缺的角色,无论是生活必须品还是其他东西,都用到了单片机,特别是在儿童玩具中引用很广泛,当前市场上的玩具市场需求量大,其中电子琴就是一个很好的应用方面。
单片机技术使我们可以利用软硬件实现电子琴的功能,从而实现电子琴的微型化,可以用作玩具琴、音乐转盘以及音乐童车等等。
并且可以进行一定的功能扩展。
本次试验所设计的简易电子琴利用键盘上的6个按键,能够发出6个不同的音调,并且要求按下键发声,松开延时一段时间停止,再按不同的键发出不同的声音。
1.硬件设计及说明1.1 系统组成及原理图硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。
该设计要实现一种由单片机控制的电子琴,单片机工作于12MHZ 时钟频率,本设计主要是通过直接控制发音的周期来间接控制发音的频率,进而实现了不同的音调。
本设计主要由晶振电路,按键电路和发音电路组成。
按下不同的按键,就可以发出不同的音。
单片机课程设计电子琴
单片机课程设计 电子琴一、课程目标知识目标:1. 让学生理解单片机的基本原理,掌握单片机在电子琴设计中的应用。
2. 使学生掌握电子琴的基本结构,能运用单片机编程实现电子琴的基本功能。
3. 帮助学生了解电子琴音调产生原理,掌握音调与频率的关系。
技能目标:1. 培养学生运用单片机进行电子琴设计与编程的能力,能独立完成一个简单的电子琴项目。
2. 培养学生动手实践能力,提高焊接、调试和故障排除等技能。
3. 培养学生团队协作和沟通能力,能在项目过程中进行有效分工与合作。
情感态度价值观目标:1. 激发学生对单片机及电子制作的兴趣,提高学习积极性。
2. 培养学生勇于尝试、不断探索的精神,增强克服困难的信心。
3. 引导学生关注科技发展,认识到所学知识在现实生活中的应用,培养创新意识。
分析课程性质、学生特点和教学要求,本课程目标具体、可衡量,有助于学生和教师在教学过程中明确预期成果。
将目标分解为具体学习成果,为后续教学设计和评估提供依据。
在教学过程中,注重理论与实践相结合,充分调动学生的积极性,提高学生的实践能力。
二、教学内容1. 单片机基础知识:介绍单片机的组成、工作原理,重点讲解CPU、内存、I/O口等部分的功能与应用。
教材章节:第一章单片机基础2. 电子琴结构与原理:讲解电子琴的基本结构,音调产生原理,键盘与发音电路的连接方式。
教材章节:第三章电子乐器原理3. 单片机编程:以C语言为基础,讲解单片机编程方法,重点掌握延时、中断、I/O口控制等编程技巧。
教材章节:第二章单片机编程基础、第五章中断与定时器4. 电子琴设计与制作:结合单片机知识,指导学生进行电子琴设计,包括硬件电路设计、程序编写、调试与优化。
教材章节:第四章单片机应用实例、第六章电子琴设计与制作5. 实践操作:安排学生进行电子琴硬件焊接、程序烧写、调试与测试,培养动手实践能力。
教材章节:第七章实践操作教学内容安排与进度:第一周:单片机基础知识学习,完成CPU、内存、I/O口等功能的学习。
简易电子琴单片机课程设计
简易电子琴单片机课程设计一、课程目标知识目标:1. 让学生掌握简易电子琴单片机的基本原理和组成结构,理解其工作流程。
2. 使学生了解并掌握电子琴音阶与音符的关系,能够识别常见音符及其对应的单片机程序编写方法。
3. 帮助学生掌握基础编程知识,能够使用相关软件编写简易电子琴程序。
技能目标:1. 培养学生运用单片机进行音乐创作的能力,能够编写并演奏简单曲目。
2. 提高学生动手实践能力,能够独立完成简易电子琴单片机的组装和调试。
3. 培养学生团队协作和问题解决能力,能够在团队中共同完成课程项目。
情感态度价值观目标:1. 培养学生对电子琴音乐创作的兴趣和热情,激发学生探索音乐世界的欲望。
2. 培养学生勇于尝试、不断探索的精神,增强面对困难的勇气和信心。
3. 培养学生环保意识和创新精神,关注科技发展,认识到科技进步对音乐产业的影响。
本课程针对高年级学生,结合学科特点,以实用性为导向,将理论知识与实践操作相结合。
课程目标旨在让学生在学习过程中,既能掌握电子琴单片机的基本知识,又能提高动手实践和团队协作能力,同时培养对音乐的热爱和科技创新意识。
通过分解课程目标为具体学习成果,为后续教学设计和评估提供明确方向。
二、教学内容1. 简易电子琴单片机原理及结构- 了解单片机的基本概念及功能- 学习简易电子琴单片机的组成结构及工作原理- 教材章节:第三章 单片机原理及其应用2. 音阶与音符关系- 掌握音阶与音符的基本概念及对应关系- 学习简易电子琴音阶与单片机程序编写方法- 教材章节:第四章 音乐基础与编程3. 编程知识与软件应用- 学习基础编程知识,如C语言基本语法、数据类型等- 掌握相关编程软件的使用,如Keil、Proteus等- 教材章节:第五章 单片机编程与仿真4. 动手实践与项目制作- 完成简易电子琴单片机的组装、调试与演奏- 课程项目:团队协作完成一首简单曲目的电子琴演奏- 教材章节:第六章 单片机项目实践5. 回顾与拓展- 对所学知识进行总结回顾,巩固学习成果- 探讨简易电子琴单片机的拓展应用,如与其他智能硬件的结合- 教材章节:第七章 单片机拓展应用教学内容根据课程目标制定,保证科学性和系统性。
单片机电子琴课程设计
单片机电子琴课程设计一、课程目标知识目标:1. 让学生理解单片机的基本原理和功能,掌握电子琴的基本构造和演奏方法。
2. 帮助学生掌握单片机编程的基本技巧,学会使用相关软件进行程序设计。
3. 使学生了解音乐理论中音阶、音符的基本知识,并将其应用于电子琴演奏。
技能目标:1. 培养学生动手操作单片机的能力,学会连接电子琴硬件并进行调试。
2. 培养学生编写简单电子琴程序的能力,实现不同音符的播放和乐曲演奏。
3. 提高学生团队协作和沟通能力,能够共同分析和解决在电子琴制作过程中遇到的问题。
情感态度价值观目标:1. 培养学生对单片机及电子琴制作的兴趣,激发学生探究精神,养成自主学习的好习惯。
2. 培养学生具有创新意识,敢于尝试,勇于实践,面对失败保持积极的心态。
3. 增强学生的环保意识,培养节约资源、爱护设备的良好习惯。
课程性质:本课程为实践性较强的课程,结合理论知识,培养学生的动手操作能力和实际应用能力。
学生特点:学生具备一定的电子知识和编程基础,对新鲜事物充满好奇心,喜欢动手实践。
教学要求:结合学生特点,注重理论与实践相结合,充分调动学生的积极性,提高学生的实践能力和创新能力。
在教学过程中,关注学生的学习进度,及时调整教学策略,确保课程目标的实现。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 理论知识:- 单片机原理:介绍单片机的基本结构、工作原理和功能。
- 音乐理论:讲解音阶、音符、音长等基本音乐知识。
- 编程基础:回顾C语言基本语法,学习单片机编程方法和技巧。
2. 实践操作:- 电子琴硬件连接:学习电子琴硬件的组成,进行电路连接和调试。
- 程序编写:编写程序实现电子琴基本功能,如按键识别、音符播放等。
- 歌曲演奏:设计程序,实现简单乐曲的演奏。
3. 教学大纲:- 第一周:单片机原理学习,音乐理论知识回顾。
- 第二周:编程基础复习,电子琴硬件连接与调试。
- 第三周:编写电子琴程序,实现基本功能。
c51单片机课程设计——电子琴
课程设计报告姓名:曹班级:101班学号:课程设计名:简易电子琴一、概述:本系统设计制作一个可演奏的电子琴。
综合应用了两项设计:(1)能产生纯音,了解音调高低的控制方法,用键盘代替电子琴的键盘,控制演奏音乐。
(2)演奏一支乐曲(天空之城)。
那音阶要怎么使用C51单片机产生呢?C51在这项工作中运用它哪些资源呢?我们怎么实现一个按键对应一个音阶呢?二、系统描述:(1)我们从初中开始就知道,声音是由振动产生的,基本的这7个音阶的频率之间满足某种数学关系由低到高排列的自然音,所以我们可以通过改变单片机输出频率就可以得到不同的音阶;(2)为了得到精确的频率(周期的倒数),我们可以使用C51单片机定时中断模块。
(3)通过判断按键是否被按下,然后执行该按键按下时的函数(在程序中是改变T1的初值得到实现)。
需要注意的是,在该程序中让8051的内部定时器使其工作在计数器模式MODE1下,改变记数值TH0及TL0以产生不同频率的方法。
例如频率为523HZ,其周期T=1/523=1912微秒,因此只要令计数器定时956/1=956在每记数9次时将I/O口反相,就可得到中音D0(523HZ)。
记数脉冲值与频率的关系公式如下:N=Fi/2/Fr N:记数值Fi:内部计时一次为1微秒.故其频率为1MHZFr;要产生的频率起记数值的求法如下:T=65536-N=65536-Fi/2/Fr例如:设K=65536,F=1000000=Fi=1MHZ,求低音D0(523HZ),高音的D0(1046HZ)的记数值。
T=65536-N=65536-Fi/2/Fr=65536-1000000/2/Fr=65536-500000/Fr低音D0的T=65536-500000/262=63627中音D0的T=65536-500000/523=64580低音D0的T=65536-500000/1047=65059详细的音阶频率与计数初值可参考附录一;三、电路设计1.单片机最小系统模块2.三极管信号放大模块扬声器发出对应音符模块如下:3.按键电路模块:四.程序设计:本系统的程序流程图如下:程序如下:#include <reg51.h>#define uchar unsigned char#define uint unsigned intsbit kongzhi=P1^1;sbit fm=P1^0; //蜂鸣器输出的IO口uchar timeh,timel,i=8,t; //timeh,timel为定时器高低4位,i为演奏音符个数uchar code yinyue[]={0x63,0x71,0x83,0x71,0x82,0xA2,0x76,0x32,0x32,0x63,0x51,0x62,0x82,0x54,0x32,0x32,0x42,0x32,0x42,0x11,0x32,0x81,0x81,0x81,0x73,0x41,0x41,0x71,0x74,0x63,0x71,0x83,0x71,0x82,0xA2,0x74,0x31,0x31,0x63,0x51,0x62,0x82,0x54,0x31,0x42,0x83,0x71,0x71,0x83,0x91,0x91,0xA1,0x82,0x83,0x71,0x61,0x61,0x72,0x51,0x66,0xff};//---------------------------简谱---------------------------------------//1-7代表中音do~si,8代表高音douchar code yinfu[]={0x11,0x21,0x31,0x41,0x51,0x61,0x71,0x81,0xff};//----------------------------简谱音调对应的定时器初值---------------------------uchar code cuzhi[]={ 0xff,0xff, //占位符0xFC,0x44,0xFC,0xAD,0xFD,0x0A,0xFD,0x34,0xFD,0x83,0xFD,0xC8,0xFE,0x06,//中音do~si的T计数初值0xFE,0x22,0xFE,0x57,0xFE,0x85,0xFE,0x9B,0xFE,0xC2,0xFE,0xE4,0xFF,0x03}; //高音do的T计数初值void delay1ms(unsigned int ms); //延时ms毫秒子程序void delay165ms(uint z); //延时165ms,即1/4拍子程序void keysong(); //演奏子程序int key();void song();main(){ kongzhi=1;EA=1; //开总中断ET0=1; //开定时器0TMOD=0x01; //定时器0工作在方式1TH0=0;TL0=0;TR0=1;P3=0xff;while(1){ if(kongzhi==0){song();}else{key();keysong();}}}void song(){uint temp;uchar jp; //jp是简谱1~8的变量t=0;while(1){ temp=yinyue[t];if(temp==0xff) break; //到曲终则跳出循环jp=temp/16; //取数的高4位作为音调if(jp!=0){timeh=cuzhi[jp*2]; //取T的高4位值timel=cuzhi[jp*2+1]; //取T的低4位值}else{TR0=0;fm=1; //关蜂鸣器}delay165ms(temp%16); //取数的低4位作为节拍TR0=0; //唱完一个音停10msfm=1;delay1ms(10);TR0=1;t++;}TR0=0;fm=1;}void timer0() interrupt 1 //定时器0溢出中断子程序用于产生各种音调{TH0=timeh;TL0=timel;fm=~fm; //产生方波}void keysong(){uint temp;uchar jp; //jp是简谱1~8的变量delay1ms(50);if(i!=8){ TR0=1;temp=yinfu[i];jp=temp/16; //取数的高4位作为音调if(jp!=0){timeh=cuzhi[jp*2]; //取T的高4位值timel=cuzhi[jp*2+1]; //取T的低4位值}else{TR0=0;fm=1; //关蜂鸣器}delay165ms(temp%16); //取数的低4位作为节拍TR0=0; //唱完一个音停10msfm=1;delay1ms(10);//TR0=1;//i++;}TR0=0;fm=1;}int key(){ switch(P2){case 0xfe: return 0;case 0xfd: return 1;case 0xfb: return 2;case 0xf7: return 3;case 0xef: return 4;case 0xdf: return 5;case 0xbf: return 6;case 0x7f: return 7;default: return 8;}}//函数名:delay165ms//函数功能:采用软件实现延时约z*165ms//形式参数:无void delay165ms(uint z) //延时165ms,即1/4拍{uint x;for(x=0;x<z;x++)delay1ms(165);}//函数名:delay1ms//函数功能:采用软件实现延时约ms*1ms//形式参数:无//返回值:无void delay1ms(unsigned int ms){ unsigned int i,j;for(j=0;j<ms;j++)for(i=0;i<0x100;i++);}五.制作与调试:最后制作出的成品:六.测试结果。
单片机课程设计电子琴
单片机课程设计电子琴一、课程目标知识目标:1. 学生能理解单片机的基本原理和电子琴的基础知识,掌握单片机控制电子琴的基本电路构成。
2. 学生能掌握单片机编程的基本方法,运用C语言或汇编语言实现电子琴的音调控制。
3. 学生了解电子琴音阶与频率的关系,能运用数学知识进行音调计算。
技能目标:1. 学生能够独立设计并搭建单片机控制电子琴的硬件电路。
2. 学生能够编写程序,实现电子琴的基本功能,如音阶播放、简单曲目的演奏等。
3. 学生能够运用调试工具对电子琴程序进行调试和优化。
情感态度价值观目标:1. 学生通过动手实践,培养对单片机及电子制作的兴趣,增强学习动力。
2. 学生在团队协作中,学会沟通与交流,培养合作精神和解决问题的能力。
3. 学生在学习过程中,认识到科技对生活的改变,培养创新意识和社会责任感。
课程性质:本课程为实践性较强的课程,旨在让学生通过动手操作,掌握单片机控制电子琴的基本知识和技能。
学生特点:学生具备一定的电子基础和编程能力,对单片机有一定了解,对电子琴感兴趣。
教学要求:注重理论与实践相结合,强调动手实践和团队合作,关注学生的个体差异,提高学生的综合能力。
通过分解课程目标为具体学习成果,使学生在完成课程后能够达到上述目标。
后续教学设计和评估将以此为基础,确保课程目标的实现。
二、教学内容1. 理论知识:- 单片机原理与结构:介绍单片机的基本构成、工作原理及性能特点。
- 电子琴基础知识:讲解电子琴的音阶、音色及演奏方法。
- 单片机编程语言:回顾C语言和汇编语言的基本语法,为编程打下基础。
2. 实践操作:- 硬件电路设计:学习并搭建单片机控制电子琴的硬件电路,包括按键输入、音频输出等。
- 程序编写:编写程序实现电子琴的基本功能,如音阶播放、单音演奏等。
- 程序调试与优化:学习使用调试工具,对程序进行调试和优化。
3. 教学大纲:- 第一阶段(1课时):回顾单片机原理、电子琴基础知识及编程语言。
- 第二阶段(2课时):设计并搭建单片机控制电子琴硬件电路。
单片机简易电子琴课程设计
单片机简易电子琴课程设计一、课程目标知识目标:1. 让学生理解单片机的基础知识,掌握其编程原理;2. 帮助学生掌握简易电子琴的设计原理,包括音阶、音色和节奏的控制;3. 引导学生掌握电子琴的硬件连接和软件编程,了解两者之间的联系。
技能目标:1. 培养学生动手操作能力,能够独立完成单片机与电子琴硬件的连接;2. 培养学生编程能力,能够编写简单的程序控制电子琴演奏;3. 提高学生的问题解决能力,能够针对电子琴演奏过程中出现的问题进行调试和优化。
情感态度价值观目标:1. 培养学生对单片机及电子琴制作的兴趣,激发学习热情;2. 培养学生团队协作精神,学会在合作中共同解决问题;3. 培养学生创新思维,鼓励学生敢于尝试,勇于突破。
课程性质分析:本课程为实践性较强的课程,结合单片机技术与音乐知识,旨在培养学生的动手实践能力和创新精神。
学生特点分析:初中年级学生已经具备一定的物理知识和逻辑思维能力,对新鲜事物充满好奇心,喜欢动手实践。
教学要求:1. 结合课本知识,注重理论与实践相结合,提高学生的综合运用能力;2. 教学过程中,关注学生个体差异,给予每个学生个性化的指导;3. 注重教学评价,及时了解学生学习进度,调整教学策略,确保课程目标的实现。
二、教学内容1. 单片机基础知识:讲解单片机的组成、工作原理,重点掌握I/O口控制、定时器、中断等基本功能。
相关教材章节:第一章 单片机概述、第二章 单片机硬件结构。
2. 电子琴原理:介绍电子琴的基本原理,包括音阶生成、音色合成、节奏控制等。
相关教材章节:第三章 电子乐器原理、第四章 音频信号处理。
3. 硬件连接:学习如何将单片机与电子琴硬件连接,包括键盘矩阵、音频放大器、扬声器等。
相关教材章节:第五章 单片机接口技术。
4. 软件编程:编写程序实现电子琴的基本功能,包括音阶演奏、音色切换、节奏控制等。
相关教材章节:第六章 单片机编程基础、第七章 程序设计实例。
5. 实践操作:分组进行电子琴制作,让学生动手实践,提高实际操作能力。
基于51单片机电子琴设计课程设计
基于51单片机电子琴设计课程设计
“基于51单片机电子琴设计课程设计”是一门介绍如何使用51单片机设计电子琴的课程。
本课程主要以51单片机为核心,以硬件电路、基础电路、信号处理程序及计算机软件为基础,介绍如何设计和控制电子琴原理,包括电子琴合成器、音源和操控器等技术知识。
课程通过理论讲解、硬件示范和软件实践的方式,引导学生搭建51单片机电子琴,并运用51专有语言和C语言,将单片机程序下载到电子琴中,实现声音的发出以及控制功能。
同时,学生还能学习电子琴软件仿真技术,理解电子琴的构造及琴键按钮的控制原理,掌握电子琴的基本程序,掌握电子琴的发声装置的设计等。
本课程旨在让学生掌握单片机电子琴的原理,熟悉信号处理程序和计算机存储系统,掌握原理及应用实践。
学生可以通过实践学习基础电路结构,了解单片机操作原理和程序编写应用,也可以运用所学知识及联系实际应用,完成不同功能需求的电子琴设计、系统设计及控制。
从而为建立有趣、实用的小型电子产品奠定基础。
经过本课程的学习,学生可以比较熟练的设计出基于51单片机的电子琴系统,实现基本的功能及控制,熟悉电子琴原理及程序设计,熟悉电子琴系统分析及调试。
另外,还可以运用计算机软件如Keil C51等,完成更复杂的电子琴程序设计,使学生掌握先进的电子琴设计技术,学会分析并解决实际的电子琴控制问题,进一步提升学生的学习能力和职业发展能力。
c51单片机课程设计——电子琴
目录1.设计题目 (3)2. 设计目的 (3)3. 主要内容 (3)4. 音符频率与计数初值对照表 (3)5.定时/计数器的工作原理 (4)5.1 方式寄存器 (4)5.2启/停控制寄存器TCON (6)6. 中断控制 (6)6.1 TCON用于中断请求 (6)6.2 中断允许寄存器IE (7)7.系统分析 (7)7.1 系统组成 (8)7.2 系统工作原理 (8)8.系统硬件设计 (8)8.1 系统硬件总体设计 (8)8.2 LED显示模块 (9)8.3 扬声器模块 (9)8.4 子系统(模块)电路图 (10)8.4.1 共阳极电路图 (10)8.4.2 上位开关 (10)9.系统软件设计 (10)9.1 系统软件总体设计 (10)9.2 本系统总体代码 (11)10.课程设计成果 (15)11.个人总结 (15)参考文献 (17)一、设计题目:简易电子琴二、设计目的:(1)熟悉单片机的内部结构;(2)掌握C51编程方法;(3)掌握定时器与发声的关系;(4)掌握交流蜂鸣器的发声原理和程序控制方法;(5)掌握串行控制键盘键的识别方法;(6)掌握声音频率的计算方法。
三、主要内容本系统设计制作一个可演奏的电子琴。
综合应用了两项设计。
(1)能产生纯音,了解音调高低的控制方法。
(2)用键盘代替电子琴的键盘,控制演奏音乐。
(a)掌握串行控制键盘键的识别方法;(b)根据键值控制发声。
(3)至少演奏一支乐曲。
四、音符频率与计数初值对照表:低音7 370 0xf64c 中音6 740 0xfb29高音6 1480 0xfd98低音7 415 0xf75a 中音7 831 0xfbb1高音7 1661 0xfddc五、定时/计数器原理MCS-51单片机内部有2个16位的可编程定时/计数器,定时/计数器0由计数器TH0和TL0组成,定时/计数器1由计数器TH1和TL1组成,THX和TLX(X=0,1)分别为两个8位计数器,连接起来可组成16位计数器。
单片机课程设计——简易电子琴
汇报人:
单击输入目录标题 单片机基础知识 简易电子琴系统设计 单片机与简易电子琴的结合 简易电子琴的功能扩展 简易电子琴的优化与改进
添加章节标题
单片机基础知识
单片机简介
单片机是一种集成电路芯片,将微处理器、存储器、输入/输出接口等集成在一起 单片机具有体积小、功耗低、可靠性高、编程灵活等特点 单片机广泛应用于工业控制、家电、汽车电子等领域 单片机课程设计是学习单片机应用的重要环节,可以提高学生的实践能力和创新能力
音乐播放与控制
单片机控制:通过单片机控制电子琴的音色、音高和节奏 音乐播放:单片机通过控制电子琴的音色、音高和节奏,实现音乐的播放 控制方式:可以通过按键、触摸屏等方式控制音乐的播放 功能扩展:可以增加录音、播放、暂停、快进、快退等功能,提高用户体验
显示模块的应用
显示模块的作用:显示电子琴 的音色、音高、节奏等信息
单片机在简易电子琴中的应用
控制音量:通过单片机控制 音量的大小,实现电子琴的 音量调节功能。
控制音色:通过单片机控制 不同频率的音色,实现电子 琴的多种音色效果。
控制节奏:通过单片机控制 节奏的快慢,实现电子琴的
节奏调节功能。
控制和弦:通过单片机控制 和弦的演奏,实现电子琴的
和弦演奏功能。
单片机开发环境搭建
测试内容:音色、音调、 音量、节奏等性能指标
测试结果分析:对测试数 据进行分析,找出问题并 解决
测试报告:记录测试过程、 结果和分析,为后续改进 提供依据
单片机与简易电子琴的结合
单片机控制简易电子琴的原理
单片机作为核心控制单元,负责接收和处理来自键盘的输入信号
单片机根据接收到的输入信号,控制电子琴的音源产生相应的音调
电子琴单片机课程设计
电子琴单片机课程设计一、课程目标知识目标:1. 学生能理解电子琴单片机的基本原理,掌握其结构与功能。
2. 学生能掌握电子琴单片机编程的基本方法,包括音符、节奏和音量的控制。
3. 学生能了解电子琴单片机在音乐制作与自动化控制中的应用。
技能目标:1. 学生能运用所学的知识,独立完成电子琴单片机的编程与调试。
2. 学生能在团队合作中发挥自己的专长,共同完成具有一定难度的电子琴单片机项目。
3. 学生能运用电子琴单片机创作简单的音乐作品,并进行演奏。
情感态度价值观目标:1. 学生通过学习电子琴单片机课程,培养对音乐和电子技术的兴趣,提高创新意识和动手能力。
2. 学生在团队合作中,学会相互尊重、沟通与协作,培养团队精神和责任感。
3. 学生能够认识到电子琴单片机在现代音乐产业中的重要性,激发对科技改变生活的探索热情。
课程性质:本课程为实践性较强的课程,结合理论知识与实际操作,培养学生的动手能力和创新能力。
学生特点:学生处于高年级阶段,具备一定的电子技术基础和音乐素养,对新鲜事物充满好奇,具备一定的自学能力和团队协作能力。
教学要求:教师应注重理论与实践相结合,引导学生主动探索,鼓励学生创新,关注学生的个体差异,提高学生的综合素质。
通过课程学习,使学生能够将所学知识应用于实际项目中,实现课程目标的达成。
二、教学内容本课程教学内容主要包括以下几部分:1. 电子琴单片机原理:介绍电子琴单片机的基本构成、工作原理和功能特点,使学生了解电子琴单片机在音乐领域的应用。
教学内容:- 电子琴单片机的结构组成- 工作原理与功能特点- 电子琴单片机在音乐领域的应用案例2. 电子琴单片机编程:学习电子琴单片机的编程方法,包括音符、节奏、音量的控制。
教学内容:- 编程环境与编程语言介绍- 音符、节奏、音量编程方法- 常用编程技巧与实践案例3. 电子琴单片机应用:结合实际项目,教授如何运用电子琴单片机进行音乐创作和自动化控制。
教学内容:- 电子琴单片机在音乐创作中的应用- 自动化控制原理及实践- 创意项目设计与实现4. 团队合作与项目实践:培养学生团队协作能力,共同完成具有一定难度的电子琴单片机项目。
基于51单片机的电子琴设计课程设计
基于51单片机的电子琴设计课程设计单片机原理》课程设计前言本课程设计旨在通过基于51单片机的电子琴设计,加深学生对单片机原理的理解和应用。
在本设计中,我们将介绍电子琴的设计要求、所用设备及软件以及总体设计方案。
随后,我们将详细介绍系统硬件设计中琴键控制电路、音频功放电路、时钟-复位电路和LED显示电路的设计。
第1章基于51单片机的电子琴设计1.1 电子琴的设计要求在电子琴的设计中,我们需要考虑琴键数量、音频输出质量、电源电压和外部接口等因素。
在本设计中,我们将采用25个琴键,保证音频输出质量和电源电压稳定,并提供外部接口以便于扩展和调试。
1.2 电子琴设计所用设备及软件在本设计中,我们将使用51单片机、琴键、音频功放、时钟、LED显示器等设备,并使用Keil C51编译器进行软件开发。
1.3 总体设计方案在总体设计方案中,我们将采用按键扫描方式实现琴键控制,使用PWM技术实现音频输出,使用外部晶振提供时钟信号,并使用LED显示器显示琴键状态。
第2章系统硬件设计2.1 琴键控制电路在琴键控制电路中,我们将采用矩阵按键扫描方式,通过51单片机的IO口进行扫描和检测。
同时,我们还将使用电容式触摸开关来实现琴键的触发。
2.2 音频功放电路在音频功放电路中,我们将采用TDA7297芯片作为功放,通过PWM技术实现音频输出,并通过滤波电路滤除杂音和谐波。
2.3 时钟-复位电路在时钟-复位电路中,我们将采用12MHz晶振作为时钟源,并使用复位电路确保系统在上电时能够正确运行。
2.4 LED显示电路在LED显示电路中,我们将采用MAX7219芯片实现LED点阵显示,并通过SPI接口与51单片机进行通信。
同时,我们还将使用CD4511芯片实现数码管显示琴键状态。
通过本课程设计,我们可以深入理解单片机原理的应用,掌握电子琴的设计和制作技术,提高自身的实践能力和创新能力。
2.5 整体电路本章将介绍电子琴的整体电路设计。
单片机电子琴课程设计
单片机电子琴课程设计一、课程目标知识目标:1. 让学生掌握单片机的基本原理,理解其内部结构和功能。
2. 使学生了解电子琴的基本工作原理,掌握单片机控制电子琴的方法。
3. 帮助学生掌握编程语言,如C语言,用于编写单片机控制程序。
技能目标:1. 培养学生动手搭建单片机电子琴硬件电路的能力。
2. 培养学生运用编程语言编写单片机程序,实现电子琴的基本功能。
3. 提高学生分析问题和解决问题的能力,使学生能够独立调试和优化单片机电子琴程序。
情感态度价值观目标:1. 培养学生对电子技术的兴趣,激发学生创新意识和探索精神。
2. 培养学生团队协作意识,提高沟通与交流能力。
3. 引导学生关注单片机技术在现实生活中的应用,认识到科技对社会发展的推动作用。
分析课程性质、学生特点和教学要求:本课程为单片机电子琴课程设计,旨在让学生将所学理论知识与实际应用相结合,提高学生的动手实践能力。
针对初中年级学生,课程内容需符合学生的认知水平和兴趣。
在教学过程中,注重引导学生主动参与,培养其独立思考和解决问题的能力。
课程目标分解:1. 知识目标:通过讲解、示范和练习,使学生掌握单片机原理、电子琴工作原理及编程方法。
2. 技能目标:通过动手实践,培养学生搭建硬件电路、编写程序和调试设备的能力。
3. 情感态度价值观目标:通过课程学习,激发学生对电子技术的兴趣,培养其团队协作意识和创新能力。
二、教学内容1. 单片机原理及内部结构:讲解单片机的组成、工作原理、I/O口功能等基础知识,对应教材第3章内容。
2. 电子琴工作原理:介绍电子琴的基本构成、音阶产生原理、键盘扫描方法等,对应教材第5章内容。
3. C语言编程基础:讲解C语言的基本语法、数据类型、运算符、控制语句等,对应教材第2章内容。
4. 单片机编程与控制:结合实例,讲解如何使用C语言编写单片机程序,实现电子琴功能,对应教材第4章内容。
5. 硬件电路搭建:介绍电子琴硬件电路的组成、元件选型及连接方法,对应教材第6章内容。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
郑州科技学院单片机课程设计题目:基于51单片的声光电子琴设计学生姓名:苏梦强专业班级:电子科学与技术学号:201131074院系:电气工程学院指导教师:饶美丽完成时间:2015年1月9日目录一、设计任务与要求............ 错误!未定义书签。
1.1 设计任务 01.2 设计要求 01.3 设计意义 0二、方案总体设计 (1)2.1 方案对比 (1)2.2总体设计 (3)2.3 总体方案工作原理 (3)三、软件设计 (4)3.1 系统流程 (4)3.2延时源代码 (5)3.3 发音源代码 (5)3.3单个按键源代码 (5)3.4所有程序代码 (6)四、系统仿真与调试........... 错误!未定义书签。
4.1 仿真软件简介 (8)4.2软件调试 (9)4.3 使用说明 (10)五、设计总结 (10)附录1:总体电路原理图 (12)附录2:元器件清单 (14)一、设计任务与要求1.1 设计任务实现电子琴发声控制系统;要求电路实现如下功能:利用蜂鸣器作为发声部件,两个数码管作为显示部件,设置10个按键,实现高音、中音、低音的1、2、3、4、5、6、7的发音。
并在存储一首歌曲的内容,可以实现自动播放。
说明:单片机的工作时钟频率为11.0592MHz。
1.2 设计要求设计一个带有复位电路,晶振时钟,能显示音调字符的8键电子琴。
1.3 设计意义该设计具有以下优点:1)可以方便得知播放的音符和音调;2)比传统电子琴功能更完善;3)制作简单,成本低二、方案总体设计本次课程设计的课题是基于51单片机的电子琴的设计,所要达到的要求如下:1)利用蜂鸣器作为发声部件。
2)一个数码管作为显示部件。
3)设置8个按键,实现高音、中音、低音的1、2、3、4、5、6、7、8的发音。
本次设计主要是要通过软硬件的配合实现电子琴的上述功能,操作人员可以通过按下键盘上任意一个键来发出相应的音符。
2.1 方案对比AT89C51具有高速度、低电压、低功耗、且可靠性和成本都比较低的特点。
因此本次课程设计采用AT89C51单片机作为整个电路核心控制器件。
对于本控制系统使用一片AT89C51系列的单片机,不需要外扩展存储器,就能实现显示、预制状态、动态调节的功能,因而整体结构简单。
设计电路时运用89C51系列单片机的接口来实现各种输入、输出功能。
P2.7待定部分口用作输出口,向发声电路输出信号;P1口和P0口共同实现一个键盘的功能。
方案一:采用单个的逻辑器件组合我们知道计数器8253可以产生任意频率的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率与计数器的频率对应起来就可通过计数器产生音乐了。
根据本实验要求,采用8279将键扫描得到的键值通过查表得到相应的8253的频率值,将从8253得到相对应的按键弹奏信号经过LM386进行放大,再用喇叭输出,就实现了简易电子琴的基本功能,也就完成了实验的要求方案二:用VHDL语言编程来实现利用我们实验室先进的数字电路实验设备,我们可以采用VHDL语言编程来实现。
我们可以通过VDHL语言,对实验原理图的各个部分进行设计,通过编译,可以在计算机上下载此实验原理图,利用电路学习机上的芯片。
我们很快就可以设计出一个简单的电子琴。
并实现其功能。
方案三:采用AT89C51单片机采用AT89C51单片机作为主控芯片,设置键盘、蜂鸣器等外围器件,另外还用到一些简单器件如:一位数码管,和PNP 型三极管等。
利用按键实现音符和音调的输入;一位的数码管进行被操作的按键显示:用PNP型三极管实现低音频功率放大;最后用蜂鸣器发音。
方案比较:方案一采用单个的逻辑器件组合实现。
这样虽然比较直观,逻辑器件分工鲜明,思路也比清晰,一目了然,但是由于元器件种类、个数繁多,而过于复杂的硬件电路也容易引起系统的精度不高、体积过大等不利因素。
例如七个不同的音符是由七个不同的频率来控制发出的,所用仪器之多显而易见。
方案二采用VHDL语言编程来实现电子琴的各项功能。
系统主要由电子琴发声模块、选择控制模块和储存器模块组成。
和方案一相比较,方案二就显得比较笼统,虽然我们可以看到用超高速硬件描述语言VHDL的优势,但本质上它只是把整个系统分为了若干个模块,而不牵涉到具体的硬件电路。
方案三与前两种方案相比,主控芯片采用AT89C51单片机,它是大规模集成电路技术发展的产物,具有高性能、高速度、体积小、价格低廉、稳定可靠、应用广泛的特点。
同时具有强大的控制功能和灵活的编程实现特性,由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。
而第三种方案具有经济可行性、技术可行性、实物应用性。
所以我们选择第三种方案。
2.2总体设计设计总体框架图如图1所示图1 单片机总体框架图2.3 总体方案工作原理由AT89C51的P1口8个按键控制DO,RE,MI,FA,SO,LA,XI,DO的各个音符,在由位于P0口的一位数码管显示出来,同时位于P3^7口的蜂鸣器发出声音。
发音原理:若要产生音频脉冲,只要算出某一音频的周期,再将周期除以2,即为半周期的时间。
利用定时器记时半周期时间,每当记时终止后就将P3^7反相,然后记时再反相。
就可在P3^7上得到此频率的脉冲。
利用AT89C51的内部定时器使其工作计数器模式下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶。
三、软件设计3.1 系统流程在绘制传统流程图时注意几点:1)熟练绘制传统流程图的基本元素,三种基本结构的流程图标准画法2)将复合条件转为多个单一条件3)循环注意初值、变化和终止4)算法的重点实现一定体现出来程序流程如图12所示:图12 程序流程图3.2延时源代码void DelayMS(uint x){uchar t;while(x--) for(t=0;t<120;t++);}3.3 发音源代码void Play(uchar y){uchar i;for(i=0;i<100;i++){BEEP=~BEEP;//对蜂鸣器电平求反DelayMS(y);}BEEP=1;//给蜂鸣器一个高电平}3.3单个按键源代码:if(K1==0){DelayMS(10);//按键去抖动if(K1==0){num=1;P0=table[num];Play(1);}while(!K1);3.4所有程序代码#include <reg52.h> //调用单片机头文件#define uchar unsigned char //无符号字符型宏定义变量范围0~255#define uint unsigned int //无符号整型宏定义变量范围0~65535sbit beep = P2^5; //蜂鸣器定义sbit K1=P1^0;//给P1^0定义,控制DO的发音sbit K2=P1^1;//给P1^1定义,控制XI的发音sbit K3=P1^2;//给P1^2定义,控制LA的发音sbit K4=P1^3;//给P1^3定义,控制SO的发音sbit K5=P3^4;//给P3^4定义,控制FA的发音sbit K6=P3^5;//给P3^5定义,控制MI的发音sbit K7=P3^6;//给P3^6定义,控制RE的发音sbit K8=P3^7;//给P3^7定义,控制DO的发音sbit K9=P2^0;//音乐播放按键uchar flag_en = 0; //开始放歌uchar flag_i = 0;//数码管段选定义0 1 2 3 4 56 7 8 9uchar code smg_du[]={0xde,0x90,0xcd,0xd9,0x93,0x5b,0x5f,0xd0,0xdf,0xdb // AB C D E F不显示}; //断码uchar m,n;uchar code T[49][2]={{0,0},{0xF8,0x8B},{0xF8,0xF2},{0xF9,0x5B},{0xF9,0xB7},{0xFA, 0x14},{0xFA,0x66},{0xFA,0xB9},{0xFB,0x03},{0xFB,0x4A},{0x FB,0x8F},{0xFB,0xCF},{0xFC,0x0B},{0xFC,0x43},{0xFC,0x78},{0xFC,0xAB},{0xFC,0xDB},{0xF D,0x08},{0xFD,0x33},{0xFD,0x5B},{0xFD,0x81},{0xFD,0xA5},{ 0xFD,0xC7},{0xFD,0xE7},{0xFE,0x05},{0xFE,0x21},{0xFE,0x3C},{0xFE,0x55},{0xFE,0x6D},{0xFE ,0x84},{0xFE,0x99},{0xFE,0xAD},{0xFE,0xC0},{0xFE,0x02},{0x FE,0xE3},{0xFE,0xF3},{0xFF,0x02},{0xFF,0x10},{0xFF,0x1D},{0xFF,0x2A},{0xFF,0x36},{0xFF,0 x42},{0xFF,0x4C},{0xFF,0x56},{0xFF,0x60},{0xFF,0x69},{0xFF,0 x71},{0xFF,0x79},{0xFF,0x81}};uchar code music1[][2]={{0,4}, //青花瓷{0,4},{24,4},{24,4},{21,4},{19,4},{21,4},{14,8},{19,4},{21,4 },{24,4},{21,4},{19,16},{0,4},{24,4},{24,4},{21,4},{19,4},{21,4}, {12,8},{19,4},{21,4},{24,4},{19,4},{17,16},{0,4},{17,4},{19,4},{2 1,4},{24,4},{26,4},{24,4},{22,4},{24,4},{21,4},{21,4},{19,4},{19,16},{0,4},{17,4},{19,4},{17,4},{17,4},{19,4},{17,4},{19,4},{19,4},{21, 8},{24,4},{21,4},{21,12},{0,4},{24,4},{24,4},{21,4},{19,4},{21,4} ,{14,8},{19,4},{21,4},{24,4},{21,4},{19,16},{0,4},{24,4},{24,4},{ 21,4},{19,4},{21,4},{12,8},{19,4},{21,4},{24,4},{19,4},{17,16},{0, 4},{17,4},{19,4},{21,4},{24,4},{26,4},{24,4},{22,4},{24,4},{21,4} ,{21,4},{19,4},{19,12},{12,4},{21,8},{19,4},{19,8},{17,16}, {0xFF,0xFF}};四、系统仿真与调试4.1 仿真软件简介Proteus是由Labcenter Electronics开发的功能强大的单片机仿真软件,现在最新版本6.9 SP5。