AT89C51单片机的多音阶电子琴.ppt
《AT89C51单片机的多音阶电子琴.ppt》由会员分享,可在线阅读,更多相关《AT89C51单片机的多音阶电子琴.ppt(46页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、设计方案 鉴于单片机强大的控制功能和灵鉴于单片机强大的控制功能和灵活的编程实现特性,本设计以活的编程实现特性,本设计以AT89S51AT89S51单片机为核心控制元件,单片机为核心控制元件,设计一个由设计一个由4 X 44 X 4组成组成1616个按键矩个按键矩阵,构成阵,构成1616个音阶,可以随意弹个音阶,可以随意弹奏想要表达的音乐的多音阶电子奏想要表达的音乐的多音阶电子琴。琴。 目录单片机电子琴组成框图单片机电子琴组成框图电路原理图电路原理图各模块的简单介绍各模块的简单介绍软件设计软件设计硬件及软件的调试硬件及软件的调试总结总结多音阶电子琴的主要电路主要由4 X 4按键矩阵电路、蜂鸣器、
2、LED显示、复位电路、晶振电路、电源电路几部分组成。电子琴硬件电路部分设计一、一、单片机电子琴组成框图单片机电子琴组成框图二、电路原理图二、电路原理图工作原理:工作原理:根据方案的要求,将程序写入STC89C51单片机芯片。利用不同的音阶的频率不一样,用单片机来模拟电子琴,可以使单片机的定时器工作在计数器模式下,工作方式设为方式1,改变TH0和TL0来产生不同的频率,从而产生不同的音阶。 P1口接4*4矩阵键盘行和列,用行扫描法读取P1口外接的键盘,若有键按下:双位数码显示管显示0116;若没有键按下则显示00,当按下复位键的开关后,双位数码显示管显示00。单片机P3.7作为音频放大电路的输入
3、。电电子子琴琴最小系统最小系统电源电路电源电路控制系统控制系统矩阵按键矩阵按键独立按键独立按键显示系统显示系统LEDLED显示显示发声系统发声系统蜂鸣器蜂鸣器时钟电路时钟电路复位电路复位电路AT89S51单片机及其引脚的简单说明AT89S51 AT89S51 是一个低功耗,高性能是一个低功耗,高性能CMOS 8 CMOS 8 位单片机,片内含位单片机,片内含 4kB4kB的可擦的可擦 除的除的Flash ROMFlash ROM,兼容标,兼容标准准 MCS-51 MCS-51 指令系统及指令系统及 80C5180C51引引脚结构,功能强大的微型计算脚结构,功能强大的微型计算AT89S51 AT
4、89S51 可为许多嵌入式控制应可为许多嵌入式控制应用系统提供高性价比的解决方案。用系统提供高性价比的解决方案。 AT89S51 AT89S51 具有如下特点:具有如下特点:40 40 个个引脚,引脚,4kB Flash 4kB Flash 片内程序存储片内程序存储器,器,128B128B的随机存取数据存储的随机存取数据存储器器,32,32个外部个外部I/OI/O口口,5,5个中断优先个中断优先级级,2 ,2 层中断嵌套中断,层中断嵌套中断,2 2 个个16 16 位可编程定时计数器位可编程定时计数器,2 ,2 个全双工个全双工串行通信口串行通信口, ,片内时钟振荡器。片内时钟振荡器。 管脚说
5、明 VCC:供电电压 GND:接地 P0 口: P0 能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH 编程时,P0 口作为原码输入口,当FIASH 进行校验时,P0 输出原码,此时P0 外部必须被拉高。 P1 口: P1 口管脚写入1 后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH 编程和校验时,P1 口作为第八位地址接收。 P2 口: 当P2 口被写1时,其管脚被内部上拉电阻拉高,且作为输入。 P2 口当用于外部程序存储器或16 位地址外部数据存储器进行存取时,P2 口输出地址的高八位。P2 口在 F
6、LASH 编程和校验时接收高八位地址信号和控制信号。 P3口的详细介绍P3 口:P3 口管脚是8 个带内部上拉电阻的双向I/O 口,可接收输出4 个TTL 门电流。当P3 口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3 口将输出电流(ILL)这是由于上拉的缘故。 电源电路电源电路工作过程:工作过程:本设计,开发板采用5v12v的直流电,当按下电源开关,发光二极管有电流通过,二极管发光,使整个电路板通电,为了防止电流反灌,加了一个二极管,保护三端稳压器。时钟电路时钟信号的产生在在MCS-51MCS-51系列单片机内部有一个高增益反相放大电路,系列单片机内
7、部有一个高增益反相放大电路,其输入引脚为其输入引脚为XTAL1XTAL1其输出引脚为其输出引脚为XTAL2XTAL2。只要在。只要在XTAL1XTAL1和和XTAL2XTAL2之间跨接晶之间跨接晶体振荡器和微调电容,体振荡器和微调电容,就可以构成一个稳定的自激震荡器就可以构成一个稳定的自激震荡器时序概念有4个,分别为:时时 序序节拍节拍状态状态机器周期机器周期指令周期指令周期节拍把把振荡脉冲得周期定义为节拍,用振荡脉冲得周期定义为节拍,用P P表示,也就是晶振的频率表示,也就是晶振的频率状态振荡脉冲经过二分频后,就是单片机时钟信号的周期,定义为状态,用振荡脉冲经过二分频后,就是单片机时钟信号的
8、周期,定义为状态,用S S表示表示一个状态包含两个节拍一个状态包含两个节拍机器周期MCS-51MCS-51系列单片机采用定时控制方式,有固有的机器周期。规定一个系列单片机采用定时控制方式,有固有的机器周期。规定一个机器周期的宽度为机器周期的宽度为6 6个状态个状态指令周期一条指令所需要的时间称为指令周期。是最大的时序定时单位,它由若干个机器一条指令所需要的时间称为指令周期。是最大的时序定时单位,它由若干个机器周期组成,一般包含一个机器周期的指令叫周期指令,包含两个为双周期指令周期组成,一般包含一个机器周期的指令叫周期指令,包含两个为双周期指令RST(pin 9)引脚是复位信号的输入端。此引脚高
9、电平有效,其有效时间应为二个机器周期。 复位信号及其产生 复位信号的电路逻辑图复位信号的电路逻辑图 复位操作 上电自动复位 按键手动复位 上电自动复位将外部复位电路的电容充电就可以实现上电自动复位了,如下图所示。按键手动复位按键手动复位 电平方式电平方式 脉冲方式脉冲方式 按键电平复位通过RST端经电阻与电源Vcc接通而实现的利用RC微分电路产生的正脉冲来实现按键脉冲复位脉冲方式本系统的复位电路采用的是按键方式。电阻为10K,电容为10uF、晶振为12MHz,如下图:矩阵式键盘的概述本系统采用的是非编码键盘中的矩阵键盘。矩阵键盘也称为行列式键盘,一般用于按键数目较多的场合。它是由行和列组合而成
10、,一组是行线,另一组是列线,按键就位于行和列的交叉点。如图8所示,一个4*4的矩阵键盘,有16个按键,我们分别用着16个键来模拟电子琴的按键:低音 3、 4、 5、 6、 7;中音 1、 2、 3、 4、 5、 6、 7 ;高音 1、 2、 3、 4 。较独立键盘而言,矩阵式键盘节省了I/O口线。 扫描过程先把某一列置为低电平,其他的各列均为高电平,然后检查各行线的变化,若某行线为低电平,则可以确定被按下的键处于此行此列的交叉点上键盘控制电路(一):(一):4 4* *4 4矩阵键盘原理接线图矩阵键盘原理接线图4 4* *4 4矩阵键盘模块矩阵键盘模块void saomiao()void sa
11、omiao() uchar Key_Temp1, Key_Temp2; /uchar Key_Temp1, Key_Temp2; /* *读出的键值读出的键值* */ /Key_Temp1 = Keyscan(); /Key_Temp1 = Keyscan(); /* *读入按键读入按键* */ / if(Key_Temp1 != 16) /if(Key_Temp1 != 16) /* *有键按下有键按下* */ /delay_ms(5); /delay_ms(5); /* *延时消抖延时消抖* */ /Key_Temp2 = Keyscan(); /Key_Temp2 = Keyscan()
12、; /* *再读一次再读一次* */ /if (Key_Temp1 = Key_Temp2) /if (Key_Temp1 = Key_Temp2) /* *两次相等两次相等* */ / Key_Value = Key_Temp1; / Key_Value = Key_Temp1; /* *就确认下来就确认下来* */ / FreqTemp = FreqtabKey_Value; /FreqTemp = FreqtabKey_Value; /* *根据键值,取出定时半周期的初始值根据键值,取出定时半周期的初始值* */ /TR0 = 1; /TR0 = 1; /* *启动定时器,发音启动定时器
13、,发音* */ / while (Keyscan() 16); / while (Keyscan() 16); /* *等待释放等待释放* */ / SPK = 1; SPK = 1; / /* *停止发音停止发音* * TR0 = 0; /TR0 = 0; /* *暂不发音暂不发音* */ / 4*4矩阵键盘扫描软件模块数码管简介数码管简介数码管能在低电压、小电流驱动下发光,能够与数码管能在低电压、小电流驱动下发光,能够与CMOSCMOS、TTLTTL电路兼容。它的发光响应时间非常短,电路兼容。它的发光响应时间非常短,通常小于通常小于0.1s0.1s,其高频特性好,单色性好,亮度比,其高频特
14、性好,单色性好,亮度比较高。较高。LEDLED使用寿命很长,通常在使用寿命很长,通常在1010万小时以上,甚万小时以上,甚至可以达到至可以达到100100万小时以上,且其成本很低。万小时以上,且其成本很低。LEDLED数数码管已被广泛运用于计算机的数显器件、数控装置码管已被广泛运用于计算机的数显器件、数控装置等等等等根据根据LEDLED数码管显示位数的多少,可以把数码管划分数码管显示位数的多少,可以把数码管划分为一位、双位、多位为一位、双位、多位LEDLED数码管显示器。一位的数码管显示器。一位的LEDLED我们通常称为我们通常称为LEDLED数码管,两位以上(包括两位)我数码管,两位以上(包
15、括两位)我们一般称为显示器。双位们一般称为显示器。双位LEDLED显示器是把两只数码管显示器是把两只数码管封装成一体,它亮度均匀,一致性好,光衰低,可封装成一体,它亮度均匀,一致性好,光衰低,可靠性高而且结构紧凑、成本比较低(与两只一位的靠性高而且结构紧凑、成本比较低(与两只一位的数码管相比较)。数码管相比较)。显示模块工作过程本次设计采用的是七段多位的数码显示器,通过矩阵键盘控制显示每个键的键值,当没有键按下时,显示00,当按下第一个按键时,显示01,、当按下第16个按键时 ,显示16.数码管显示原理接线图74als573芯片说明该芯片相当于一个具有三态输出的八路该芯片相当于一个具有三态输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AT89C51 单片机 多音 电子琴
限制150内