文档库 最新最全的文档下载
当前位置:文档库 › 基于51单片机的简易音乐播放器

基于51单片机的简易音乐播放器

基于51单片机的简易音乐播放器
基于51单片机的简易音乐播放器

基于单片机的电子琴课程设计

一:课程目的以及要求

用51单片机作为主控电路设计一个电子琴,实现能通过切换不同的键盘按键来切换歌曲。

二:课程设计背景:

电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。本文的主要内容是用STC89C52单片机为核心控制元件,设计一个电子琴。以单片机作为主控核心,与键盘、扬声器等模块组成核心主控制模块。

本文主要对使用单片机设计简易电子琴进行了分析,并介绍了基于单片机电子琴统硬件组成。利用单片机产生不同频率来获得我们要求的音阶,最终可随意弹奏想要表达的音乐。并且本文分别从原理图,主要芯片,各模块原理及各模块的程序的调试来详细阐述。

三:系统硬件设计

3.1系统框图

3.2 51单片机产生音符原理

MCS-5l单片机有两个定时器/计数器。系统使用定时器/计数器0产生方波。定时器/计数器l刖用于记录音符的时长,即按键持续的时问。定时器/计数器0的工作方式是l,即为16位定时器/计数器。16位定时器/计数器被赋予一个初值,并开始记数。当记数溢出,产生中断后,中断服务程序将与蜂鸣器连接的引脚电平置反,并且对定时器/计数器再赋初值,重新开始记效。之后产生中断,引脚电平再被置反,如此周而复始,在引脚上就能产生一个频率与定时初值有关的方波信号。而定时初值与音符频率有关,相应频率的确定,可参照12平均律,相邻两个半音A和B的频率之间的关系为:A=B12[1]。定时器/计数器l的作用为记录音符的时长,工作方式为l,即16位定时器/计数器。在12MHZ的晶体振荡器F,单片机的机器周期为l“S。本系统中,定时器/计数器l以10ms的时长为l定时单位,记录音符持续了多少个定时单位,如此,使用一个unmgnedchar型变量既可以记录2.55s的时长,这在用于记录一般弹奏的音符时是足够的。而若一个音符的时长超过2.55S,则程序将在数组该位记满时强制跳转,并复制此音符信息至教组下一位来记录该音符剩余的时长,实现一种。无缝连接”。如此以来,在存储空间允许的情况下,系统允许记录任意时长的音符。音乐是由音符和时长组成,单片机将一连串音符和时长的时间序列以两组对应的敬组的形式保存起来,也就是保存了一段音乐[2]。

四系统软件设计

4.1 单片机产生音符过程:

一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这

样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系正确即可。

若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P1.0反相,然后重复计时再反相。就可在P1.0引脚上得到此频率的脉冲。

利用STC89C52的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T=1/523=1912μs,因此只要令计数器计时956μs/1μs=956,每计数956次时将I/O反相,就可得到中音DO (523Hz)。计数脉冲值与频率的关系式(如式2-1所示)是:

N=fi÷2÷fr

式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。其计数初值T的求法如下:

T=65536-N=65536-fi÷2÷fr

例如:设K=65536,fi=1MHz,求低音DO(261Hz)、中音DO(523Hz)、

高音DO(1046Hz)的计数值。

T=65536-N=65536-fi÷2÷fr=65536-1000000÷2÷fr=65536-500000/fr

低音DO的T=65536-500000/262=63627

中音DO的T=65536-500000/523=64580

高音DO的T=65536-500000/1046=65059

4.2 程序编写流程图

五:调试过程

5.1 软件仿真调试

软件仿真调试主要是针对单片机部分进行调试。

在软件运行前,先确保电路中连线正确,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要通过目测,用来完成检测电路中是否存在断路或者短路情况等。

在确保软件仿真电路正常,无异常情况(断路或短路)方可进行软件运行,在本次设计中,主要检测单片机的程序功能是否正确在理论上编写的程序是否可以实现。确保自己的电路板在理论上是可实现的。

5.2实物调试过程:

1.先确保电路板是否每条铜线支路都是导通的才能进行下一步调试

2.在检测好每条通路没有断路的的情况下还要排除短路的情况,因为在焊接时会有可能将焊锡丝掉到两根铜线之间。

3.将下好程序的单片机安装好后上电检测单片机的主要管脚电压值以确定单片机是否正常工作。

4.在所有上诉步骤都正确的情况下,要是功能为实现就要考虑软件编写是否正确。

5.3 本次出现的一些问题以及解决方法

1.电路断线情况比较多,是由于腐蚀和转印的过程出现了一些问题

2.开始设计的时候在每个按键的之路上添加一个红色二极管作为指示功能,但未考虑到编写的程序是按键扫描过程是检测单片机引脚是否为低电平,当加了一个二极管的时候会产生一个管压降,导致引脚不能产生低电平。所以该指示灯不能直接加到引脚处。

六:体会:

通过从理论到实际实物的制作能够让我们结合自己所学去应用到

实际的电路设计中去。让我们能够发现一些课堂中学习的不足然后结合实践巩固一些单片机的控制以及内部的一些功能使用;比如对T0定时器以及外部中断的程序控制。我们应该多通过实践来学习和巩固自己一些知识点。

七:附录

7.1系统原理图:

7.2程序:

#include

#define uchar unsigned char

sbit beepIO=P3^7;

sbit key_1=P1^0;

sbit key_2=P1^1;

sbit key_3=P1^2;

sbit key_4=P1^3;

sbit key_5=P1^4;

sbit key_6=P1^5;

sbit key_7=P1^6;

sbit key_8=P1^7;

uchar m,n;

uchar code T[49][2]={{0,0},

{0xF8,0x8B},{0xF8,0xF2},{0xF9,0x5B},{0xF9,0xB7},{0xFA,0x14},{0xFA,0x66},{0xFA,0xB9},{0xFB, 0x03},{0xFB,0x4A},{0xFB,0x8F},{0xFB,0xCF},{0xFC,0x0B},

{0xFC,0x43},{0xFC,0x78},{0xFC,0xAB},{0xFC,0xDB},{0xFD,0x08},{0xFD,0x33},{0xFD,0x5B},{0xF D,0x81},{0xFD,0xA5},{0xFD,0xC7},{0xFD,0xE7},{0xFE,0x05},

{0xFE,0x21},{0xFE,0x3C},{0xFE,0x55},{0xFE,0x6D},{0xFE,0x84},{0xFE,0x99},{0xFE,0xAD},{0xFE, 0xC0},{0xFE,0x02},{0xFE,0xE3},{0xFE,0xF3},{0xFF,0x02},

{0xFF,0x10},{0xFF,0x1D},{0xFF,0x2A},{0xFF,0x36},{0xFF,0x42},{0xFF,0x4C},{0xFF,0x56},{0xFF,0x 60},{0xFF,0x69},{0xFF,0x71},{0xFF,0x79},{0xFF,0x81}

};

