51单片机电子琴设计

本文介绍了一种基于51单片机AT89C51的简易电子琴设计,系统包括独立阵键盘、LED显示和扬声器,能显示输入信息并播放音符。通过设置定时器产生不同频率的正弦波来模拟音阶,实现了1到7的音符播放。设计中详细阐述了程序设计思路、硬件原理及计算定时器计数值的方法,最终实现稳定的音乐播放功能。
摘要由CSDN通过智能技术生成

前言:单片机入门实践操作,本系统是以51系列单片机AT89C51为主控制器,附有独立阵键盘、LED显示管、扬声器组成。系统完成显示输入信息、播放相应音符等基本功能。本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值

  1. 设计目标:设计一简易电子琴,要求能够发出1、2、3、4、5、6、7等八个音符。
    使用元件:AT89C51、LM386,喇叭,按键等

  2. 设计思路:程序设计的思路按以下顺序进行:
    1. 分析与确定程序总体设计目标
    2. 将总体目标划分为若干模块
    3. 定义每个模块的具体任务,明确它与其他模块间的通信方式
    4. 编写源程序,进行调试

  3. 设计原理
    对于单片机定时器来说,每给它装特定的初值就会相应的产生多长时间的中断,进而利用高低电平 在其输出端送到扬声器上即可产生正弦波。对于音乐,每个音阶都有确定的频率。 各音阶标称频率值如下:
    在这里插入图片描述
    在这里插入图片描述
    由于一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系弄正确即可。(实物焊接出来的频率稍微偏差,以实际为准调节)
    在这里插入图片描述

  4. 系统硬件图
    在这里插入图片描述
    总结:
    本次设计中单片机晶振为11.0592MHZ,那么定时器的计数周期为11.0592/12MHZ,假如选择工作方式1,那T值便为T= 216–5﹡105/相应的频率 ,那么根据不同的频率计算出应该赋给定时器的计数值即可。
    (如果错误,欢迎批评指正,请大佬轻喷)

仿真图和代码在我的资源中下载即可,内附完整的报告和代码

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸葛榆木

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值