数字电子琴的设计.doc

上传人:星星 文档编号:1038647 上传时间:2024-03-28 格式:DOC 页数:24 大小:468.50KB
下载 相关 举报
数字电子琴的设计.doc_第1页
第1页 / 共24页
数字电子琴的设计.doc_第2页
第2页 / 共24页
数字电子琴的设计.doc_第3页
第3页 / 共24页
数字电子琴的设计.doc_第4页
第4页 / 共24页
数字电子琴的设计.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、 单片机课程设计-数字电子琴设计目录【摘要】课设题目:简易电子琴的设计一、 引言1.1 电子琴设计的背景1.2 电子琴设计的意义1.3 电子琴设计的目标二、方案比较以及选择2.1 控制模块选择方案2.2 按键选择方案三、硬件设计及说明3.1系统组成及总体框图3.2元件简介3.2.1 AT89S523.2.2 LM3863.2.3 LED数码管3.3显示电路3.4 各功能模块原理图3.4.1 AT89S52模块电路原理图3.4.2键盘扫描模块电路原理图3.4.3数码管显示模块电路原理图3.4.4音频处理模块电路原理图1四、软件设计34.1 音乐相关知识34.2如何用单片机实现音乐的节拍34.3如

2、何用单片机产生音频脉冲34.4系统总体功能流程图4五、系统调试75.1硬件调试75.2 软件调试7六、课程设计总结以及心得体会7七、参考文献8附录1:元器件清单8附录2:主要电路原理图9附录3:程序清单21【摘要】 随着电子技术的发展,电子技术正在逐渐改善着人们的学习、生活、工作,因此开发本系统希望能够给人们多带来一点生活上的乐趣,电子技术与音乐的结合不断加深。由此而产生的电子琴在这种形势下,因其体积小,易于携带,经济适用,对初学者,尤其对识谱的人来说是很容易弹奏的,一首简单的曲子灵感好的人甚至不用很多的练习和教师的指导就能很快的弹奏出来。是一般家庭都能承受得了的经济投入,而且电子琴键盘操作直

3、观易于掌握。这样就强烈地激发了学习者的学习兴趣,迅速地提高了电子琴的普及率。电子琴使用简单。深受广大音乐爱好者推崇。作为电子专业的学生,掌握电子琴的制作是很好检验我们所学知识应用。它所包含的知识基本上覆盖我们的模拟电子技术基础、数字电子技术基础、EDA技术、电子线路、单片机基础以及接口技术课程的重要章节。虽然我们不能设计出很复杂的电子琴,主要是考虑到设备以及成本等一系列问题,因此我打算设计并制作一个简易的电子琴。采用集成电路设计,基于AT89S52单片机设计一款简易的电子琴,采用4*4距阵键盘,鉴于传统电子琴可以用键盘上的“k0”到“k16”键演奏从低So到高DO等16个音,从而可以用来弹奏喜

4、欢的乐曲。【关键字】:电子琴 单片机 AT89S52课设题目:数字电子琴的设计【摘要】 微型电子琴的设计以AT89S52单片机作为系统的核心控制部分,通过制作硬件电路和软件的设计编写,然后进行软硬件的调试运行,最终达到设计电路的乐器演奏、点歌、存储及显示功能。设计中应用中断系统和定时/计数原理控制演奏器发声,对音乐发生所必须确定的音符和节拍分别用程序语言实现。可以用它来弹奏和播放乐曲。特点是设计思路简单、清晰,成本低。 【关键词】 单片机 电子琴 AT89S52一、 引言1.1 电子琴设计的背景随着电子科技的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作,因此开发本系统希望能够给人们多