uchar code music1[][2]={{0,4},

{27,4},{19,4},{19,4},{27,4},{26,4},{26,2},{27,2},{24,8},

{22,4},{17,4},{24,4},{22,4},{19,16},

{15,4},{12,4},{12,4},{15,4},{17,8},{19,8},

{26,6},{26,2},{26,4},{24,4},{24,4},{19,4},{19,8},

{27,4},{19,4},{19,4},{27,4},{26,4},{26,2},{27,2},{24,6},{24,2},

{22,4},{17,4},{24,4},{22,4},{19,16},

{15,4},{12,4},{12,4},{15,4},{17,8},{19,8},{19,6},{19,2},{19,4},{17,4},{14,4},{14,4},{14,4},{7,4},{1 2,24},

{0xFF,0xFF}};

uchar code music2[][2]={{0,4},

{23,4},{21,4},{23,16},{23,4},{21,4},{23,4},{21,4},{19,16},{16,4},{19,4},{21,8},{21,4},{23,4},{21,4 },{19,4},{16,4},{19,4},{14,24},

{23,4},{21,4},{23,16},{23,4},{21,4},{23,4},{21,4},{19,24},{16,4},{19,4},{21,8},{21,4},{23,4},{21,4 },{19,4},{16,4},{19,4},{21,24},

{23,4},{21,4},{23,16},{23,4},{21,4},{23,4},{21,4},{19,16},{16,4},{19,4},{21,8},{21,4},{23,4},{21,4 },{19,4},{16,4},{19,4},{14,24},

{23,4},{26,4},{26,16},{26,4},{28,4},{26,4},{23,24},{21,4},{23,4},{21,8},{21,4},{23,4},{21,4},{19,4 },{16,4},{16,2},{19,2},{19,24},{0,20},

{26,4},{26,4},{28,4},{31,4},{30,4},{30,4},{28,4},{23,4},{21,4},{21,4},{23,16},{0,4},{23,4},{23,4},{ 26,4},{28,8},{28,12},{16,4},{23,4},{21,4},

{21,24},{23,4},{26,4},{26,4},{23,4},{26,8},{0,4},{31,8},{30,4},{28,4},{30,4},{23,8},{0,4},{28,4},{2 8,4},{30,4},{28,4},{26,4},{23,4},{21,8},{23,4},{21,4},{23,4},{26,16},

{0xFF,0xFF}};

uchar code music3[][2]={{0,4},

{16,12},{23,16},{21,4},{23,4},{21,4},{19,12},{0,8},{19,4},{19,4},{19,4},{18,4},{16,8},{14,4},{16,1 6},{0,16},

{16,12},{28,16},{26,4},{28,4},{26,4},{23,8},{0,16},

{21,4},{21,4},{21,4},{21,4},{19,8},{16,4},{18,16},{0,12},

{16,12},{23,16},{21,4},{23,4},{21,4},{19,8},{0,16},

{19,4},{19,4},{19,4},{18,4},{16,8},{14,4},{16,16},{0,12},

{16,12},{28,16},{26,4},{28,4},{26,4},{23,16},{0,12},

{28,4},{28,4},{28,4},{30,4},{28,8},{26,4},{28,24},{0,12},

{28,4},{28,2},{26,2},{23,4},{23,4},{28,4},{28,2},{26,2},{28,4},{31,4},{26,6},{23,2},{26,4},{28,4},{ 26,16},

{21,4},{21,2},{19,2},{16,4},{16,4},{21,4},{21,2},{19,2},{21,4},{23,4},{19,6},{16,2},{19,4},{16,4},{ 14,16},

{28,4},{28,2},{26,2},{23,4},{23,4},{28,4},{28,2},{26,2},{28,4},{28,4},

{31,4},{31,2},{28,2},{26,4},{26,4},{31,4},{31,2},{26,2},{31,4},{31,4},{0,4},{31,4},{31,4},{31,4},{3 0,4},{28,8},{26,4},{28,24},

{28,4},{28,2},{26,2},{23,4},{23,4},{28,4},{28,2},{26,2},{28,4},{31,4},{26,6},{23,2},{26,4},{28,4},{ 26,16},

{21,4},{21,2},{19,2},{16,4},{16,4},{21,4},{21,2},{19,2},{21,4},{23,4},{19,6},{16,2},{19,4},{16,4},{ 14,16},

{28,4},{28,2},{26,2},{23,4},{23,4},{28,4},{28,2},{26,2},{28,4},{28,4},

{31,4},{31,2},{28,2},{26,4},{26,4},{31,4},{31,2},{26,2},{31,4},{31,4},{0,4},

{31,4},{31,4},{31,4},{30,4},{28,8},{26,4},{28,20},

{0,4},{31,4},{31,4},{31,4},{30,4},{28,8},{26,4},{28,24},

{0xFF,0xFF}};

uchar code music4[][2]={{0,4},

{14,4},{17,4},{21,4},{24,4},{21,8},{21,4},{19,4},{21,8},{21,4},{19,4},{21,8},{14,4},{16,4},{17,4},{ 21,4},{19,4},{17,4},{14,8},{12,8},{9,24},

{14,4},{17,4},{21,4},{24,4},{21,8},{21,4},{19,4},{21,8},{21,4},{19,4},{21,8},{14,4},{16,4},{17,4},{ 21,4},{19,4},{17,4},{14,8},{12,8},{14,24},{14,4},{16,4},

{17,4},{19,4},{21,4},{22,4},{24,8},{22,4},{21,4},{19,8},{19,4},{21,4},{19,16},{14,4},{16,4},{17,4}, {19,4},{21,8},{16,4},{14,4},{16,24},{14,4},{16,4},

{17,4},{19,4},{21,4},{22,4},{24,8},{22,4},{21,4},{19,8},{19,4},{21,4},{19,8},{14,4},{16,4},{17,4},{ 21,4},{19,4},{17,4},{14,8},{12,8},{14,24},

{21,8},{26,16},{24,8},{21,4},{24,4},{26,16},{24,8},{21,4},{19,4},{17,4},{14,4},{17,4},{19,4},{21,8 },{21,4},{19,4},

{21,24},{21,8},{26,16},{24,8},{21,4},{24,4},{26,24},{24,8},{21,4},{19,4},{17,4},{14,4},{17,4},{19, 4},{21,8},

{26,4},{24,4},{26,24},

{0xFF,0xFF}};

uchar code music5[][2]={{0,4},

{19,4},{19,4},{19,8},{14,8},{23,4},{23,4},{23,8},{19,8},

{19,4},{23,4},{26,8},{26,8},{24,4},{23,4},{21,16},{21,4},{23,4},{24,8},{24,8},

{23,4},{21,4},{23,8},{19,8},{19,4},{23,4},{21,8},{14,8},{18,4},{21,4},{19,16},

{0xFF,0xFF}};

