基于51单片机的简易电子琴设计

发布者:和谐相伴最新更新时间:2023-03-28 来源: elecfans关键字:51单片机  简易电子琴  共阳数码管 手机看文章 扫描二维码
随时随地手机看文章

一.系统概述

系统使用的模块有AT89C51单片机+8位共阳数码管+矩阵键盘+小灯+按键+蜂鸣器。

本次设计的电子琴系统以AT89C51单片机为控制核心,使用数码管显示音符,右侧的矩阵键盘可以理解为琴键,按下不同的按键就能显示不同的音符。按下下方的弹奏/停止按键后点击歌曲选择就能进入自动播放模式,矩阵键盘上每个按键都对应一种音调。


二.仿真概述

1.使用数码管显示按下的音符。

923b69a0-3f09-11ed-9e49-dac502259ad0.jpg

2.通过矩阵键盘输入音符,蜂鸣器就会发出对应的音调。

926e3394-3f09-11ed-9e49-dac502259ad0.jpg

3.按下弹奏/停止按键后,点击歌曲选择,并选择矩阵键盘上的任一按键就能播放指定的音调。

92aaf194-3f09-11ed-9e49-dac502259ad0.jpg


三.程序设计

使用Keil 51进行程序设计,打开Proteus时程序是默认烧录的状态,如果没有烧录点击AT89C51单片机并将程序导入就能运行系统(程序文件是后缀为hex的文件)。

92ea7d28-3f09-11ed-9e49-dac502259ad0.jpg


关键字:51单片机  简易电子琴  共阳数码管 引用地址:基于51单片机的简易电子琴设计

上一篇:基于51单片机的智能路灯控制器设计
下一篇:AT89S51单片机的内部时钟电路设计

推荐阅读最新更新时间:2024-11-12 12:35

51单片机之串口波特率配置
232串口模式,共有4钟方式,其中方式0、方式2的波特率是固定的。方式1、方式3的是可变波特率,这两个是用T1定时器作为波特率发生器。 方式0的波特率配置 方式0的波特率计算公式如下: 其中B是波特率,fosc是晶振的频率。 方式2的波特率配置 方式2的波特率计算公式如下: 其中B是波特率,fosc是晶振的频率,SMOD是PCON寄存器最高位。 方式1和3的波特率配置 由于方式1和3是用T1定时器作为波特率发生器,计算时间常数就可以了。此时T1一般工作在方式2(8为位自动重装入工作方式)。 波特率的计算公式是: 因此我们只需要计算出T1溢出率,就可以得到波特率了,下面我们就去求解溢出率。 计数器初值X的
[单片机]
<font color='red'>51单片机</font>之串口波特率配置
基于51单片机的16×16点阵屏流动显示
一.制作所需器材 1.单片机开发扳一块; 2.16*16LED点阵一块; 3.杜邦线若干; 二.STC89C52简介 STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 单片机引脚图: 三、点阵的简介 LED点阵屏通过LED(发光二极管)组成,以灯珠亮灭来显示文字、图片、动画、视频等,是各部分组件都模块化的显示器件
[单片机]
基于<font color='red'>51单片机</font>的16×16点阵屏流动显示
51单片机Modbus_RTU示范源程序
晶振频率 :22.1184M 可以通过程序修改 Modbus RTU 示范程序 适用于微嵌51单片机最小系统板 在AT89S52和STC89C52单片机上测试通过,可以移植到其他51系列单片机 通讯设置: 波特率:9600 数据位:8 停止位:1 检验位:无 程序默认地址:1 (可以通过修改localAddr变量改变地址) 工程编译环境:KeilC V4.00a 内含实例modbus程序源代码,技术资料,以及调试工具
[单片机]
<font color='red'>51单片机</font>Modbus_RTU示范源程序
LCD显示的c51单片机频率计
一 课题目标 本课题是用51系列单片机来实现频率计,并利用LCD1602液晶显示器来显示所测频率值。 二 课题分析 LCD频率计是利用十进制数字显示被测信号频率的数字测量仪器。根据定义,频率就是在1s内信号变化的周期数。在一个单片机系统中,对频率的测量就是要对外部信号的计数,每到1s,将计数所得的数值送到显示器上。在这里,我们重要是学习和掌握如何使用LCD1602液晶显示器来显示所测频率。这里要求实现对0~200kHz的信号频率进行准确测量,测量误差不超过 1Hz。频率计的功能是测出1s、对输入的脉冲计数和数字显示的硬件电路及相应的程序。实验原理图如下: 三 实验元件及器材: 一个AT89S52、一个发光二极管、一个1
[单片机]
基于51单片机的高频频率计的设计
  基于51 单片机设计 了一款测试范围在1Hz~10MHz的频率计。系统通过峰值有效电路和有效值电路将正弦渡、方波和三角波转化为直流信号送入单片机,通过编写相应的程序计算出其有效值和峰峰值的比,实现自动检测的目的,并由显示电路显示测量结果。该系统电路简洁、软件编写简单、调试难度低。   目前在频率测量领域中,对于高频率信号高精度测量大都使用ARM、FPGA等高速处理器加专用计数芯片来完成。但这种方法程序编写复杂,并且其处理器外围电路复杂,这增加了其调试难度,降低了可操作性。   文中设计的高频信号频率计,除数据处理和显示交由单片机负责外,测频核心电路用经检测的模拟电路完成,该高频频率计电路简洁,软件编写简单,降低了调试难度的同时
