基于STC89C52的简易电子琴课程设计报告.doc_第1页
基于STC89C52的简易电子琴课程设计报告.doc_第2页
基于STC89C52的简易电子琴课程设计报告.doc_第3页
基于STC89C52的简易电子琴课程设计报告.doc_第4页
基于STC89C52的简易电子琴课程设计报告.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计(报告)题 目 基于STC89C52单片机的简易电子琴 学院名称指导教师职 称班 级学 号 学生姓名2011年 6月 12日 摘要:本课程设计简易电子琴的制作基于STC89C52单片机。利用定时器中断产生不同频率来实现不同音阶,用键盘扫描实现矩阵琴键的识别。音频处理部分采用LM386进行信号放大,通过蜂鸣器发音。该简易电子琴可以实现用矩阵琴键弹奏乐曲和播放一段示例音乐的功能。关键字 简易电子琴 STC89C52 LM386 矩阵键盘Abstract:The electronic organ in this paper is based on one Singal Chip Micro-Computer. Witn the timer interrupt,it achieves different scales at different frequencies and achieves identification of the matrix keyboard keys by scaning.In audio processing part,LM386 is used to amplificat the signal, and sounding by buzzer.The simple electronic organ can play music with the matrix keyboard and play a sample of music.Keywords: simple electronic organ ; STC89C52 ; LM386 ; matrix keyboard 目录引言1设计方案论证21、按键模块方案选择22、音频处理模块方案选择2硬件部分21、系统结构图2控制模块22.1 STC89C52简介2主要功能特性32.2 音频处理模块32.2.1 LM386简介32.2.3 蜂鸣器5软件部分51 音乐产生原理52 音阶产生方法63 音乐的节拍74 矩阵键盘识别74.1去抖动:74.2被按键识别74.3键码产生7程序调试与仿真8电路板的制作与调试9实际电路调试10课程设计心得体会10参考文献11附录一: 程序清单12附录二: 元器件清单19引言 电子琴是使用现代科技实现传统器乐功能的典范。目前各种电子琴产品,已经完全可以满足音乐教学与演奏的需要。而在玩具市场上,也有各种玩具电子琴、玩具音乐盒等产品,这些产品原理简单,操作方便。本课程设计制作的简易电子琴便与儿童玩具电子琴相似。设计方案论证1、按键模块方案选择 使用简易电子琴弹奏音乐时,需要中音区的8个音阶和低音与高音区的一部分音阶。独立式按键占用的I/O口太多,而使用4*4矩阵键盘可以仅用一个四根行输出线和四根列输入线,同时可以弹奏低音3至高音5之间的音阶,已完全满足简单的弹奏需要。2、音频处理模块方案选择 本设计靠蜂鸣器最终发出声音。由于单片机驱动能力不够,在处理音符信号时,需加功率放大装置。 采用三极管:驱动电路结构简单,成本低。 使用LM386:LM386是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产品。 为保证声音效果,本设计使用LM386作放大器件。硬件部分1、系统结构图 功能选择弹奏、播放硬件部分系统结构图音频处理电路4*4矩阵键盘STC89C52单片机 图1 系统结构图实现功能:Switch开关按下后播放示例音乐樱花;switch开关按起后为弹奏模式,按下不同的按钮开关发出不同的音阶。控制模块2.1 STC89C52简介功能特性:STC89S52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。 图2 STC89C52引脚图 主要功能特性与MCS-51单片机产品兼容 8K字节在系统可编程Flash存储器1000次擦写周期 全静态操作:0Hz33Hz三级加密程序存储器 32个可编程I/O口线三个16位定时器/计数器八个中断源 全双工UART串行通道、低功耗空闲和掉电模式掉电后中断可唤醒 看门狗定时器 双数据指针 掉电标识符2.2 音频处理模块2.2.1 LM386简介LM386是美国国家半导体公司生产的音频功率放大器,主要应用于低电压消费类产品。LM386特性:静态功耗低,约为4mA,可用于电池供电;工作电压范围宽,4V-12V或5V-18V;外围元件少;电压增益可调,20-200;低失真度。LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。图3 LM386内部电路原理图LM386内部电路原理图如图1-3所示。与通用型集成运放相类似,它是一个三级放大电路.第一级为差分放大电路,T1和T3、T2和T4分别构成复合管,作为差分放大电路的放大管;T5和T6组成镜像电流源作为T1和T2的有源负载;T3和T4信号从管的基极输入,从T2管的集电极输出,为双端输入单端输出差分电路。使用镜像电流源作为差分放大电路有源负载,可使单端输出电路的增益近似等于双端输出电容的增益第二级为共射放大电路,T7为放大管,恒流源作有源负载,以增大放大倍数。第三级中的T8和T9管复合成PNP型管,与NPN型管T10构成准互补输出级。二极管D1和D2为输出级提供合适的偏置电压,可以消除交越失真。引脚2为反相输入端,引脚3为同相输入端。电路由单电源供电,故为OTL电路。输出端(引脚5)应外接输出电容后再接负载。电阻R7从输出端连接到T2的发射极,形成反馈通路,并与R5和R6构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。LM386的封装形式有塑封8引线双列直插式和贴片式。 图4 LM386的封装形式 电压增益内部设置固定为20倍。如果在脚与脚外接电容器,可增加到200倍,外围元件少效率高。在音响要求不高的设备中得到广泛运用1、R3和R18是用来分压的。因为单片机输出电平是TTL电平,电压太高,所以通过两个电阻分压。2、从 V OUT 到 LS1 接电容C17是输出电容,用来隔直流。如果不加,很易烧坏喇叭3、R19不是单独用的,它与C18组成高频滤波,滤除高频信号。5、VS是电源,两个并联电容是滤波用的。 图5 LM386应用电路图2.2.3 蜂鸣器2.2.3.1 不同蜂鸣器原理蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。压电式蜂鸣器,用的是压电材料,即当受到外力导致压电材料发生形变时压电材料会产生电荷。同样,当通电时压电材料会发生形变。 电磁式蜂鸣器,主要是利用通电导体会产生磁场的特性,用一个固定的永久磁铁与通电导体产生磁力推动固定在线圈上的鼓膜。 由于2种蜂鸣器发音原理不同,压电式结构简单耐用但音调单一音色差,适用于报警器等设备。而电磁式由于音色好,所以多用于语音、音乐等设备。 蜂鸣器的电路图形符号 蜂鸣器在电路中用字母“H”或“HA”(旧标准用“FM”、“LB”、“JD”等)表示。2.2.3.2 有源蜂鸣器与无源蜂鸣器这里的“源”不是指电源。而是指震荡源。 也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫。 而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K5K的方波去驱动它。 有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。无源蜂鸣器的优点是:便宜;声音频率可控,可以做出“多来米发索拉西”的效果;在一些特例中,可以和LED复用一个控制口。有源蜂鸣器的优点是:程序控制方便 。软件部分1 音乐产生原理一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时/计数器T0来产生这样方波频率信号,因此,只需将一首歌的音阶和频率相对应即可。2 音阶产生方法若要产生音频脉冲,只要算出某一音频的周期(1/频率),再将此周期除以2,即为半周期的时间。利用定时器计时半周期时间,每当计时终止后就将P2.4反相,然后重复计时再反相。就可在P2.4引脚上得到此频率的脉冲。利用STC89C52的内部定时器使其工作计数器模式(MODE1)下,改变计数值TH0及TL0以产生不同频率的方法产生不同音阶,例如,频率为523Hz,其周期T1/5231912s,因此只要令计数器计时956s/1s956,每计数956次时将I/O反相,就可得到中音DO(523Hz)。计数脉冲值与频率的关系式(如式2-1所示)是: Nfi2fr 式中,N是计数值;fi是机器频率(晶体振荡器为12MHz时,其频率为1MHz);fr是想要产生的频率。其计数初值T的求法如下: T65536N65536fi2fr 表1 音符频率与计数初值的对应关系表 音符频率(HZ)简谱码(T值)音符频率(HZ)简谱码(T值)低1DO26263628# 4 FA#74064860#1DO#27763731中 5 SO78464898低2RE29463835# 5 SO#83164934#2 RE#31163928中 6 LA88064968低 3 M33064021# 693264994低 4 FA34964103中 7 SI98865030# 4 FA#37064185高 1 DO104665058低 5 SO39264260# 1 DO#110965085# 5 SO#41564331高 2 RE117565110低 6 LA44064400# 2 RE#124565134# 646664463高 3 M131865157低 7 SI49464524高 4 FA139765178中 1 DO52364580# 4 FA#148065198# 1 DO#55464633高 5 SO156865217中 2 RE58764684# 5 SO#166165235# 2 RE#62264732高 6 LA176065252中 3 M65964777# 6186565268中 4 FA69864820高 7 SI1967652833 音乐的节拍在弹奏状态下节拍由操作者控制,而在播放示例音乐时需要程序控制其节拍。音乐的音拍即单位时间,对于不同的曲调可以用单片机的另外一个定时/计数器来完成。而在此处采用的方法是利用延时函数确定每个音的长短(即节拍),编程时在设置音阶时还要对其设置节拍。 4 矩阵键盘识别琴键处理程序,根据检测到得按键值,查询音律表,给计时器赋值,发出相应频率的声音。对音调的控制:根据不同的按键,对定时器T0送入不同的初值,调节T0的溢出时间,这样就可以输出不同音调频率的方波。不同音调下各个音阶的定时器。4.1去抖动:每个按键在按下或松开时,都会产生短时间的抖动。抖动的持续时间与键的质量相关,一般为520mm。所谓抖动是指在识别被按键是必须避开抖动状态,只有处在稳定接通或稳定断开状态才能保证识别正确无误。在程序中通过设置空循环来实现。4.2被按键识别采用行扫描法,该方法在微机系统中被广泛使用。 由程序对键盘逐行扫描,通过检测到的列输出状态来确定闭合键,为此,需要设置输出口为P3.0P3.3,输入口为P3.4P3.7。4.3键码产生为了从键的行列坐标编码得到反映键功能的键码,一般在内存区中建立一个键盘编码表,通过查表获得被按键的键码。T0中断入口重装TH0,TL0初值P2.4取反中断返回 图6 产生音阶的定时器中断子程序流程图开始矩阵键盘按键按下成功否?识别按键功能根据按键功能,装入音符T值到T0中启动T0工作行列式键盘按键释放成功否?停止T0工作T0初始化并开中断允放T0中断 图7 按键识别程序流程图程序调试与仿真1 使用Keil软件对程序进行调试,并生成hex文件。弄懂参考程序后,自己编了一段樱花音乐。经Keil编译连接,程序调试无误。2 使用proteus进行仿真将Keil生成的dianziqin.hex文件加到单片机上,启动仿真。可以很好地实现播放与弹奏功能。需要说明的是,仿真只是在原理方面的验证,因而本仿真中蜂鸣器直接接到P2.4,在实际中还要有音频放大器件。 图8 proteus仿真原理图电路板的制作与调试 图9 简易电子琴电路原理图 图10 电子琴PCB电路实际电路调试第一次上电后蜂鸣器不响。后来发现当把隔直电容220uF短路后,蜂鸣器响了,虽然能听出音乐和按键音,但一直有一个很大的声响。经过一番分析,认为由于蜂鸣器发出的声音频率较低,隔直电容显得过大。又换了几个容量较小的隔直电容,仍不出声,于是放弃隔直电容,而直接用一个10K电阻替代。再次测试后,发现效果好得多。可见,加了电阻可起到削弱直流分量的作用,因而噪声小得多,而频率较低的交流也影响不大。课程设计心得体会实践出真知。单片机是应用性很强的一本学科。仅有课堂的理论学习和次数有限的实验是远远不够的,必须自己动手做出实物来。本次课程设计便提供了一个很好地机会,理论联系实际,在实际动手过程中巩固知识、积累经验。应当说本人较好地珍惜了此次机会。最初选题时,老师给了我们充分发挥积极主动性的空间,让大家结合自身实际情况自定课题。本人由于爱好音乐,因而对基于单片机的简易电子琴产生了浓厚的兴趣。因为有兴趣,所以整个课程设计过程中乐此不疲。尤其是在做软件部分时,在弄懂了参考程序后,又将原先的示例音乐换掉,自己编写了一段樱花,结果非常成功。在此过程中,要全面考虑音阶、节拍,当然,这是本人的特长。能将自己的特长与所学的专业结合起来,是非常愉悦的。功夫在诗外。本课程设计真正实施起来后,需要的知识不仅仅是理论课学习的书本知识,还需要许多软件的应用技能及电路板制作的知识与经验。以本次课程设计为契机,本人学了许多新东西。首先,本设计采用C语言,而不是课堂上一直学习的汇编语言。这是考虑到C语言思路更清晰,更简明,而且也是以后嵌入式学习的基础,因而查找了Keil Cx51的教程,最终弄懂了参考程序并作出了有效的改动。其次,为了检验对程序的理解,需要仿真,因而又自学了Keil和proteus。当程序编译连接无误时,当仿真电路能够发出按键音和播放音乐时,很有成就感。本次课程设计也是对protel、电路板制作和调试的巩固和提高。这期间得到了实验室同学的热心帮助,从中增长了许多电路板制作与调试的经验知识。当然,本次课程设计也有遗憾和不足之处。如,为了省去打太多过孔的麻烦,要在电路板正面置焊点。因而做按键开关的封装时想把引脚距离拉开以便于焊接,但间距过大,以致实际制作过程中按钮开关引脚很难插。还有最终蜂鸣器仍存在噪音,使得一些特定频率的按键音被掩盖。总的来说,本次课程设计获益匪浅。感谢老师,感谢对本人提供过热心帮助的同学们!参考文献【1】李广弟 朱月秀 冷祖祁.单片机基础.北京航空航天大学出版社【2】马忠梅 籍顺心 张凯等.单片机的C语言应用程序设计(第四版).北京航空航天大学出版社 附录附录一: 程序清单 #include#define uchar unsigned char#define uint unsigned intuint key,i,j,time,m,k;uchar temp;uchar STH0,STL0,STH1,STL1;sbit sw=P27;sbit speaker=P24;sbit P37=P37;sbit P36=P36;sbit P35=P35;sbit P34=P34;/樱花数据表code unsigned char sszymmh=6,2,2, 6,2,2, 7,2,4 , 6,2,2, 6,2,2, 7,2,4,6,2,2, 7,2,2, 1,3,2 , 7,2,2 , 6,2,2, 7,2,1, 6,2,1, 4,2,4, 3,2,2, 1,2,2, 3,2,2, 4,2,2, 3,2,2, 3,2,1, 1,2,1, 7,1,4, 0,0,0 ;/ 音阶频率表高八位code unsigned char FREQH= 0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8, 0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC, /1,2,3,4,5,6,7,8,i 0xFC,0xFD,0xFD,0xFD,0xFD,0xFE, 0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF, ;/ 音阶频率表低八位code unsigned char FREQL= 0x42,0xC1,0x17,0xB6,0xD0,0xD1,0xB6, 0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B,0x8F, /1,2,3,4,5,6,7,8,i 0xEE,0x44, 0x6B,0xB4,0xF4,0x2D, 0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16, ;unsigned int code tab=64021,64260,64400, 64524,64580,64684,64777, 64820,64898,64968,65030, 65058,65110,65157,65178,65217;void key_music()P3=0xff;P34=0;temp=P3;temp=temp&0x0f;if(temp!=0x0f)for(i=50;i0;i-) for(j=200;j0;j-); temp=P3;temp=temp&0x0f;if(temp!=0x0f)temp=P3;temp=temp&0x0f;switch(temp)case 0x0e: key=0; break; case 0x0d: key=1; break; case 0x0b: key=2; break; case 0x07: key=3; break;speaker=speaker;STH1=tabkey/256;STL1=tabkey%256;TR0=1;temp=P3;temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp & 0x0f; TR0=0;P3=0xff;P35=0;temp=P3;temp=temp&0x0f;if(temp!=0x0f)for(i=50;i0;i-) for(j=200;j0;j-); temp=P3;temp=temp&0x0f;if(temp!=0x0f)temp=P3;temp=temp&0x0f;switch(temp)case 0x0e: key=4; break; case 0x0d: key=5; break; case 0x0b: key=6; break; case 0x07: key=7; break;speaker=speaker;STH1=tabkey/256;STL1=tabkey%256;TR0=1;temp=P3;temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp & 0x0f; TR0=0;P3=0xff;P36=0;temp=P3;temp=temp&0x0f;if(temp!=0x0f)for(i=50;i0;i-) for(j=200;j0;j-); temp=P3;temp=temp&0x0f;if(temp!=0x0f)temp=P3;temp=temp&0x0f;switch(temp)case 0x0e: key=8; break; case 0x0d: key=9; break; case 0x0b: key=10; break; case 0x07: key=11; break;speaker=speaker;STH1=tabkey/256;STL1=tabkey%256;TR0=1;temp=P3;temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp & 0x0f; TR0=0;P3=0xff;P37=0;temp=P3;temp=temp&0x0f;if(temp!=0x0f)for(i=50;i0;i-) for(j=200;j0;j-); temp=P3;temp=temp & 0x0f;if(temp!=0x0f)temp=P3;temp=temp&0x0f;switch(temp)case 0x0e: key=12; break; case 0x0d: key=13; break; case 0x0b: key=14; break; case 0x07: key=15; break;speaker=speaker;STH1=tabkey/256;STL1=tabkey%256;TR0=1;temp=P3;temp=temp & 0x0f; while(temp!=0x0f) temp=P3; temp=temp & 0x0f; TR0=0;void timer0(void) interrupt 1 using 0if(sw=1)TH0=STH1;TL0=STL1;else TH0=STH0;TL0=STL0;speaker=!speaker;void delay(unsigned char t)unsigned char t1;unsigned long t2;for(t1=0;t1t;t1+) for(t2=0;t28000;t2+); TR0=0;void song()TH0=STH0;TL0=STL0;TR0=1;delay(time);void music(void)m=0;time=1;sw=1;while(time&sw=0)if(sw)i=0;continue;elsek=sszymmhm+7*sszymmhm+1-1;STH0=FREQHk;STL0=FREQLk;time=sszymmhm+2;m=m+3;song();void main()TMOD=0x01;ET0=1;EA=1;while(1) if(sw=1)key_music(); else music();附录二: 元器件清单名 称示值数量(个)STC89C52单片机1晶振12M1电位器10k1四脚按键开关 16六脚开关 1LM3861电解电容0.05uF1电解电容100uF1电解电容10uF2瓷片电容30pF2电阻10K4蜂鸣器1 袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论