uchar code music6[][2]={{0,4},

{15,4},{27,4},{26,8},{24,4},{24,4},{22,8},{17,2},

{19,8},{17,2},{19,2},{15,8},{15,2},{0,2},{15,4},

{27,4},{26,8},{24,4},{24,4},{22,8},{17,4},

{19,14},{0,2},{15,4},{17,4},{19,4},{22,4},

{27,4},{26,8},{24,4},{24,4},{22,8},{17,2},

{19,8},{17,2},{19,2},{15,8},{12,4},{15,4},

{17,8},{19,8},{12,4},{15,4},{17,4},{19,4},

{17,8},{15,14},{0,2},

{0,8},{0,8},{17,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,2},

{21,8},{19,2},{21,2},{17,8},{17,2},{0,2},{17,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,4},

{21,14},{0,2},{17,4},{19,4},{21,4},{24,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,2},

{21,8},{19,2},{21,2},{17,8},{14,4},{17,4},

{19,8},{21,8},{14,4},{17,4},{19,4},{21,4},

{19,8},{17,14},{0,2},{17,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,2},

{21,8},{19,2},{21,2},{17,8},{17,2},{0,2},{17,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,4},

{21,14},{0,2},{17,4},{19,4},{21,4},{24,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,2},

{21,8},{19,2},{21,2},{17,8},{14,4},{17,4},

{19,8},{21,8},{14,4},{17,4},{19,4},{21,4},

{19,8},{17,14},{0,2},{17,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,2},

{21,8},{19,2},{21,2},{17,8},{17,2},{0,2},{17,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,4},

{21,14},{0,2},{17,4},{19,4},{21,4},{24,4},

{29,4},{28,8},{26,4},{26,4},{24,8},{19,2},

{21,8},{19,2},{21,2},{17,8},{14,4},{17,4},

{19,8},{21,8},{14,4},{17,4},{19,4},{21,4},

{19,8},{17,14},{0,2},{0,8},

{0xFF,0xFF}};

uchar code music7[][2]={{0,4},

{18,2},{18,2},{18,2},{18,2},{18,6},{18,2},{18,4},{18,4},{13,4},{14,2},{16,2},{14,16},{0,8},{0,4},{1 1,4},

{16,2},{16,2},{16,2},{16,2},{16,6},{16,2},{16,4},{18,4},{20,4},{20,4},{13,16},{0,8},{0,4},{13,4}, {18,2},{18,2},{18,2},{18,2},{18,6},{18,2},{25,4},{25,4},{23,16},{0,8},{0,8},{0,4},{20,4},{20,4},{20, 6},{20,2},{20,6},{20,6},{13,2},{21,4},{20,2},{21,2},

{20,16},{0,8},{0,4},{13,4},{18,2},{18,2},{18,2},{18,2},{18,6},{18,2},{18,4},{18,4},{13,4},{14,2},{1 6,2},{14,16},{0,8},{0,4},{11,4},

{16,2},{16,2},{16,2},{16,2},{16,6},{16,2},{16,4},{18,4},{20,4},{20,4},{13,16},{0,8},{0,4},{13,4},{1 8,2},{18,2},{18,2},{18,2},{18,6},{18,2},{18,6},{18,2},{25,4},{25,4},

{23,16},{0,8},{0,8},{0,4},{20,2},{20,2},{20,6},{20,2},{20,6},{20,2},{20,4},{18,2},{20,2},{18,16},{0, 8},{0,4},{25,4},{30,2},{25,2},{25,2},{25,2},{25,6},{21,2},{18,6},{13,2},{13,4},{25,4},

{23,16},{0,8},{0,4},{13,4},{28,2},{28,2},{28,2},{28,2},{28,6},{28,2},{28,6},{30,2},{32,2},{32,6},{2 5,16},{0,8},{0,4},{25,4},{30,2},{25,2},{25,2},{25,2},{25,6},{21,2},

{18,6},{13,2},{13,4},{25,4},{23,16},{0,8},{0,8},{0,4},{23,2},{23,2},{23,6},{23,2},{23,6},{13,2},{20, 6},{20,2},{18,16},{13,4},

{0xFF,0xFF}};

uchar code music8[][2]={{0,4},

{18,2},{18,2},{18,2},{18,2},{18,6},{18,2},{18,4},{18,4},{13,4},{14,2},{16,2},{14,16},{0,8},{0,4},{1 1,4},

{16,2},{16,2},{16,2},{16,2},{16,6},{16,2},{16,4},{18,4},{20,4},{20,4},{13,16},{0,8},{0,4},{13,4}, {18,2},{18,2},{18,2},{18,2},{18,6},{18,2},{25,4},{25,4},{23,16},{0,8},{0,8},{0,4},{20,4},{20,4},{20, 6},{20,2},{20,6},{20,6},{13,2},{21,4},{20,2},{21,2},

{20,16},{0,8},{0,4},{13,4},{18,2},{18,2},{18,2},{18,2},{18,6},{18,2},{18,4},{18,4},{13,4},{14,2},{1 6,2},{14,16},{0,8},{0,4},{11,4},

{16,2},{16,2},{16,2},{16,2},{16,6},{16,2},{16,4},{18,4},{20,4},{20,4},{13,16},{0,8},{0,4},{13,4},{1 8,2},{18,2},{18,2},{18,2},{18,6},{18,2},{18,6},{18,2},{25,4},{25,4},

{23,16},{0,8},{0,8},{0,4},{20,2},{20,2},{20,6},{20,2},{20,6},{20,2},{20,4},{18,2},{20,2},{18,16},{0, 8},{0,4},{25,4},{30,2},{25,2},{25,2},{25,2},{25,6},{21,2},{18,6},{13,2},{13,4},{25,4},

{23,16},{0,8},{0,4},{13,4},{28,2},{28,2},{28,2},{28,2},{28,6},{28,2},{28,6},{30,2},{32,2},{32,6},{2 5,16},{0,8},{0,4},{25,4},{30,2},{25,2},{25,2},{25,2},{25,6},{21,2},

{18,6},{13,2},{13,4},{25,4},{23,16},{0,8},{0,8},{0,4},{23,2},{23,2},{23,6},{23,2},{23,6},{13,2},{20, 6},{20,2},{18,16},{13,4},

{0xFF,0xFF}};

void delay(uchar p)

{

uchar i,j;

for(;p>0;p--)

for(i=181;i>0;i--)

for(j=181;j>0;j--);

}

void pause()

{

uchar i,j;

for(i=150;i>0;i--)

for(j=150;j>0;j--);

}

void T0_int() interrupt 1

{

beepIO=!beepIO;

TH0=T[m][0]; TL0=T[m][1];

}

void main()

