如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
电子信息工程专业电子工程实践报告班级电子0707学号200714190姓名于淼日期2010年9月18指导教师马彧一﹑实践任务要求设计一个8位的简易电子琴,可以发出1﹑2﹑3﹑4﹑5﹑6﹑7﹑i八个音。二﹑硬件原理图三﹑硬件PCB版图四﹑器件明细表五﹑软件程序#include<reg51.h>sbitspeaker=P1^0;unsignedcharkeys;unsignedchartone[]={108,102,91,86,77,68,61,57};voidsound(unsignedchar);voiddelay8us(unsignedchar);unsignedchartimer0h,timer0l,time;//世上只有妈妈好数据表codeunsignedcharsszymmh[]={6,2,3,5,2,1,3,2,2,5,2,2,1,3,2,6,2,1,5,2,1,6,2,4,3,2,2,5,2,1,6,2,1,5,2,2,3,2,2,1,2,1,6,1,1,5,2,1,3,2,1,2,2,4,2,2,3,3,2,1,5,2,2,5,2,1,6,2,1,3,2,2,2,2,2,1,2,4,5,2,3,3,2,1,2,2,1,1,2,1,6,1,1,1,2,1,5,1,6,0,0,0};//音阶频率表高八位codeunsignedcharFREQH[]={0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8,0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC,//1,2,3,4,5,6,7,8,i0xFC,0xFD,0xFD,0xFD,0xFD,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF,};//音阶频率表低八位codeunsignedcharFREQL[]={0x42,0xC1,0x17,0xB6,0xD0,0xD1,0xB6,0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B,0x8F,//1,2,3,4,5,6,7,8,i0xEE,0x44,0x6B,0xB4,0xF4,0x2D,0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16,};voiddelay(unsignedchart){unsignedchart1;unsignedlongt2;for(t1=0;t1<t;t1++){for(t2=0;t2<8000;t2++){;}}TR0=0;}voidt0int()interrupt1{TR0=0;speaker=!speaker;TH0=timer0h;TL0=timer0l;TR0=1;}voidsong(){TH0=timer0h;TL0=timer0l;TR0=1;delay(time);}main(){speaker=0;EA=1;EX0=1;IT0=1;PT0=1;P2=0xff;while(1){keys=~P2;switch(keys){case0x01:sound(0);break;case0x02:sound(1);break;case0x04:sound(2);break;case0x08:sound(3);break;case0x010:sound(4);break;case0x020:sound(5);break;case0x040:sound(6);break;case0x080:sound(7);break;}}}voidsound(unsignedcharx){chari;for(i=0;i<60;i++){speaker=1;delay8us(tone[x]);speaker=0;delay8us(tone[x]);}}voiddelay8us(unsignedcharx){unsignedchari,j;for(i=0;i<x;i++)for(j=0;j<1;j++);}MAMAHAO_0()interrupt0{unsignedchark,i;TMOD=1;//置CT0定时工作方式1EA=1;ET0=1;//IE=0x82//CPU开中断,CT0开中断while(1){i=0;while(i<100){//音乐数组长度,唱完从头再来l;k=sszymmh[i]+7*sszymmh[i+1]-1;timer0h=FREQH[k];timer0l=FREQL[k];time=sszym