5、带来一点生活上的乐趣。基于当前市场上的玩具市场需求量大,其中电子琴就是一个很好的应用方面。单片机技术使我们可以利用软硬件实现电子琴的功能,从而实现电子琴的微型化,可以用作玩具琴、音乐转盘以及音乐童车等等。并且可以进行一定的功能扩展。鉴于传统电子琴可以用键盘上的“k0”到“k16”键演奏从低So到高DO等16个音,从而可以用来弹奏喜欢的乐曲。1.2 电子琴设计的意义该设计具有以下优点:(1)可以随意弹奏想要表达的音乐;(2)制作简单,成本低。 (3)比传统电子琴功能更完善。1.3 电子琴设计的目标由于本设计主要用于人们娱乐方面,因此在设计上尽量使其安全以及简单易操作。其次,在这次设计可行性上进行

6、分析如下:1、经济可行性:所谓经济可行性,即在这次设计上需要投入资金的多少,由于课程设计是提高我们的动手能力以及资金有限。因此在经济上必须能够承受,比较理想化的对于我们课程设计来说是不可行的。通过分析后,无论是在器件价格或是常见度上均是可行的。2、技术可行性:技术可行性主要是分析技术条件上是否能够顺利开展并完成课程设计的主要问题,硬件、软件能否满足设计者的需要等。通过分析各种软件环境,硬件仿真环境等均已经具备。综上所述,本系统设计目标已经明确,在经济与技术上均可行,因此本系统的开发是完全可行的。二、方案比较以及选择2.1 控制模块选择方案方案一:用可控硅制作电子琴。将220V交流电经变压器降压

7、,再经过整流、滤波,获得+13.5V直流电压。将单向可控硅SCR和电阻、电容组成驰张振荡器电路。但该设计方案制作成本高且复杂。方案二: 采用AT89C51单片机进行控制,由于AT89C51不具备ISP功能,因此Atmel公司已经停产在市面上已经不常见,况且其ROM只有4K在系统将来升级方面没有潜力。方案三:采用AT89S52单片机进行控制,由于其性价比高,完全满足了本作品智能化的要求,它的内部程序存储空间达到8K,使软件设计有足够的内部使用空间并且方便日后系统升级,使用方便,抗干扰性能提高。 选择方案:鉴于上述对比与分析,本设计采用方案三 2.2 按键选择方案传统电子琴可以用键盘上的“1”到“

8、A”键演奏从低SO到高DO等11音。该设计有16个按钮矩阵,设计成16个音,可以实现音阶在低音4-高音5之间。比传统音阶范围大,弹奏效果好。三、硬件设计及说明 3.1系统组成及总体框图硬件设计的任务是根据总体设计要求,在选择的机型的基础上,具体确定系统中所要使用的元器件,设计出系统的原理框图、电路原理图。该设计要实现一种由单片机控制的电子琴,单片机工作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号。该设计具有11个音节的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用户的弹奏,通过扬声器将音乐播放出来。由于本例实现的音乐

9、发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。用单片机产生的音频脉冲直接驱动扬声器并不能产生所要实现的音乐,因为它没有足够的驱动能力,这就需要音频功率放大电路。本例使用国家半导体公司的低压音频功率放大器LM386来实现音频功放电路。 按键音频功放电路单片机AT89S52扬声器LED显示电路图3-1 系统结构图3.2元件简介3.2.1 AT89S52 功能特性:AT89S52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允

10、许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位 定时器/计数器,一个6向量2级中断结构,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻 辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器

11、被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。主要性能:与MCS-51单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。3.2.2 LM386 LM386是美国国家半导体公司生产的音频功率放大 器,主要应用于低电压消费类产品。为使外围元件最少,电压增益内置为20。但在1脚和8脚之间增加

12、一只外接电阻和电容,便可将电压增益调为任意值,直至 200。输入端以地位参考,同时输出端被自动偏置到电源电压的一半,在6V电源电压下,它的静态功耗仅为24mW,使得LM386特别适用于电池供电的场合。LM386是一种音频集成功放,具有自身功耗低、电压增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机和收音机之中。LM386的封装形式有塑封8引线双列直插式和贴片式。图3-2 LM386的封装形式特性(Features)静态功耗低,约为4mA,可用于电池供电。 工作电压范围宽,4-12V or 5-18V。 外围元件少。 电压增益可调,20-200。 低失真度。其典型应用