{

uchar i=0;

while(1)

{ P1=0xff;

while(!key_1)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music2[i][0];n=music2[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music2[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

while(!(key_2))

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music1[i][0];n=music1[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music1[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

while(!key_3)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music3[i][0];n=music3[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music3[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

while(!key_4)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

m=music4[i][0];n=music4[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music4[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

while(!key_5)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music5[i][0];n=music5[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music5[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

while(!key_6)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music6[i][0];n=music6[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music6[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

while(!key_7)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music7[i][0];n=music7[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music7[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

while(!key_8)

{

TMOD=0x01;

EA=1;

ET0=1;

while(1)

{

{

m=music8[i][0];n=music8[i][1];

if(m==0x00)

{TR0=0;delay(n);i++;}

else if(m==0xFF)

{TR0=0;delay(30);i=0;}

else if(m==music8[i+1][0])

{TR0=1;delay(n);TR0=0;pause();i++;}

else

{TR0=1;delay(n);i++;}

}

}

}

}

}

[1]李康林.单片机控制多台电子琴演奏教学系统【J】.长沙大学学报,2006(5).

[2]李林涛陈明. 基于单片机的简易电子琴录/放音系统【J】. 数字技术与应用, 2010 (2)

基于51单片机的的温度报警器设计

1引言 (1) 1.1 单片机的应用背景 (1) 2 总体设计方案 (2) 2.1 功能简介 (2) 2.2 设计思路 (2) 2.3 芯片器材 (3) 3 硬件设计 (3) 3.1 AT89C51 (3) 3.1.1 AT98C51引脚图 (3) 3.1.2 AT89C51结构特点 (5) 3.2 温度获取 (5) (7) 3.3 时钟电路 (8) 3.4 温度显示电路 (8) 3.5报警电路 (10) (10) 4 程序设计 (10) 4.1 程序流程图 (11) 4.2 初始化子程序 (11) 4.3 读子程序 (12) 4.4 写子程序 (13) 4.5 数据处理子程序 (13) 4.6 显示子程序 (15) 4.7报警子程序 (17) 5 实验仿真 (18) (18) 6 总结 (19) 参考文献 (20) 附录 (21) 1引言 1.1 单片机的应用背景 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通信与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机,更不用说自动控制领域的机器人、智能仪表、医疗机械了。

世面上主要的单片机类型有Motorola 单片机、Microchip 单片机、东芝单片机、8051单片机、Atmel 单片机等。此次课设中用到的是ATMEL公司,下面着重介绍一下ATMEL公司的单片机。 ATMEL 公司是世界上著名的高性能低功耗非易失性存储器和数字集成电路的一流半导体制造公司。ATMEL 公司最令人注目的是它的EEPROM 电可擦除技术闪速存储器技术和质量高可靠性的生产技术。在CMOS 器件生产领域中,ATMEL 的先进设计水平优秀的生产工艺及封装技术一直处于世界的领先地位。这些技术用于单片机生产,使单片机也具有优秀的品质在结构性能和功能等方面都有明显的优势,ATMEL 公司的单片机是目前世界上一种独具特色。 而性能卓越的单片机它在计算机外部设备通讯设备自动化工业控制宇航设备仪器仪表和各种消费类产品中都有着广泛的应用前景。其生产的AT90系列是增强型RISC内载FLASH单片机,通常称为A VR系列。AT91M系列是基于ARM7TDMI 嵌入式处理器的ATMEL 16/32 微处理器系列中的一个新成员,该处理器用高密度的16 位指令集实现了高效的32 位RISC 结构且功耗很低。另外ATMAL的增强型51系列单片机目前在市场上仍然十分流行,其中AT89S51十分活跃。 当今社会,人们在追求高质量的生活,所以生活中离不开单片机,根据国家权威统计显示,目前我国的单片机容量达3亿片,且每年以大约20%的速度增长,但在世界市场我国的占有率还不到1%。沿海地区尤其像电子产品高度发达的深圳大部分单片机应用更是广泛,这种发展趋势也不断向内地辐射,因此,学好单片机有很重要的意义。 2 总体设计方案 2.1 功能简介 8位LED数码管直接显示DS18B20所测量的温度,超出-50~110℃范围时喇叭报警,并且对应的发光二极管开始闪烁,在温度范围内时喇叭停止报警并且数码管显示其温度,测量精度为0.5℃。 2.2 设计思路

基于51单片机数字音乐盒的设计

单片机实物设计 题目: 单片机音乐盒设计 班级: K0312416-17 姓名:湛俊朱斌杨裕庆 学号:K031241705 K031241632 K031241737

摘要 本设计是一个基于STC89C51RC系列单片机的音乐盒,依据单片机技术原理,通过硬件电路制作以及软件编译,设计制作出一个多功能多功能音乐盒。该音乐盒主要由按键电路、复位电路、时钟电路以及蜂鸣器组成。本音乐盒共有四首歌曲,用4个按键控制。播放歌曲时,蜂鸣器发出某个音调。本设计利用KEIL编程软件对音乐盒源程序进行编程并调试,配合PROTEUS 仿真软件对硬件进行仿真调试,节约了设计时间。 【关键词】STC89C51RC 按键蜂鸣器 LCD1602液晶

目录 前言 ................................................................................................................................. 第一章工作原理 .............................................................................................................. 1.1设计目标 ............................................................................................................... 第二章软件设计与分析................................................................................................... 2.1 软件设计的组成................................................................................................... 2.2 各部分软件分析 ................................................................................................. 2.2.1 延时165MS,即十六分音符子函数 .......................................................... 2.2.2 延时1MS子函数...................................................................................... 2.2.3 定时器0中断子函数 .............................................................................. 2.2.4 播放音乐子函数...................................................................................... 2.5 定时器1中断子函数.................................................................................. 2.6 按键扫描子函数 ......................................................................................... 2.2.7 主函数..................................................................................................... 2.3 总源程序 ............................................................................................................ 第三章软件仿真 .............................................................................................................. 3.仿真图...................................................................................................................... 3.1 元件清单 ............................................................................................................... 总结 ..................................................................................................................................... 参考文献..............................................................................................................................

基于51单片机的简易计算器制作

基于51单片机的简易计算器制作专业:电气信息班级:11级电类一班 姓名:王康胡松勇 时间:2012年7月12日 一:设计任务 本系统选用AT89C52单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下: (1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LED 显示数据和结果。 (2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LED上提示八个0;当除数为0时,计算器会在LED上会提示八个负号。 设计要求:分别对键盘输入检测模块;LED显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真 分析其设计结果。 二.硬件设计 单片机最小系统 CPU:A T89C52 显示模块:两个4位7段共阴极数码管 输入模块:4*4矩阵键盘 1.电路图

电路图说明 本电路图采用AT89C52作为中处理器,以4*4矩阵键盘扫描输入,用两个74HC573(锁存器)控制分别控制数码管的位于段,并以动态显示的方式显示键盘输入结果及运算结果。为编程方便,以一个一位共阴极数码管显示负号。 三,程序设计 #include #define Lint long int #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; //锁存器段选sbit wela=P2^7; sbit display_g=P2^0; //负号段选 sbit display_w=P2^1; //负号位选uchar code table[]={0x3f,0x06,0x5b,0x4f, //0,1,2,3

基于51单片机的音乐播放器

基于51单片机的音乐播放器 余子健、刘胤、宋亮 摘要:本大作业是基于sst89e52rd2单片机制作的wav音乐播放器。该播放器可以播放存在sd卡中的音乐,通过对sd卡的读取并将数字信号送入单片机中,借助8位DA转换器TLC5620 变成模拟信号,经过放大器TDA2822放大交给扬声器发出最初读取的音频信号,实现音乐播放的功能。 关键词:SD卡,WAV文件,DA,音频放大 1背景 音乐随身听产品经过几年的发展,已经变得相当成熟。市场上可以购买到各类不同的音乐播放器,产品线涵盖了高中低不同档次。作为学习与研究,本作品尝试利用STI51开发板板载资源以及外搭的功率放大电路制作一台音乐播放器,能够播放通过计算机拷贝在SD卡(或MMC卡、TF卡)的根目录中的某一个WAV 文件。 2硬件设计 该音乐播放器硬件组成如下 本音乐播放器使用容量为2G的SD作为外部存储器 主控制器采用SST公司生产的SST89E58RDA,其40引脚封装的芯片功能模块如图1所示。芯片主要特想如下: ?兼容80C51系列,内置超级FLASH存储器的单片机 ?工作电压VDD=4.5~5V,5V工作电压时0-40MHz频率范围 ?1KB的内部RAM ?两块超级FLASH EEPROM,32KB的基本存储卡和8KB的二级存储块(扇区大小为128字节),二级存储块可用于存放掉电后要保存的数据,放在内部具有极强的抗干扰性?最大片外程序/数据地址空间为64KB ?全双工增强型UART,帧错误检测,自动地址识别 ?9个中断源,4个中端优先级 ?降低EMI模式(通过AUXR SFR不允许ALE输出时钟),确保了单片机的高抗干扰性?双DPTR指针(查表,寻址更方便)

基于51单片机的一氧化碳报警器的设计

基于51单片机的一氧化碳报警器的设计 本文设计了一款能够自动检测房间内一氧化碳气体浓度的报警器,当气敏传感器检测到的浓度值大于安全值时,报警器发出报警信号并控制外部的排风扇和电磁阀进行事故处理;整个过程中通过LED实时显示一氧化碳气体的浓度值。 标签:一氧化碳;气体传感器;单片机;检测;浓度 一、引言 现今,单片机技术快速发展、应用广泛,涉及到现实生活中的各个领域,单片机技术产品和设备的应用促进了生产技术水平的不断提高。本文中的气体浓度检测系统正是单片机应用系统中的一种。这次设计使用的气体传感器就是要测量一氧化碳浓度的动态信号,然后利用A/D转换芯片将浓度值转换为数字值,实现整个系统的检测与事故处理功能,实现智能控制。 二、系统硬件设计 (一)系统硬件电路组成 本系统属于单片机在系统检测及工程控制方面的应用。为保证可靠运行,整个硬件系统包括三个部分:主控模块、浓度检测及显示模块、报警及事故处理模块,其中,主控模块以单片机为中心,对其他模块的运行进行控制;浓度检测及显示模块的功能是将房间中的一氧化碳浓度值转换成为单片机能够处理的数字信号,并且将浓度值通过LED显示出来;报警及事故处理模块是此系统的外围电路,它的功能实现形式最人性化,体现了智能控制,在检测到一氧化碳的浓度超过指定值时会启动蜂鸣器报警,报警无效后即会进行事故处理,启动排气扇和关闭电磁阀来防止事故的发生。 (二)系统各个模块功能说明 1.主控模块 系统选用单片机控制,采用MCS-51单片机。MCS-51系列单片机是美国Intel 公司1980年推出的一种高性能8位单片微型计算机,内带4K字节的内存和程序保护系统,便于程序的调试修改和保密。它的主要功能是和ADC0809芯片一起共同接收检测信号,通过对数字信号的处理来控制外围电路及显示电路。模数转换芯片采用ADC0809,接收经过运算放大器处理后的一氧化碳传感器的检测值,检测结果经过ADC0809处理后送单片机进行数据处理。处理后的信息将通过单片机控制,在LED显示管上显示出来,并且控制事故处理模块。 2.气体浓度检测模块

基于51单片机音乐盒程序设计

基于51单片机音乐盒程序设计基于51单片机音乐盒程序设计一、功能设计说明 1、电路设计 实物图 矩阵键盘部分电路图 2、运行流程图 程序开始 播放小苹果歌曲

否 判断任意按键是否按下继续播放小苹果歌曲是 否播放完成 进入电子琴模式 判断K16按键是否按下 是 3、电子琴模式按键对应发音设计 按键发音按键发音 低 1 中 2 K1 K9 低 2 中 3 K2 K10 低 3 中 4 K3 K11 低 4 中 5 K4 K12 低 5 中 6 K5 K13 按键发音按键发音 低 6 中 7 K6 K14 低 7 高 1 K7 K15 中 1 重新播放小苹果 K8 K16 二、硬件电路说明

1、程序下载电路 音乐盒电路图 ISP下载接口 本设计采用的单片机为AT89S52单片机,需使用ISP下载器进行下载程序,程序下载电路图如图中ISP1接口. 2、音乐发音电路 IO口P10发出不同频率的脉冲,则BUZZER产生各种不同的声音,本设计采用12MHZ 晶振,系统频率1MHZ,定时器计数一个1us,其对应关系如下表所示: 频率简谱码(T音符音符频率(HZ) 简谱码(T值) (HZ) 值) 低 1 DO 262 63628 # 4 FA# 740 64860 # 1 DO# 277 63731 中 5 SO 784 64898 低 2 RE 294 63853 # 5 SO# 831 64934 # 2 RE# 311 63928 中 6 LA 880

64968 低 3 M 330 64021 # 6 932 64994 低 4 FA 349 64103 中 7 SI 988 65030 # 4 FA# 370 64185 高 1 DO 1046 65058 低 5 SO 392 64260 # 1 DO# 1109 65085 # 5 SO# 415 64331 高 2 RE 1175 65110 低 6 LA 440 64400 # 2 RE# 1245 65134 # 6 466 64463 高 3 M 1318 65157 低 7 SI 494 64524 高 4 FA 1397 65178 中1 DO 523 64580 # 4 FA# 1480 65198 # 1 DO# 554 64633 高 5 SO 1568 65217 中 2 RE 587 64684 # 5 SO# 1661 65235 # 2 RE# 622 64732 高 6 LA 1760 65252 中 3 M 659 64777 # 6 1865 65268 中 4 FA 698 64820 高 7 SI 1967 65282 计算方法: 例如产生262HZ频率(发音DO), 周期T=1/262=3816 us,由于定时器中断使IO不停取反,故周期 T=3816/2=1908 us 定时器初值N=65536-1908=63628 TH0=63628/256 TL0=65536%256 三、程序代码说明 1 、脉冲产生 采用定时器0溢出中断产生脉冲,定时器初始化如下: TMOD = 0x01; //定时器0工作方式1 ,即十六位计数器计数 TR0 = 1; //启动定时器 ET0 = 1; //定时器0溢出中断使能

基于51单片机的计算器设计

目录 第一章引言 (3) 1.1 简述简易计算器 (3) 1.2 本设计主要任务 (3) 1.3 系统主要功能 (4) 第二章系统主要硬件电路设计 (4) 2.1 系统的硬件构成及功能 (4) 2.2 键盘电路设计 (5) 2.3 显示电路设计 (6) 第三章系统软件设计 (7) 3.1 计算器的软件规划 (7) 3.2 键盘扫描的程序设计 (7) 3.3 显示模块的程序设计 (8) 3.4 主程序的设计 (9) 3.5 软件的可靠性设计 (9) 第四章调试 (9) 第五章结束语 (10) 参考文献 (11) 附录源程序 (11)

第一章引言 1.1 简述简易计算器 近几年单片机技术的发展很快,其中电子产品的更新速度迅猛。计算器是日常生活中比较的常见的电子产品之一。如何才能使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器呢? 本设计是以AT89S52单片机为核心的计算器模拟系统设计,输入采用4×6矩阵键盘,可以进行加、减、乘、除9位带符号数字运算,并在LCD1602上显示操作过程。 科技的进步告别了以前复杂的模拟电路,一块几厘米平方的单片机可以省去很多繁琐的电路。现在应用较广泛的是科学计算器,与我们日常所用的简单计算器有较大差别,除了能进行加减乘除,科学计算器还可以进行正数的四则运算和乘方、开方运算,具有指数、对数、三角函数、反三角函数及存储等计算功能。计算器的未来是小型化和轻便化,现在市面上出现的使用太阳能电池的计算器, 使用ASIC设计的计算器,如使用纯软件实现的计算器等,未来的智能化计算器将是我们的发展方向,更希望成为应用广泛的计算工具。 1.2 本设计主要任务 以下是初步设定的矩阵键盘简易计算器的功能: 1.扩展4*6键盘,其中10个数字,5个功能键,1个清零 2.强化对于电路的焊接 3.使用五位数码管接口电路 4. 完成十进制的四则运算(加、减、乘、除); 5. 实现结果低于五位的连续运算; 6. 使用keil 软件编写程序,使用汇编语言; 7. 最后用ptoteus模拟仿真; 8.学会对电路的调试

基于单片机的音乐播放器

基于单片机的音乐播放器 摘要 单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。 基于单片机的音乐播放器可应用于MP3、MP4,扩音器等很多方面,并可作为很多系统的辅助功能,作为单片机的重要硬件资源之一,利用定时器可以产生各种固定频率的方波信号,也可以产生包括"Do"、"Re"、"Me"--等音阶在内的各种频率声音。将各个音阶连接在一起,便可组成一支曲子或是演奏一段旋律。基于这个思想,采用AT89C52单片机设计了一款特殊的"音乐播放器",本播放器可实现播放、暂停、复位等功能。 关键字:单片机;集成电路:89C52芯片;音乐播放器

Abstract Single Chip Microcomputer is an integrated circuit chip, VLSI technology is the use of having the data processing capabilities of the CPU random access memory RAM, read-only memory ROM, a variety of I / O port and interrupt system, the timer / counter functions (may also include a display driving circuit, the pulse width modulation circuit, an analog multiplexer, A / D converter circuit, etc.) are integrated into a small sound system on a microcomputer composed of silicon. Microcontroller-based music player can be used in many ways mp3, MP4, loudspeakers, etc., and as a secondary function of many systems, as one of the important microcontroller hardware resources, using the timer can generate a variety of fixed frequency square wave signal can be generated include the "Do", "Re", "Me" - like various frequencies including the sound scale. The various scales together, may form a song or play a melody. Based on this idea, using AT89C52 designed a special "Music Player", the player can be realized play, pause, reset and other functions. Keyword:Single Chip Microcomputer;integrated circuit;89C52 chip;Music Player

基于51单片机的温湿度报警器

引言 网络通信技术的发展,使监控系统广泛应用于工农业生产等领域,因此,粮情检测技术粮情检测属监控系统范畴,近年来,由于计算机技术、超大规模集成电路技术和的研究在软、硬件等方面都有了一定的进展。 早期粮情监测主要采用温度计测量法,它是将温度计放入特制的插杆中,根据经验插在粮堆的多个测温点,管理人员定期拔出读数,确定粮温的高、低,决定是否倒粮。这种方法对储粮有一定的作用,但由于温度计精度、人工读数的人为因素等原因,温度检测不仅速度慢,而且精度低,抽样不彻底,局部粮温过高不易被及时发现,导致因局部粮食发霉变质引起大面积坏粮的情况时有发生。随着科技的发展,从1978 年开始,采用电阻式温度传感器、采样器、模数转换器、报警器等组成的储粮监测系统出现,它可对各粮库的各个测温点进行巡回检测,检测速度、精度大大提高,降低了劳动强度,但由于电阻传感器的灵敏度低,致检测精度、系统可靠性还不够理想。至1990 年,粮情检测系统有了很大的改善和提高,系统在布线上采用矩阵式布线技术,简化了数据采集部分的线路,在传感器方面应用了半导体、热电偶等器件;在线路传输上采用了串行传输方式,从而减少了传输线根数;采用单板机进行数据处理,并采用各种手段提高数据传输及检测速度,通过软硬件技术的结合,检测精度和可靠性较前有很大提高。但温度传感器的线性度差,系统的检测精度仍不理想,无法大面积推广。近年来,随着单片机功能的日益强大和计算机的广泛应用,粮情检测的准确性、稳定性要求越来越高。寻找最佳配置和最好的性价比成为粮情监测研究的热点国外在粮情监控技术上已达到了很成熟的地步,高科技数字式传感器广泛应用于粮情检测系统。这种传感器采用了半导体集成电路与微控制器最新技术,在一个管芯上集成

基于AT89C51单片机的带彩灯外观音乐盒设计

基于AT89C51单片机的带彩灯外观音乐盒设计

基于AT89C51单片机的带彩灯外观音乐盒设计 摘要 随着人类社会的发展,人们对视觉、听觉方面的享受提出了越来越高的要求。小小的音乐盒可以给人们带来美好的回忆,提高人们的精神文化享受。传统音乐盒多是机械型的,体积笨重,发音单调,不能实现批量生产。本文设计的音乐盒是以AT89C51单片机为核心元件的电子式音乐盒,体积小,重量轻,能演奏音乐,功能多,外观效果多彩,配有彩灯,使用方便,本音乐盒有三个按键,key1控制彩灯,key2控制音乐,key3为总开关,可同时关闭音乐与彩灯。具有一定的商业价值。 关键字:AT89C51;音乐盒;按键;彩灯

Abstract Along with the development of human society, people of vision, hearing things put forward higher request. Small music box can bring good memories and improve people's spiritual culture. Traditional music box is heavy mechanical type, size, pronunciation and drab, cannot achieve batch production. Music box designed in this paper based on AT89C51 microcontroller as the core element of electronic music box, small size, light weight, can play music, multi-function, appearance and colorful, with a lantern,easy to use. The music box with three buttons , The key1 control Lantern, key2 control music, key3 total switch can turn off the music and lanterns. Have some commercial value. Keywords: AT89C51, music boxes, buttons, Lantern

基于51单片机的计算器设计程序代码汇编

DBUF EQU 30H TEMP EQU 40H YJ EQU 50H ;结果存放 YJ1 EQU 51H ;中间结果存放GONG EQU 52H ;功能键存放 ORG 00H START: MOV R3,#0 ;初始化显示为空MOV GONG,#0 MOV 30H,#10H MOV 31H,#10H MOV 32H,#10H MOV 33H,#10H MOV 34H,#10H MLOOP: CALL DISP ;PAN调显示子程序WAIT: CALL TESTKEY ; 判断有无按键JZ WAIT CALL GETKEY ;读键 INC R3 ;按键个数 CJNE A,#0,NEXT1 ; 判断就是否数字键 LJMP E1 ; 转数字键处理NEXT1: CJNE A,#1,NEXT2 LJMP E1 NEXT2: CJNE A,#2,NEXT3 LJMP E1 NEXT3: CJNE A,#3,NEXT4 LJMP E1 NEXT4: CJNE A,#4,NEXT5 LJMP E1 NEXT5: CJNE A,#5,NEXT6 LJMP E1 NEXT6: CJNE A,#6,NEXT7 LJMP E1 NEXT7: CJNE A,#7,NEXT8 LJMP E1 NEXT8: CJNE A,#8,NEXT9 LJMP E1 NEXT9: CJNE A,#9,NEXT10 LJMP E1 NEXT10: CJNE A,#10,NEXT11 ;判断就是否功能键LJMP E2 ;转功能键处理NEXT11: CJNE A,#11,NEXT12 LJMP E2 NEXT12: CJNE A,#12, NEXT13 LJMP E2

基于51单片机的报警器设计

引言 报警器,防盗报警器,是对用于发生警情、危险、紧急情况等状况下以声音、光线、气压等形式发出警报的电子产品的统称。随着科技的进步,机械式报警器越来越多地被先进的电子报警器代替,经常应用于系统故障、安全防范、交通运输、医疗救护、应急救灾等领域,与社会生产、生活密不可分。 防盗报警系统通常由:探测器(又称报警器)、传输通道和报警控制器三部分构成。报警探测器是由传感器和信号处理组成的,用来探测入侵者入侵行为的,由电子和机械部件组成的装置,是防盗报警系统的关键,而传感器又是报警探测器的核心元件。采用不同原理的传感器件,可以构成不同种类、不同用途、达到不同探测目的的报警探测装置,单片微型计算机,通常简称为单片机,它采用大规模集成电路技术把微处理器和随机存取数据存储器,只读程序存储器,输入输出电路以及定时计数器。串行通信口,时钟电路。脉冲调制电路。模拟多路转换器,A/D转换器等电路集成到单独的一块芯片上,构成一个最小的完善的计算机系统,这些电路能在软件的控制下单独。准确,迅速,高效的完成程序设计者现规定的任务。因为由单片机构成的电路玩玩具有体积小,成本低,功能强,可靠性高,功耗低,电路简洁,开发和改进容易等等一系列有点,因此就有优异地性价比,从而使它在多方面得到了越来越多的使用,本次设计就是基于单片机的报警器设计。

一设计基本电路原理和思路 该报警器得设计思路是首先,利用光敏电阻构成光敏开关,光敏开关的作用是为单片机报警主电路提供报警信号,即通过光敏开关实现高低电平信号的转换,报警信号通过单片机软件处理实现信号的转换,在利用转换的信号驱动扬声器继而用声音输出进行报警,本次实验是通过光照的变化,利用光敏电阻随光照强度变化,阻值发生变化的特性首先实现的开关电路,即报警信号的来源是关照,报警主电路由单片机和音频放大模块组成,利用单片机上写入的程序,实现当报警信号输入单片机,其就会产生频率不等的信号。以驱动扬声器报警。 采用光敏电阻的光控开关 这是两种开关电路的主要原理:利用功率MOS场效应管可以作功率开关,开关的敏感元件可以采用光敏电阻LDR,当光线照射的光敏电阻上时,LDR呈低阻值,有信号加在场效应晶体管的栅极上,源漏极间导通,从而使继电器线圈K改变状态,产生控制作用或发出信号,如果将光敏电阻LDR接在地电位处,则在暗时无光线照射的光敏电阻,光敏电阻阻值高,故VMOS管栅极电位高,导通使灯L亮,反之,当有光线照射到LDR上时,VMOS栅极处于低电位截止,灯L 不亮。 本次试验采用试验一电路,即利用继电器线圈构成的电子开关达到采集信号的目的。具体是当有光线照到LDR上时,光敏电阻阻值减小,对应VMOS门级电压增加,电磁开关上流过的电流增加,引起电磁开光开启,开关k1闭合,端口输入高电平,报警电路导通,即可实现报警功能,光敏开关控制电路置于端口P1.0与总开关K1之间。

基于51单片机的音乐盒的设计毕业论文

基于51单片机的音乐盒的 设计毕业论文 目次 目次 (3) 1 引言 (4) 1.1 音乐盒的意义 (4) 1.2 研究容 (5) 2.1系统总体框架图 (6) 2.2音乐盒的设计原理 (6) 2.3 单片机芯片概述 (7) 3 硬件电路设计 (8) 3.1 单片机最小系统原理图 (8) 3.1.1 复位电路 (8) 3.1.2 晶振电路 (9) 3.1.3时钟电路 (9) 3.2 LCD显示模块 (9) 3.3 继电器模块 (11) 3.3.1电磁继电器的工作原理和特性 (12)

3.3.2 固态继电器的工作原理和特性 (12) 3.3.3 继电器主要产品技术参数 (12) 3.4 按键模块 (13) 3.5 其它 (13) 4 软件设计 (14) 4.1 软件总体流程图 (14) 4.2播放/暂停子程序 (15) 4.3 LCD显示模块软件设计 (17) 4.3.1 LCD的初始化函数 (17) 4.3.2 LCD与继电器的函数 (18) 5 系统实现 (19) 5.1 硬件调试 (20) 5.1.1 按键控制的实现 (20) 5.1.2 LCD显示 (21) 5.1.3 其他 (21) 总结 (22) 致谢 (23) 参考文献 (24) 附录A 元器件清单 (25) 附录B 源程序 (26)

1 引言 在进入21世纪后,单片机产品的发展正朝着高性能和多品种方向,并且发展趋势是进一步朝着CMOS化、小体积、低功耗、大容量、高性能、低价格以及外围的电路装化等几个方面去发展。单片机的应用的重要意义还是在于它是从根本上改变了传统的控制系统设计思想和设计方法。过去必须要由模拟电路或者数字电路才可以实现的大部分的功能,现在已能完全可以用单片机通过软件的方法来实现了。这种由软件去代替硬件的控制技术也称之为微控制技术,这是传统控制技术的一次革命。单片机可以说渗透到了我们生活的各个方面,几乎难以找到哪个领域里没有单片机的踪迹。导弹中的导航装置,飞机里安装的各种仪表的控制,计算机里的网络通讯与数据传输方面,工业自动化过程中实时控制和数据处理方面,生活中被广泛使用的各种智能IC卡,民用的高档轿车的安全保障系统,摄像机、录像机、全自动洗衣机所涉及的控制方面,以及远程控制的玩具、电子宠物等等,这些全都是离不开单片机的。 而伴随着科学技术的不断进步和社会的持续发展,人类所接触的更种信息也在不断增加并且信息变得越来越复杂。面对着浩如烟海的繁杂信息,人们目前已经能利用计算机等工具快速、精准地对其进行快速处理,但要想将其处理完毕的信息及时、清晰地传递给其他人,还必须要寻找更加卓越的显示技术去实现它。而单片机技术与液晶显示技术的结合,恰恰使得信息的传输交流向着智能化可视化方向进行快速发展。

基于51单片机的数字计算器的设计

《单片机技术及其应用》课程设计报告 专业:通信工程 班级:09312班 姓名:某某某 学号:09031069 指导教师: 二0一二年六月十八日

目录 1设计目的 (1) 2 设计题目描述与要求 (1) 3 设计过程 (2) 4硬件总体方案及说明 (6) 5 软件总体方案及设计流程 (9) 6 调试与仿真 (13) 7 心得体会 (14) 8 指导老师意见 (15) 9 参考文献 (16) 附录一 (16) 附录二 (21)

基于51单片机的数字计算器的设计 1设计目的 简易计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用和单片机完整程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。单片机课程设计既巩固了课本学到的理论,还学到了单片机硬件电路和程序设计,简易计算器课程设计通过自己动手用计算机电路设计软件,编写和调试,最后仿真,来加深对单片机的认识,充分发挥我们的个人创新和动手能力,并提高我们对单片机的兴趣,同时学习查阅资料、参考资料的方法。 本设计是基于51系列的单片机进行的简易计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED 上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件选择AT89C51单片机和74ls164,输入用4×4矩阵键盘。显示用5位7段共阴极LED静态显示。软件从分析计算器功能、流程图设计,再到程序的编写进行系统设计。选用编译效率最高的Keil软件进行编程,并用proteus仿真。 2 设计题目描述与要求 基于AT89C51数字计算器设计的基本要求与基本思路: (1)扩展4*4键盘,其中10个数字,5个功能键,1个清零 (2)使用五位数码管接口电路

基于51单片机的音乐播放器设计

题目:音乐播放器 课程设计(论文)任务书

摘要 随着电子技术的发展和计算机越来越普遍的使用,单片机作为这两项技术的有机结合也得到了广泛的应用,在某些领域具有不可替代的作用。音乐播放功能随处都会用到,如,在开发儿童智力的玩具中,等等。目前,基于单片机实现音乐播放,其体积小、价格低、编程灵活等特点在这一领域独领风骚。 单片机的英文名称为single chip microcomputer,最早出现在20世纪70年代,国际上现在已逐渐被微控制器(Microcontroller Unit 或MCU)一词所取代。它体积小,集成度高,运算速度快,运行可靠,功耗低,价格廉,因此在数据采集、智能化仪表、通讯设备等方面得到了广泛应用。而8051单片机在小到中型应用场合很常见,已成为单片机领域的实际标准。随着硬件的发展,8051单片机系列的软件工具也有了C级编译器和实时多任务操作系统RTOS,为单片机编程使用C语言提供了便利的条件;并针对单片机常用的接口芯片编制通用的驱动函数,可针对常用的功能模块,算法等编制相应的函数;C语言模块化程序结构特点,可以使程序模块大家共享,不断丰富,这样就使得单片机的的程序设计更简单可靠,实时性强,效率高。作为测控技术与仪器的学生,掌握8051单片机硬件基础及其相关软件操作,将其应用于现代电子产品中是必要而且重要的,这次课程设计我们的题目是用单片机实验箱系统制作音乐播放器。 本次课程设计主要内容是通过单片机C51语言进行编程,以产生乐曲音符和节拍,把乐谱翻译成计算机语言(音符转换诚成相对应的方波频率即定时器装载初值,节拍转换成相对应的延长时间),并将其预先存储到单片机里,然后根据按键调用再由单片机进行信息处理,在经过信号放大,由喇叭放出乐曲声,实现音乐播放的功能。其主要表现在可以播放十首歌曲,可以用十个数字键控制播放的歌曲,并且能在LCD液晶屏显

基于C51单片机的声光报警器设计说明

本科课程设计报告 题目:基于C51单片机的声光报警器设计院(系):电气与信息工程学院 专业:电子信息工程 班级: 姓名: 学号:2009021986 指导教师: 设计日期:2012年11月29日 报告书写要求

1、报告封皮标题栏为宋体小三号居中,下划线需右边对齐。 2、报告的撰写要求条理清晰、语言准确、表述简明。报告中段首空两个字符,中文字体为宋体五号,数字、字符、字母为Times New Roman五号,且单教研室主任意见: 3、报告中插图应与文字紧密配合,文图相符,技术容正确。每个图都应配有图题(由图号和图名组成)。图题(宋体小五号)置于图下居中,其中图号按顺序编排,图名在图号之后空一格排写。图中若有分图时,分图号用(a)、(b)等置于分图之下。 4、报告中插表应与文字紧密配合,文表相符,技术容正确。表格不加左、右边线,每个表应配有表题(由表号和表名组成)。表题(宋体小五号)置于表上居中,其中表号按顺序编排,表名在表号之后空一格排写。 5、报告中公式原则上居中书写。若公式前有文字(如“解”、“假定”等),文字顶格书写,公式仍居中写。公式末不加标点。公式序号按顺序编排,如报告中第一部分的第一个公式序号为“(1-1)”,文中引用公式时,一般用“见式(1-1)”或“由公式(1-1)”。 6、参考文献反映报告的取材来源,是报告不可缺少的组成部分,参考文献数量一般为8~10篇。引用文献标示应置于所引容最末句的右上角,用小五号字体。所引文献编号用阿拉伯数字置于方括号“[ ]”中,如“二次铣削[1]”。参考文献应按在文中出现的顺序编排,常用参考文献编写项目和顺序规定如下:(1)著作图书文献:序号└─┘作者.书名.版次.出版者,出版年:引用部分起止页 第一版应省略 (2)翻译图书文献:序号└─┘作者.书名.译者.版次.出版者,出版年:引用部分起止页 第一版应省略 (3)学术刊物文献:序号└─┘作者.文章名.学术刊物名.年,卷(期):引用部分起止页 (4)学术会议文献:序号└─┘作者.文章名.编者名.会议名称,会议地址,年份.出版地,出版者,出版年:引用部分起止页 (5)学位论文类参考文献:序号└─┘研究生名.学位论文题目.学校及学位论文级别.答辩年份:引用部分起止页 7、若设计完成实物制作需在报告后附录硬件电路原理图和实物测试图,附录的序号采用“附录1”、“附录2”等,并注明附录的容。 8、设计报告应按如下容和顺序A4纸双面打印(标注页码)、左侧装订成册。

基于单片机的数字音乐盒

山东建筑大学 课程设计说明书 题目:基于单片机的数字音乐盒 课程:单片机原理及应用B课程设计院(部):信息与电气工程学院 专业:电子信息工程 班级: 学生姓名: 学号: 指导教师:高焕兵张君捧 完成日期: 2013年6月

目录 摘要 .................................................................... I 1 设计目的 (2) 2 设计要求 (2) 3 设计内容 (3) 3.1 设计原理 (3) 3.2 方案设计 (3) 3.3 电路各模块说明 (4) 3.4 器件选择 (6) 3.5.系统设计 (8) 3.6 软件设计 (8) 3.7 仿真调试及操作说明 (9) 总结与致谢 (10) 参考文献 (11) 附录 (12) 附录一:基于单片机的数字音乐盒总电路图 (12) 附录二:音乐程序 (12)

山东建筑大学信息与电气工程学院学院课程设计说明书 摘要 20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,基于单片机制作的电子式音乐盒,控制功能强大,可根据需要选歌,使用方便。所放歌曲的节奏可以根据需要进行设置,根据存储容量的大小,可以尽可能多的存储歌曲。 本设计由由单片机AT80C51芯片和LCD显示器为核心,辅以必要的电路,构成的一个单片机电子数字音乐盒。本设计采用4*4键盘,用Protel99来画系统硬件图,采用C语言进行编程,编程后利用KEIL C51来进行编译,再生成的HEX文件装入芯片中,采用proteus软件来仿真,检验功能得以正常实现。 关键词:单片机;音乐盒;电路;播放

相关文档
相关文档 最新文档