简易信号发生器单片机课程设计报告_第1页
简易信号发生器单片机课程设计报告_第2页
简易信号发生器单片机课程设计报告_第3页
简易信号发生器单片机课程设计报告_第4页
简易信号发生器单片机课程设计报告_第5页
免费预览已结束,剩余38页可下载查看

下载本文档

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

文档简介

1、课程设计 (论文 )任务书电气 学 院 电力系统及其自动化 专 业 12( 1 ) 班 一、课程设计 (论文 )题目 : 简易信号发生器设计二、课程设计 (论文)工作自 2015年 1 月12 日起至 2015 年 1月 16 日止。三、课程设计 (论文 ) 地点: 电气学院机房 10-303四、课程设计 (论文 )内容要求: 1课程设计的目的(1)综合运用单片机原理及应用相关课程的理论知识和实际应用知识,进行单片机应用系统电路及程序设计,从而使这些知识得到进一步的巩固,加深和发展;(2)熟悉和掌握单片机控制系统的设计方法,汇编语言程序设计及proteus 软件的使用;(3)通过查阅图书资料、

2、 以及书写课程设计报告可提高综合应用设计能力,培养独立分析问题和解决问题的能力。2课程设计的内容及任务(1)可产生频率可调的正弦波( 64 个点)、方波、锯齿波或三角波。(2)显示出仿真波形。(3)通过按键选择输出波形的种类。(4)在此基础上使输出波形的幅值可控。第 0 页共 31 页3.课程设计说明书编写要求( 1)设计说明书用 A4 纸统一规格,论述清晰,字迹端正,应用资料应说明出处。( 2)说明书内容应包括(装订次序):题目、目录、正文、设计总结、参考文献 等。应阐述整个设计内容,要重点突出,图文并茂,文字通畅。(3) 报告内容应包括 方案分析 ;方案对比 ;整体设计论述 ;硬件设计 (

3、电路接线,元 器件说明,硬件资源分配 ) ;软件设计 (软件流程,编程思想,程序注释,) 调试结果 ;收获与体会 ;附录 (设计代码放在附录部分,必须加上合理的注释)(4)学生签名:2015年 1 月 16 日课程设计 (论文) 评审意见(1)总体方案的选择是否正确;正确()、较正确( )、基本正确()(2)程序仿真能满足基本要求;满足()、较满足( )、基本满足()(3)设计功能是否完善;完善( 完善()、较完善( )、基本完善()(4)元器件选择是否合理;合理()、较合理( )、基本合理()(5)动手实践能力;强()、较强( )、一般()(6)学习态度;好()、良好( )、一般()(7)基

4、础知识掌握程度;好()、良好()、一般()(8)回答问题是否正确;正确(确( )、较正确( )、基本正确( )、不正(9)程序代码是否具有创新性; 全部()、部分( )、无( )(10)书写整洁、条理清楚、格式规范;规范()、较规范()、一般()总评成绩 优( )、良( )、中()、及格()、不及格()评阅人 :年月第 3 页 共 31 页简易信号发生器摘要: 这次课设的主要目的自己动手做一个可以实现简易信号发生器的设计,在设 计中考虑到波形可以在一定范围里的频率和幅值的调整和不同波形的变换,可以准 确地将信号在示波器中显示出来。信号发生器应用广泛 ,种类繁多 ,性能各异 ,分类也不尽一致。

5、按照频率范围分类 可以分为:超低频信号发生器、低频信号发生器、视频信号发生器、高频波形发生 器、甚高频波形发生器和超高频信号发生器。 按照输出波形分类可以分为 : 正弦信号 发生器和非正弦信号发生器。非正弦信号发生器又包括:脉冲信号发生器、函数信 号发生器、扫频信号发生器、数字序列波形发生器、图形信号发生器、噪声信号发 生器等。按照信号发生器性能指标可以分为一般信号发生器和标准信号发生器。前 者指对输出信号的频率、幅度的准确度和稳定度以及波形失真等要求不高的一类信 号发生器。 后者是指其输出信号的频率、 幅度、 调制系数等在一定范围内连续可调 并且读数准确、稳定、屏蔽良好的中、高档信号发生器。

6、此次的简易信号发生器的设计,将采用单片机编程方式,通过数模转换来实现 正弦波、三角波、锯齿波、方波的输出。在程序运行中,当接收到来自外界的命令 可按实际的需要调整信号波的频率幅值及波形, 需要输出某种波形时再调用相应的中断服务子程序和波形发生程序 ,经电路的数 / 模转换器和运算放大器处理后 ,从信 号发生器的输出端口输出。目录一、 总体方案论述 61.1 任务分析 61.2 方案对比 61.3 系统总设计 6二、硬件电路 72.1 主控电路 72.2 按键电路 72.3 显示电路 8三、软件设计 113.1 正弦波 113.2 方波 133.3 锯齿波 143.4 三角波 153.5 延时程

7、序 163.6 总程序 17四、 系统调试结果 184.1Keil 软件调试应用 184.2Proteus 软件仿真过程 18第 4 页 共 31 页4.3 仿真结果 19五、 总结与体会 245.1 收获与体会 245.2 不足与改进 24附录 25参考文献 30第 5 页共 31 页、总体方案论述1.1 任务分析( 1)可产生频率可调的正弦波( 64 个点)、方波、锯齿波或三角波。我们设 想将频率可调功能通过按键来显示,正弦波、方波、锯齿波或三角波可以用单片机 汇编语言程序写出并通过数模转换显示出来。(2)显示出仿真波形。通过片外数模转换显示。( 3)通过按键选择输出波形的种类。 可设置外

8、部中断使得通过按键来从容地切 换各种波形。(4)在此基础上使输出波形的幅值可控。可通过按键来实现。1.2 方案对比在设计的过程中,我们产生了如下方案: 方案一:用四个按键来代表四个波形,然后用四个按键来代表各自波形的调频 功能,再用四个按键来代表各自波形的调幅功能。方案二: 用四个按键来代表四个波形, 然后用一个按键来控制四个波形的频率, 再用一个按键来控制除正弦波外其他波形的幅值。通过比较两个方案,方案一器件较多,连线繁琐,方案二较方案一简单,也降 低了写代码的难度。由于正弦波本身的特殊性,此次设计我们放弃了对正弦波幅值 的调控。1.3 系统总设计调幅按键四个波形按键输入单片机输出D/A 转

9、换器调频按键输出波形第 7 页 共 31 页图 1.3.1 系统总图总体设想是:将调频按键、调幅按键、波形按键作为输入信号输入到单片机内来调用各自的程序通过 D/A 转换器显示出来。、硬件设计2.1 主控电路P3.2 即外部中将总中断 EA 接高电平,将四个波形按键通过四端输入与门接入 断 0 ,说明此次程序设计我们要用到外部中断 0 了。图 2.1.1 主控电路图2.2 按键电路由图可知,正弦波按键、方波按键、三角波按键、锯齿波按键分别接入单片机 的 P2.1 、P2.2、P2.3 、P2.4,当按下去时对应的接口为低电平,即当检测到某个接 口为低电平时,就调用对应的波形程序。调幅按键、调频

10、按键分别接入单片机的 P2.6、P2.5 ,当按下去时对应的接口为低电平,即当检测到某个接口为低电平时, 就调用对应的调幅调频程序。图 2.2.1 按键电路图2.3 显示电路图 2.3.1 显示电路图第 11 页共 31 页DAC0832芯片简介:(1)DAC0832的特性DAC0832 是采用 CMOS/Si-Cr 工艺制作而成的 8 位 D/A 转换器。它可直接与 AT89C51单片机相连,其主要特性如下: 分辨率为 8 位。 电流输出,建立时间为 1s 。 可双缓冲输入、单缓冲输入或直接数字输入。 单一电源供电( +5+15V)。 低功耗, 20mW。(2)DAC0832的内部结构及外部

11、引脚DAC0832有一个 8位输入寄存器、 一个 8位 DAC寄存器和一个 8位 D/A转换器 3 个部分组成,它的两个寄存器实现了输入数据的两级缓冲, D/A 转换器采用 E-2RT 形电阻网络。DAC0832的内部结构如图 2.3.2 所示。“8 位输入寄存器” 用于存放单片机送来 的数字量,由 LE2控制;“8位D/A转换器”受“ 8位DAC寄存器”输出的数字量控 制,能输出和数字量成正比的模拟电流。因此,DAC0832 通常需要外接有运算放大器 组 成 的 I/V 转 换 电 路 , 才 能 得 到 模 拟 输 出 电 压 。图 2.3.2DAC0832采用的是双列直插式封装,其引脚布

12、置如图2.3.3 所示,其各引脚的功能如下。DI0DI7 : 8 位数字信号输入端,可与单片机的数据总线PO口相连,用于接收单片机送来的待转换为模拟量的数字量。CS:片选端,当 CS为低电平时,本芯片被选中。ILE :数据锁存允许端, 高电平有效。WR1:第一级输入寄存器写选通控 制端,低电平有效,当 CS=0,ILE=1 , WR1=0时, 待转换的数据信号被锁存 到第一级 8 位输入寄存器中。WR2:DAC寄存器写选通控制端, 低电平有效。当 XFER=0, WR2=0时, 输入寄存器中待转换的数据传入 8 位 DAC寄存器中。XFER:数据传送控制信号,低电 平有效。在 XFER和 WR

13、2都有效时, LE2 上产生正脉冲, LE2 的负跳变将输入 寄存器内容打入 DAC寄存器。图 2.3.3VREF: 基准电压输入,它与 DAC内的电阻网络相连。 VREF可在+10V范围内调节。IOUT1:D/A 转换器电流输出 1端,输入数字量全为 1 时, IOUT1最大;输入数 字量全为 0时, IOUT1最小。IOUT2:D/A 转换器电流输出 2端, IOUT2+IOUT1=常数。Rfb :外部反馈信号输入端,内部已有反馈电阻Rfb,根据需要也可外接反馈电阻。 VCC:电源输入端。 DGND:数字信号地。AGND:模拟信号地,最好与基准电压共地。 本次使用的单缓冲方式。如图2.3.

14、4 所示,由于 DAC0832的 CS和 XFER都与 P2.0 相连,故 DAC0832 的输入寄存器和 DAC寄存器地址都 为 FEFFH。而 WR1 和 WR2 同时与 AT89C51 的 WR引脚相连,因此, AT89C51 单片机指向如下两条指令 就可在 CS和 XFER上同时产生低电 平信号,并在 WR1和 WR2端同时得 到来 自 WR的负脉 冲,进 而是 DAC0832接收 AT89C51送来的数字量。图 2.3.4MOV DPTR,#0FEFFH ;DAC 端口地址 FEFFH DPTR MOV DPTR,A ; 启动 D/A 转换。三、软件设计3.1 正弦波通过 64个 1

15、6进制的立即数所组成的点来显示正弦波形,这 64个点可通过查表正弦波表方式获取。第 39 页 共 31 页累加器 A外部地址正弦波图 3.1.1正弦波程序流程图查表/ 定义 DAC0832地址/ 读数据正弦波程序:ZX: MOV R3,#00HLOOP0:MOV A,R3MOV DPTR,#TABLE / MOVC A,A+DPTR MOV DPTR,#0FEFFH MOVX DPTR,AINC R3CJNE R3,#255,LOOP0MOV R3,#00HAJMP ZX/ 产生正弦波代码TABLE:DB080h,083h,086h,089h,08ch,090h,093h,096h,099h,

16、09ch,09fh,0a2h,0a5h ,0a8h,0abh,0aehDB0b1h,0b3h,0b6h,0b9h,0bch,0bfh,0c1h,0c4h,0c7h,0c9h,0cch,0ceh,0d1h,0d 3h,0d5h,0d8hDB0dah,0dch,0deh,0e0h,0e2h,0e4h,0e6h,0e8h,0eah,0ebh,0edh,0efh,0f0h,0f 1h,0f3h,0f4hDB0f5h,0f6h,0f8h,0f9h,0fah,0fah,0fbh,0fch,0fdh,0fdh,0feh,0feh,0feh,0f fh,0ffh,0ffhDB0ffh,0ffh,0ffh,0f

17、fh,0feh,0feh,0feh,0fdh,0fdh,0fch,0fbh,0fah,0fah,0f9h,0f8h,0f6hDB0f5h,0f4h,0f3h,0f1h,0f0h,0efh,0edh,0ebh,0eah,0e8h,0e6h,0e4h,0e2h,0e 0h,0deh,0dchDB0dah,0d8h,0d5h,0d3h,0d1h,0ceh,0cch,0c9h,0c7h,0c4h,0c1h,0bfh,0bch,0b9h,0b6h,0b3hDB0b1h,0aeh,0abh,0a8h,0a5h,0a2h,09fh,09ch,099h,096h,093h,090h,08ch,08 9h,08

18、6h,083hDB080h,07dh,07ah,077h,074h,070h,06dh,06ah,067h,064h,061h,05eh,05bh,0 58h,055h,052hDB04fh,04dh,04ah,047h,044h,041h,03fh,03ch,039h,037h,034h,032h,02fh,02 dh,02bh,028hDB026h,024h,022h,020h,01eh,01ch,01ah,018h,016h,015h,013h,011h,010h,00 fh,00dh,00chDB00bh,00ah,008h,007h,006h,006h,005h,004h,003h,

19、003h,002h,002h,002h,0 01h,001h,000hDB000h,000h,001h,001h,002h,002h,002h,003h,003h,004h,005h,006h,006h,007h,008h,00ahDB00bh,00ch,00dh,00fh,010h,011h,013h,015h,016h,018h,01ah,01ch,01eh,02 0h,022h,024hDB026h,028h,02bh,02dh,02fh,032h,034h,037h,039h,03ch,03fh,041h,044h,04 7h,04ah,04dhDB04fh,052h,055h,058

20、h,05bh,05eh,061h,064h,067h,06ah,06dh,070h,074h,077h,07ah,07dh3.2 方波分别设大数值和小数值作为方波的上限电平数值和下限电平数值,并分别延时 段时间,就形成方波。 -图 3.2.1 方波程序流程图方波程序:FB:MOV DPTR,#0FEFFHMOV A,#0CCHMOVXLCALLMOV A,#5/ 方波高电平幅值DPTR,AD200US / 延时/ 方波低电平幅值MOVX DPTR,ALCALLD200US / 延时AJMPFB3.3 锯齿波输入数字量从 0 开始,逐次加1 进行 D/A 转换。当A)等于某个值时,将( A)清锯

21、齿波程序:JUC: MOV R3,#00HLOOP11:MOV A,R3MOV DPTR,#0FEFFHMOVX DPTR,AINC R3/ 与最高值比较MOV A,R3CJNE A,#0FFH,LOOP11AJMP JUC3.4 三角波输入数字量从 0开始,逐次加 1进行 D/A转换。当( A)等于指定值时,逐次减图 3.4.1 三角波程序流程图三角波程序:SJ: MOV R3,#00HLOOP6:MOV A,R3MOV DPTR,#0FEFFHMOVX DPTR,AINC R3MOV A,R3CJNE A,#0FFH,LOOP6 / 与给定值比较LOOP9:DEC R3MOV A,R3MO

22、V DPTR,#0FEFFHMOVX DPTR,ACJNE R3,#00H,LOOP9/ 与最小值比较AJMP SJ3.5 延时程序延时 200S计算式: 1+1+(50*2+2) *2=206程序:D200US:MOV R1,#2 /200 s 延时 MOV R2,#50L5: DJNZ R2,$DJNZ R1,L5RET延时 50S计算式: 1+1( 23*1+1 ) *2=50程序:D50US:MOV R1,#1 /50 s 延时 MOV R2,#23L6: DJNZ R2,$DJNZ R1,L6RET3.6 总程序否检测按下的按键是输出调频后的波形调频按 键是否 按下开始按下波形按键产

23、生外部中断检测按下的按键输出对应的波形输出调幅后的波 形是否按下其他波形按键否图 3.6.1 总程序流程图程 序 : 见调幅按键是 否按下附录四、系统调试结果4.1Keil 软件调试应用1、图 4.1.1图 4.1.2因为 SJMP JUC在第 26行, JUC程序在第 102 行,超出了 SJMP所执行的地址范围。 改正:将 SJMP改为 LJMP。2、设置函数的标号时,由于整个程序设置的标号数量比较多,则经常会出现设置标号错误或者设置重复的问题,使得调试的结果无法达到自己预先设计好的结果执 行。3、指令代码的输入格式错误, 在编程的过程中, 写了一句指令。 CJNEA ,R7,LOOP11

24、, 编译时报错,出现“ EXPRESSION TYPE DOES NOT MATCH INSTRUCT”IO。N则表明所 写指令的格式发生错误。4.2Proteus 软件仿真过程调出元器件:序号元器件名称元器件型号数目1单片机芯片AT89C5112数模转换器DAC083213单刀单掷开关24复位开关45示波器16电阻5k87四端输入与门74LS2118运算放大器UA7411表 4.2.1按照原理图画出芯片、接线。可确图 4.2.1 接入代码:在 Keil 上运行代码, 代码运行无误会生成 HEX文件,然后再 protues 上双基单片机模型,会弹出一个如下对话框。点击文件按钮,选择所需要的程序

25、文 件( .HEX)。选择合适的工作频率即 认。然后运行调试4.3 仿真结果正弦波正常波形:正弦波调频后的波形:图 4.3.2方波正常波形:图 4.3.3方波调频后波形:图 4.3.4方波调幅后波形:图 4.3.5三角波正常波形:图 4.3.6三角波调频后波形:图 4.3.7三角波调幅后波形:图 4.3.8锯齿波正常波形:锯齿波调频后波形:图 4.3.9图 4.3.10锯齿波调幅后波形:图 4.3.11五、总结与体会5.1 收获与体会这次单片机课设历时数天,我们选的课题是简易信号发生器。可以说是呕心沥 血,苦尽甘来。但是这让我们学到了很多东西,巩固了以前的知识,特别是汇编语 言的使用,以前上课

26、的时候对汇编语言一知半解,但通过此次课设之后,我对汇编 语言的了解更深了,运用更加熟练了。通过本次课设,锻炼了自己独立设计程序的能力。在本次课程设计中,我们很 重视功能的划分和各个模块之间的联系,分成了多个模块,即三角波、正弦波、锯 齿波、方波模块,这样便于程序的检测和修改。通过本次课设,使我们懂得了理论与实际的结合是很重要的。只有把理论知识 和实践相结合,才能真正为社会服务,从而提高自己的实践动手能力和独立思考能 力。谢谢老师给我们这一个宝贵的锻炼的机会。5.2 不足与改进此次简易信号发生器的设计最终所显示出来的效果总体能满足老师的要求,但 是还是有点瑕疵和遗憾,首先由于时间的紧迫和正弦波本

27、身的特性,我们没能实现 对正弦波调幅的功能。此前我们曾经想过将正弦波的表里面的值修改一下,但出来 的正弦波形已然失真,于是乎被迫放弃,对于改进此类问题,我们想过重新制作一 个正弦波的表,其幅值与之前的正弦波的表不一样,便可实现正弦波的调幅功能, 但制作这张表涉及大量计算,迫于时间压力,所以这一块我们被迫放弃。至于其他 方法,我们目前没有想出来,甚是遗憾。除此之外,我们对调幅调频的值有其他的想法:可以增加调频或调幅的值,我 们设想通过查表的方法使调出更多的幅值和频率,但由于我们担心如果这样写将增 加代码量,调试过程中会出现技术性问题,所以被迫放弃。不过总体来说,我们所设计的简易信号发生器实现了老

28、师所指定的功能,还是 值得欣慰的。附录:ORG 0000H LJMP MAIN ORG 0003H LJMP INT01 ORG 0030H MAIN: MOV P0,#0FFHMOV SP,#60H ; ZC : MOV R6,#01H MOV R7,#0FH CLR IT0 SETB EX0 SETB EASTART:CJNE R7,#00H,LLL0 SJMP ZX SJMP START LLL0: CJNE R7,#01H,LLL1 SJMP FB SJMP START LLL1: CJNE R7,#02H,LLL2 SJMP SJ SJMP START LLL2: CJNE R7,#

29、03H,LLL3 LJMP JUC LLL3: SJMP START; 主程序; 给 P0 口高电平 设置堆栈指针; 外部中断设置为低电平触发 开启外部中断 0; 开启总中断; 确保每个波形能够循环输出INT01: ; 产生外部中断 0,检测对应的按钮输出对应的波形 JB P2.1,LL0MOV R7,#00H SJMP LL3LL0: JB P2.2,LL1MOV R7,#01HSJMP LL3LL1: JB P2.3,LL2MOV R7,#02HSJMP LL3LL2:JB P2.4,LL3MOV R7,#03HSJMP LL3LL3:RETIZX:MOV R3,#00H ;产生正弦波LO

30、OP0:MOV A,R3MOV DPTR,#TABLE; 查表MOVC A,A+DPTRMOV DPTR,#0FEFFH; 定义 DAC0832地址MOVX DPTR,A; 读数据INC R3JB P2.5,LOOP1; 正弦波调频LCALL D50USLOOP1:CJNE R3,#255,LOOP0MOV R3,#00HCJNE R7,#00H,START; 检测键是否按下AJMP ZXFB:MOV DPTR,#0FEFFH产; 生方波JB P2.6,LOOP2 ; 检测调幅按钮调幅SJMP LOOP3LOOP2: MOV A,#055HMOV A,#0CCH ; 方波高电平幅值 1LOOP

31、3:MOVX DPTR,ALCALL D200US ; 延时JB P2.5,LOOP4 ; 方波前半周期调频LCALL D200USLOOP4:MOV A,#5 ; 方波低电平幅值; 方波高电平幅值 2MOVXLCALLDPTR,AD200US ; 延时JB P2.5,LOOP5 ; 方波后半周期调频LCALLD200USLOOP5:CJNER7,#01H,STARTAJMPFB检测键是否按下SJ: MOV R3,#00H; 产生三角波 LOOP6: MOV A,R3MOV DPTR,#0FEFFH MOVX DPTR,AINC R3; 波形上升MOV A,R3JBP2.5,LOOP7 ; 三

32、角波前半周期调频LCALL D50USLOOP7: JB P2.6,LOOP8 ; 三角波调幅CJNE A,#0FFH,LOOP6 ; 幅值 1 SJMP LOOP9LOOP8: CJNE A,#055H,LOOP6 ; 幅值 2LOOP9: DEC R3 ; 波形下降 JB P2.5,LOOP10 ; 三角波后半周期调频 LCALL D50USLOOP10: MOV A,R3MOV DPTR,#0FEFFH MOVX DPTR,A CJNE R3,#00H,LOOP9CJNE R7,#02H,SJOUT ; 检测键是否按下 AJMP SJSJOUT: LJMP STARTJUC:MOV R3

33、,#00H; 产生锯齿波LOOP11: MOV A,R3MOV DPTR,#0FEFFHMOVX DPTR,A波形上升锯齿波调频锯齿波调幅幅值 1; 幅值 2检测键是否按下INC R3 ; MOV A,R3 JB P2.5,LOOP12 LCALL D50US LOOP12: JB P2.6,LOOP13CJNE A,#0FFH,LOOP11SJMP LOOP14 LOOP13: CJNE A,#055H,LOOP11 LOOP14: CJNE R7,#03H,JUCOUTAJMP JUCJUCOUT: LJMP STARTD200US: MOV R1,#2 ;200 s 延时MOV R2,#

34、50L5: DJNZ R2,$DJNZ R1,L5RETD50US: MOV R1,#1 ;50 s 延时MOV R2,#23L6: DJNZ R2,$DJNZ R1,L6RETTABLE:DB 080h,083h,086h,089h,08ch,090h,093h,096h,099h,09ch,09fh,0a2h,0a5h,0a8h,0a bh,0aeh ; 产生正弦波代码DB0b1h,0b3h,0b6h,0b9h,0bch,0bfh,0c1h,0c4h,0c7h,0c9h,0cch,0ceh,0d1h,0d3h,0d 5h,0d8hDB0dah,0dch,0deh,0e0h,0e2h,0e4h,0e6h,0e8h,0eah,0ebh,0edh,0efh,0f0h,0f1h,0f 3h,0f4hDB 0f5h,0f6h,0f8h,0f9h,0fah,0fah,0fbh,0fch,0fdh,0fdh,0feh,0feh,0f

温馨提示

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

评论

0/150

提交评论