13、电路如下:图3-3 放大器增益=20(最少器件) 图3-4 放大器增益=50 图3-5 低频提升放大器3.2.3 LED数码管本次课程设计的显示电路采用LED数码管显示,LED(Light-Emitting Diode)是一种外加电压从而流过电流并发出可见光的器件。LED是属于电流控制器件,使用时必须加限流电阻。LED有单个LED和八段LED之分,也有共阴和共阳两种。常用的七段显示器的结构如图下图所示。发光二极管的阳极连在一起的称为共阳极显示器(如图b所示),阴极连在一起的称为共阴极显示器(如图c所示)。1位显示器由八个发光二极管组成,其中七个发光二极管ag控制七个笔画(段)的亮或暗,另一个控

14、制一个小数点的亮和暗,这种笔画式的七段显示器能显示的字符较少,字符的开头有些失真,但控制简单,使用方便。此外,要画出电路图,首先还要搞清楚他的引脚图的分布,在了解了正确的引脚图后才能进行正确的字型段码编码。才能显示出正确的数字来。 (a)外形 (b)共阳极 (C)共阴极图3-6 数码管引脚3.3显示电路本次课程设计的显示电路采用LED数码管显示,由于 LED是属于电流控制器件,使用时必须加限流电阻。通过单片机查表得出数码管显示编码,传送给数码管显示,以此来实现按键与显示程序的一致性。3.4 各功能模块原理图3.4.1 AT89S52模块电路原理图单片机主程序模块通过对键盘扫描程序信号的读取,在

15、通过对应的表,取出数码管显示编码和定时器初始值以产生不同的声音信号。在这一过程中,对数码管编码是直接赋值,对声音信号则是通过中断程序进行控制。图3-7 AT89S52模块电路原理图3.4.2键盘扫描模块电路原理图对键盘扫描电路的扫描方式有行扫描法和线反转法,在此次程序编写中,采用行扫描法,通过在p20p23上循环送出0扫描信号,p24p27输入按键上的高低电平信息给单片机,经处理程序,判断出是哪个开关按下,并送主程序以实现不同功能。图3-8 键盘扫描模电路原理图键盘扫描模电路实际图3.4.3数码管显示模块电路原理图数码管显示模块核心是共阳级数码管,通过来自单片机I/O口的电平高低来点亮和熄灭数

16、码管上的发光二极管,通过单片机送来的数码管显示编码可以在数码管上显示数字和字符,使应用人员可以很容易的理解按键按下所对应的音符。图3-9 数码管显示模块电路原理图数码管显示模块电路实际图3.4.4音频处理模块电路原理图 由于单片机驱动能力不够,在处理音符信号时,需加功率放大装置,因LM386芯片具有低功耗、高增益的特点,这合适单片机低功耗输出,所以加装LM386音频信号放大器对信号进行放大。图3-10 音频处理模块电路原理图音频处理模块电路实际图四、软件设计 本软件设计关键是要实现一种由单片机控制的简单音乐发生器,它由16个音节组成的的键盘,用户可以根据乐谱在键盘上进行演奏,音乐发生器会根据用

17、户的弹奏,通过扬声器将音乐播放出来。4.1 音乐相关知识 乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的高低决定的,频率高声音就高,频率低声音就低,不同音商的乐音是用C、D、E、F、G、A、B表示的,这7个字母就是乐音的音名,它们一般依次唱成DO、RE、MI、FA、SO、LA、SI,这是唱曲时乐音的发音,所以叫唱名。音持续时间的长短即时值,一般用拍数表示,休止符表示暂停发音。一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,加以与拍数对应的延时,构成音乐。4.2如何用单片机实现音乐的节拍 除了音符以外,节拍也是音乐的关键组成部分。 节