[单片机]
基于<font color='red'>51单片机</font>的高频频率计的设计
基于AT89C51单片机控制LED显示屏的电路设计
LED显示屏广泛应用于工矿企业、学校、商场、店铺、公共场所等进行图文显示,广告宣传,信息发布。本文设计一种由4个16×16点阵LED模块组成的显示屏,由单片机作控制器,平滑移动显示任意多个文字或图形符号,本电路可级联扩展实现由任意多个16×16点阵LED模块组成的显示屏。 1 电路设计 控制电路由AT89C51单片机作控制器,显示屏由4个16×16点阵LED模块组成,每个16×16点阵LED模块由4个8×8点阵LED模块组成,用户可根据需要扩展增加任意多个16×16点阵LED模块。8×8点阵LED模块结构如图1所示,共8行8列,每个发光二极管放置在行线和列线的交叉点上,共64个发光二极管。当某一列为高电平,某一行为低电平时,则
[单片机]
基于AT89C<font color='red'>51单片机</font>控制LED显示屏的电路设计
C51单片机和AVR单片机的区别
1.avr为risc结构cpu,大多数指令在一个时钟周期内完成.所以MIPS比51高 2.avr单片机的复位电平为负逻辑, 而51为正逻辑 3.汇编的程序不通用,但是如果用c写的程序还是可以移植的. AVR 单片机是ATMEL 在90年代推出的精简指令集RISC的单片机,跟PIC类似.使用哈佛结构.可以这样类比,AT89C52相当于复杂指令集CISC的intel的奔腾CPU,AT90S8515相当于AMD的精简指令集RISC的K7 CPU. 以上是指令集的类比.AVR是专门为使用高级语言设计的,在使用高级语言时, 会比89C52有较佳的表现. 可以直接替代89C52的CPU是AT90S4414和AT90S8515.
[单片机]
基于51单片机简易温度计数码管显示
一.硬件方案 本系统利用51单片机控制温度传感器DS18B20进行温度的实时检测并显示,能够实现快速测量环境温度。 硬件以微控制器为核心,外接时钟电路、复位电路、温度测量电路、LED显示电路组成。如图: 二.设计功能 (1)采用DS18B20温度传感器测温,测温范围-55~+125℃摄氏度,精度0.1摄氏度(显示到小数点后一位),误差±0.5度; (2)采用0.56英寸四位一体共阳数码管显示当前温度; (3)有一个复位按键。 三.设计原理图 (1)原理图主要采用AD软件进行设计,如图: (2)Protues仿真图如下: (3)PCB图如下: 四.软件设计 主程序源码 /*****主函数*****/ vo
[单片机]
基于<font color='red'>51单片机</font><font color='red'>简易</font>温度计数码管显示
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved