- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
简易电子琴—单片机原理及实际应用实训报告
桂林电子科技大学信息科技学院
《单片机原理及应用》实训报告
学 号 1152100327
姓 名 张天瀛
指导教师:易艺,马姝靓,于新业,梁晓梅
2013 年 9 月 13 日
实训题目:简易电子琴
1 系统设计
1.1 设计要求
1.1.1 设计任务
基于AT89S52芯片制作简易电子琴,完成1-7弹奏与音乐播放任务。
1.1.2 性能指标要求
1、设计简易电子琴硬件电路,电子琴能够弹奏1~7音符或其高低音,并能够通过数码管显示对应的音符(如果使用高音或低音,则在数码管上方和下方分别放置一个发光二极管,以区分数码管所显示音符为高音还是低音);
2、编写电子琴程序,某音符的按键按下,数码管显示对应的音符,且蜂鸣器发出该音符的声音,声音持续到按键释放(如果是高音,则数码管上方的发光二极管点亮,如果是低音,则数码管下方的发光二极管点亮,其他情况发光二极管都不亮);
3.通过按键控制播放已存放的音乐;
4.选作:其他特殊功能(如开机播放音乐)。
1.2 设计思路及设计框图
1.2.1设计思路
1、根据设计任务和性能指标要求选择总体方案,画出设计框图;
2、参阅相关资料,根据设计框图和发放的元件进行单元电路的设计;
3、绘制原理图,搭建电路板;
4、编写LED驱动程序,能够对应点亮相应的LED;
5、编写数码管程序,对数码管进行测试,使之能循环显示0到9;
6、编写按键程序,能够将按键和LED及数码管对应起来;
7、驱动蜂鸣器程序,完成简易电子琴功能;
8、编写播放音乐程序;
9、写实训报告(包括设计与调试的全过程,附上有关资料、电路图和心得体会)。
1.2.2总体设计框图
2 各个模块程序的设计
程序设计流程图
详细程序:
主程序头文件与声明:
#include reg52.h
#includeintrins.h
#define uchar unsigned char
#define uint unsigned int
sbit speak1=P1^6;
sbit s=P1^7;
sbit led0=P1^0;
sbit led1=P1^1;
sbit k1=P1^4;
uchar n=0; //节拍常数变量
对应音调1、2、3、4、5、6、7:
uint code fre[]={64579,64685,64778,64820,64898,64968,65030};
数码管显示:
uchar code shumaguan[]={
0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09,0x11,0xc1,
0x63,0x85,0x61,0x71};
uchar k;
uchar j;
uchar temp;
uchar flag;
uint scale;
void delay_ms(uint x);
void delay(unsigned char m);
void main()
{
while(1)
{
while(k1==1)
{
TMOD=0x21;
//定时器0工作于16位定时方式,定时器1工作在8位自动重装
EA=1;
ET0=1;
ET1=1;
TH1=0x06;
TL1=0x06;
TR1=1;
speak1=1;
s=1;
temp=0;
flag=0;
led0=1;
led1=1;
scale=0;
按键扫描
while(k1==1)
{
temp=P0;
if((temp|0x80)!=0xff)
{
delay_ms(10);
temp=P0;
if((temp|0x80)!=0xff)
{
switch(temp)
{ case 0xfe:k=1;break;
case 0xfd:k=2;break;
case 0xfb:k=3;break;
case 0xf7:k=4;break;
case 0xef:k=5;break;
case 0xdf:k=6;break;
case 0xbf:k=7;break;
}
if(flag==0)
{
TH0=fre[k-1]/256;
您可能关注的文档
最近下载
- 2025重庆长江师范学院科研助理招聘13人笔试参考题库附答案解析.docx VIP
- 国际医学研究报告清单及规范:5-CARE Checklist 案例报告.docx
- 软件概要设计说明书.doc VIP
- 武汉理工大学855信号与系统2022考研真题试卷.pdf VIP
- 爆破行业风险评价方法、爆破作业风险分级管控指南、风险分级管控清单、隐患排查清单、台账.pdf VIP
- 2025年财政部高层次财会人才选拔考试综合试题及答案.docx VIP
- 国际贸易学_金泽虎主编_电子教案.ppt
- 2025年财政部高层次财会人才选拔考试测试题及答案.docx VIP
- 医学三基考试试题及答案.doc VIP
- 2025年职场 性格25PF测试题 .pdf VIP
文档评论(0)