18、拍实际上就是音持续时间的长短,在单片机系统中可以用延时来实现,如果1/4拍的延时是0.4秒,则1拍的延时是1.6秒,只要知道1/4拍的延时时间,其余的节拍延时时间就是它的陪数。如果单片机要自己播放音乐,那么必须在程序设计中考虑到节拍的设置,由于本例实现的音乐发生器是由用户通过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。对于不同的曲调我们也可以用单片机的另外一个定时/计数器来完成。音乐的音拍,一个节拍为单位(C调)具体如下表:曲调值DELAY 曲调值DELAY调4/4125ms 调4/462ms调3/4187ms 调3/494ms调2/4250ms 调2/4125ms 表4-1 音乐节

19、拍表4.3如何用单片机产生音频脉冲了解音乐的一些基本知识后可知,产生不同频率的音频脉冲即能产生音乐,对于单片机而言,产生不同频率有脉冲非常方便,可以利用它的定时/计数器来产生这样的方波频率信号,因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计数的关系。在本实验中,单片机工作于12MHZ时钟频率,使用其定时/计数器T0,工作模式为1,改变计数值TH0和TL0可以产生不同频率的脉冲信号,在此情况下,C调的各音符频率与计数值T的对照如下表:音符频率(HZ)计数值(T值)音符频率(HZ)计数值(T值)低1DO26263628#4FA#74064860#1DO#27763737中5SO7846

20、4898低2RE29463835#5SO#83194934#2RE#31163928中6LA88064968低3MI33064021#6LA#93264994低4FA34964103中7SI96865030#4FA#37064185低1DO104665058低SO39264260#1DO#110965085#5SO#41564331高2RE117565110低6LA44064400#2RE#124565134#6LA#46664463高3MI131865157低7SI49464524高4FA139765178中1DO52364580#4FA#149065198#1DO#55464633高5SO

21、156865217中2RE58764633#5SO#166165235#2RE#62264884高6LA176065252中3MI65964732#6LA#186565268中4FA69864820高7SI196765283 表4-2 音符频率与计数值T的对照表T的值决定了TH0和TL0的值,其关系为:TH0=T/256,TL0=T%2564.4系统总体功能流程图该程序设计思路比较清晰既从开始到声明变量与函数再到读取按钮开关,判断是否按下,然后就是一个一个按钮的动作。其主程序如下: 定时器初始化数码管显示0 循环检测按键 图4-1 主程序框图 按键子程序流程图如下:KEY1键按下KEY2键按下

22、KEY3键按下KEY4键按下KE51键按下KEY6键按下KEY7键按下数码管显示0,并播放Do的中音数码管显示1,并播放Re的中音数码管显示2,并播放Mi的中音KEY8键按下数码管显示3,并播放Fa的中音数码管显示4,并播放So的中音数码管显示5,并播放La的中音数码管显示6,并播放Si的中音数码管显示7,并播放Do的高阶中音KEY9键按下KEY10键按下KEY11键按下KEY12键按下KEY13键按下KEY14键按下KEY15键按下数码管显示8并播放Do的高音数码管显示9并播放Re的高音数码管显示10,并播放Mi的高音KEY16键按下数码管显示11,并播放Fa的高音数码管显示12,并播放So

23、的高音数码管显示13,并播放La的高音数码管显示14,并播放Si的高音数码管显示15,并播放Do的高阶高音五、系统调试 电路调试是整个系统功能否实现的关键步骤,我们将整个调试过程分为三大部分:硬件调试、软件调试和综合调试。5.1硬件调试硬件调试主要是针对单片机部分进行调试。在上电前,先确保电路中不在断路或短路情况,这一工作是整个调试工作的第一步,也是非常重要的一个步骤。在这部分调试中主要使用的工具是万用表,用来完成检测电路中是否存在断路或者短路情况等。注意焊点之间,确保焊点没有短接在一起,同时注意焊点的美观,确保没有开路以及短路的现象出现。在确保硬件电路正常,无异常情况(断路或短路)方可上电调

