前言:单片机入门实践操作,本系统是以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/相应的频率 ,那么根据不同的频率计算出应该赋给定时器的计数值即可。
    (如果错误,欢迎批评指正,请大佬轻喷)

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

51单片机电子琴设计相关推荐

  1. 51单片机用c语言写音符代码,51单片机电子琴设计C语言程序实例

    51单片机C程序实例,电子琴设计 #define uchar unsigned char //定义一下方便使用 #define uint unsigned int #define ulong unsi ...

  2. 基于51单片机电子琴设计

    1. 设计要求 设计一个电子琴.利用所给键盘的1,2,3,4,5,6,7,8八个键,能够发出8个不同的音调,并且要求按下按键发声,松开延时一段时间停止,中间再按别的键则发另一音调的声音. 2.Prot ...

  3. 51单片机硬件设计-最小系统(一)

    51单片机硬件设计 很早之前就想编写一个51单片机的库,库中集成所有的电子小模块,可裁剪添加,到现在也算是实现了,为此写一个系列的文章以作记录. 电源部分 电源部分没什么东西,就是一个插针,四针脚的插 ...

  4. 51单片机系列(三)51 单片机游戏设计 —— 双人对战小游戏(石头剪刀布)

    本博客51单片机实训系列,旨在记录本人在大学上单片机技术这门课时所做的课程实训内容,并与大家分享基于51单片的课程作业,如果作业中的某些细节和代码能给大家一点启发那就更好了,希望大家能用51单片机做出 ...

  5. 51单片机课程设计:基于DHT11的温湿度报警器

    51单片机课程设计:基于DHT11的温湿度报警器 本程序适用于51系列单片机,主要用于读取DHT11温湿度模块数值,显示在数码管上,同时还具备温湿度报警功能,当超出预设值,蜂鸣器报警,可在吉林农业大学 ...

  6. 温度报警程序c语言设计,51单片机课程设计:基于DS18B20的温度报警器

    51单片机课程设计:基于DS18B20的温度报警器 本程序用于读取DS18B20温度,同时具备报警功能,工程分为3个文件,main.c.temp.c.temp.h,经本人修改部分代码,适用于吉林农业大 ...

  7. 8155与单片机c语言设计,51单片机课程设计报告-基于8155的8LED显示电子码表设计.doc...

    51单片机课程设计报告 --基于8155的8LED显示电子码表设计 实验目的 本次课程设计是基于51单片机在理论课程的基础上,通过电路设计.理论计算.实际编程.调试.测试.分析查找故障,解决在实际设计 ...

  8. 51单片机密码锁设计

    51单片机密码锁设计 实现要求: 仿真图: 代码块: while(1){if(cmpflag==0){ if(P3^6==0) //function key{for(i=10;i>0;i--)f ...

  9. 51单片机课程设计《三路步进电机控制》

    说明:最近抽出了几天时间完成了单片机的课程设计,用了51单片机做了三路步进电机控制器,美名其曰3d打印机控制器(其实是瞎搞的,与3D打印机毫无关系),因为单片机课程设计是在大四上学期,与考研复习时间冲 ...

  10. 51单片机:设计电子密码锁

    文章目录 一.课程设计内容 功能阐述 二.开发板原理图与设计流程图 三.设计思路和方法 1.EEPROM初始化 2.LCD1602初始化 3.矩阵按键扫描 4.输入密码 5.密码比对 四.源代码附录 ...

最新文章

  1. 《电路分析导论(原书第12版)》一2.5.1 电池
  2. php 日志处理工具 SeasLog 的使用
  3. Hyperledger Fabric安装问题备忘(二)
  4. angularjs的双向绑定原理实现
  5. javascript返回上一页的三种写法
  6. 详细回复某个CSDN网友,对我的文章和技术实力以及CSDN的吐槽
  7. python 示例_Python中带有示例的关键字除外
  8. JS window事件全集解析 (转载)
  9. 学生成绩abcde怎样划分_同等教育下,学生成绩差距较大,怎样避免学习中的“马太效应”?...
  10. postgresql9.6 的安装
  11. 【洛谷P2872】道路建设(最小生成树prim/kruskal)
  12. Lamp兄弟连Linux视频教程
  13. Java程序员的第一个Python小程序:京东畅销书榜爬虫
  14. 彩色数字图像处理基础
  15. Mac火爆游戏---英雄联盟LOL
  16. 图计算库 igraph 在 windows 10 上的编译安装
  17. 互信息(Mutual Information)介绍
  18. python+flask+html/css+mysql+BAE 打造CSDN简历自动生成系统(附网站完全源码)
  19. 微信鼠标点击显示二维码代码
  20. uTorrent 2.2.1 高级参数设置详解及优化(转载)

热门文章

  1. 人工智能相关数据集分享(三)
  2. akuna capital oa
  3. ISP PIPLINE Denoise 之 space domain denoise 空域降噪
  4. APP运营:盘点八款主流 APP 消息推送工具
  5. 页号P与页内偏移地址W的计算
  6. ubuntu 16.04 系统安装保留原home分区
  7. Android 学习过程中遇到的知识点
  8. html中video自动循环,HTML5视频自动循环播放方法
  9. 51单片机引脚功能介绍
  10. flink watermark 生成机制与总结