24、试,上电调试的目的是检验电路是否接错,同时还要检验原理是否正确,在本次设计中,上电调试主要键盘单片机控制部分、数码管点亮部分、和音频转换电路硬件调试。1、数码管LED电路调试:接通电源,随机按下按钮可以看到数码管显示数字。2、键盘单片机控制部分调试:上电后,随机按动键盘可以发现各个按键对应的音正确。5.2 软件调试调试主要方法和技巧: 通常一个调试程序应该具备至少四种性能:跟踪、断点、查看变量、更改数值。整个程序是一个主程序调用各个子程序实现功能的过程,要使主程序和整个程序都能平稳运行,各个模块的子程序的正确与平稳运行必不可少,所以在软件调试的最初阶段就是把各个子程序模块进行分别调试。六、课程

25、设计总结以及心得体会 通过这次课程设计,我学到了很多课本上没有学到的知识,这其中也锻炼了自己的动手能力,可以将以前学过的零零散散的知识穿串起来。本次课程设计通过制作简易电子琴,我很好的将自己的理论知识与实践相结合起来,进一步巩固了专业基础知识和相关专业课程知识,同时也培养了自己独立自主、综合分析的思维与创新能力。在设计的过程中遇到过各种各样的问题,设计的过程也不是一帆风顺。特别是设计软件时,一些很细小的问题都可能导致功能性的错误,修改了多次才通过仿真。在设计过程中我发现自己对以前所学过的知识理解得不够深刻,掌握得不够牢固,所以也利用图书馆、网络资源查阅了大量文献资料,请教了很多同学。同时在具体

26、的制作过程中我们发现一些书本上的知识与实际的应用存在着一定的差距,书本上的知识很多都是理想化后的结论,忽略了很多实际的因素,或者涉及的不全面,可在实际的应用时这些是不能被忽略的,我们不得不考虑这方面的问题,这也让我更深刻地体会到在今后的学习工作中也要注重理论联系实际,更重要的是增强了我们的团队合作意识,让我们意识到以后不管到哪个岗位上都离不开自己的团队,如果没有小组成员共同努力,不管是在质量上还是在设计时间上都会大大折扣。 首先在课程设计刚开始的调研阶段,我学会了怎么通过各种方式查询相关的资料。通过对这些资料的学习,我大致了解了单片机的发展现状以及未来的发展趋势,认识到目前单片机方面的各种各样

27、的发展,和它们之间的竞争。了解了单片机方面的先进技术,这些都为我的未来的学习指明了方向。我的课程设计主要涉及硬件和软件两方面的内容,通过这些我的硬件和软件开发能力都获得了提高。通过这次课程设计,我真正的懂得了“世上无难事,只怕有心人”这句话,不论多么难的事,只要用心了,认真了,就能成功。最后,感谢王卫忠老师的认真指导。七、参考文献【1】谭会生,张昌凡.EDA技术及应用(第二版)M.西安电子科技大学出版社,2001年9月第1版【2】徐志军,王金明,伊廷辉等. EDA技术与PLD设计M.人民邮电出版社, 2006年2月第1版【3】赵鑫,蒋亮,齐兆群等.数字电路设计M.北京机械工业出版社,2005年

28、6月第一版.【4】苏家健、曹柏荣、汪志锋.单片机原理及应用技术M.高等教育出版社【5】美Ashish Wilfred Meeta Gupta Kartik Bhatnagar著,刘永明,贺民译. php专业项目实例开发J. 水利水电出版社,2003【6】于海生. 微型计算机控制技术选编M.清华大学出版社,1999.【7】李朝青. 单片机原理及接口技术M. 北京:北京航天航空大学出版色,2001.【8】胡汉才. 单片机原理及其接口技术M. 北京:清华大学出版社,2004.【9】 宋浩,田丰,单片机原理及应用,北京:清华大学出版社,北京交通大学大学出版社,2005【10】孙惠芹,单片机项目设计教程

29、,北京:电子工业出版社,2009【11】杨居义,单片机原理与工程应用,北京:清华大学出版社,2009【12】宋建国,张俊谟,薛宗祥,EPSON单片机原理与应用,北京:北京航空航天大学出版社,1998【13】冯育长,单片机系统设计与实例分析,西安:西安电子科技大学科技大学出版社,2007附录1:元器件清单共阴数码管 一只扬声器 一只按键 17只电容: 0.1f 五只晶振: 11.0592M 一只 瓷片电容: 20pf 二只 电解电容: 10uf 三只 47uf 一只 电阻 10K 四只排阻: 1K 一只数码管: LED 一只集成块: LM386 一只AT89C52 一只附录2:主要电路原理图 附

30、录3:程序清单ORG 0000H ;初始位置00H JMP STARET ;跳到主程序 ORG 000BH ;定时器0中断起始单元 JMP TIME0 ;跳到中断程序 STARET: MOV TMOD,#00000001B;设定工作方式为1 MOV IE, #10000010B ;开中断允许 SETB TR0L1: CALL KEY ;调用键盘扫描程序 CLR EA ;关中断总允许 JB F0,L1 ;查询键盘按下标志 MOV A,22H ;将键盘码送单元A MOV DPTR,#TABLE1 MOVC A,A+DPTR ;将查询的数码管显示码送A MOV P0,A ;将数码管显示码送数码管 M

31、OV A,22H ;将键盘码送单元A RL A ;数据倍乘 MOV DPTR,#TABLE MOVC A,A+DPTR;将声音编码送A MOV TH0,A;将声音编码高位给TH0 MOV 21H,A;送声音编码给21H单元储存 MOV A,22H RL A INC A MOVC A,A+DPTR;取声音编码地位给A MOV TL0,A;将声音编码送TL0 MOV 20H,A;将声音编码低位送20H储存L2: CALL KEY;调用键盘扫描程序 SETB EA;开断总允许 JB F0,L1;查询键盘按下标志 JMP L2;没有转L2循环/*键盘扫描程序*/KEY: SETB F0 ;键盘按下标志

32、至1 MOV R3,#0F7H;R3送扫描码 MOV R1,#00H;R1初始为0L3: MOV A,R3;将扫描码送A MOV P2,A;将扫描码送P2扫描 MOV A,P2;读取键盘状态 SETB C;进位置1 MOV R5,#04H;将4给R5单元,用于行扫描L4: RLC A JNC KEYIN;有键按下跳到KEYIN INC R1;无键按下R1加1 DJNZ R5,L4;判断一行有没有判断完毕 MOV A,R3;扫描完毕后,再次送扫描码给A SETB C;进位置1 RRC A;对A进行右移 MOV R3 ,A ;送新的扫描码给R3 JC L3 ;判断是否扫描完毕,是则循环 RET;返

33、回主程序KEYIN: MOV 22H,R1;将键盘码送22H储存 CLR F0;对键盘按下标志清0 RET;返回主程序TIME0: PUSH ACC;将A压入堆栈 PUSH PSW;将PSW压入堆栈 MOV TL0,20H;将声音编码低位送TL0 MOV TH0,21H;将声音编码高位送TH0 CPL P1.0;对输出口声音信号取反 POP PSW;.从堆栈还原PSW POP ACC;从堆栈还原ACC RETI;中断返回/*音符编码*/TABLE: DW 64732,64820,64898,64968 DW 65030,63628,63835,64021 DW 64103,64206,64400,64524 DW 65058,65110,65157,65178 /*共阳极数码编码*/TABLE1: DB 0CH,98H,48H,40H,1EH DB 9FH,25H,0DH,99H,49H,41H,1FH DB 11H,01H,63H,03H END

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922