占空比可调方波发生器_第1页
占空比可调方波发生器_第2页
占空比可调方波发生器_第3页
占空比可调方波发生器_第4页
占空比可调方波发生器_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

1、燕山大学课 程 设 计 说 明 书题目: 低通FIR滤波器设计与应用学院(系): 电气工程学院年级专业: 10级精仪二班学 号: 学生姓名: 王舟济 指导教师: 孟 宗 教师职称: 副教授 电气工程学院课程设计任务书院(系):电气工程学院 基层教学单位:仪器科学与工程系 学号学生姓名王舟济(专业)班级精仪二班设计题目方波发生器设计技术参数设计一个以单片机为核心的方波发生器,通过键盘可以改变方波的占空比和频率,并显示波形的频率设计要求设计键盘输入电路、波形的输出电路、显示电路(4位数码管);编制相应的程序 工作量设计的内容满足课程设计的教学目的与要求,设计题目难度和工作量适合学生的知识和能力状况

2、,工作量饱满。工作计划查阅资料进行设计准备、设计硬件电路、编制程序,编制程序、验证设计、撰写任务书参考资料单片微型计算机接口技术及其应用 张淑清 国防工业出版社单片机原理及其应用技术 张淑清 国防工业出版社单片机应用技术汇编指导教师签字基层教学单位主任签字说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。 年 月 日目录摘要.第1章 绪论.1.1设计内容.1.2设计基本要求.第2章 总体方案论证与设计.2.1方案论述.2.2方波发生器的硬件组成框图.第3章方波发生器原理. 3.1方波发生器的原理与功能. 3.2键盘控制原理. 3.3程序框图. 3.4方波波形显示. 第4章 系统硬件

3、设计 . 4.1最小单片机系统.4.2小键盘接口电路.4.3LED显示电路. 4.4八段数码管原理.第5章 系统软件设计.5.1主程序.5.2系统初始化子程序.5.3显示子程序.5.4键盘扫描程序.5.5定时中断子程序. 5.6汇编总程序.第6章 系统调试与测试结果分析.6.1硬件调试.6.2软件调试.结 论.参考文献.附录:仿真效果图摘 要随着大规模集成电路技术和计算机技术的飞速发展,把计算机的运算器和控制器(即CPU)、存储器和多种接口集成在一块芯片上而成的芯片为单片机。单片机问世20年来,发展速度之迅猛,应用范围之广泛是以往任何技术都无法比拟的。单片机作为嵌入式微控制器其应用很普及。近十

4、几年来,单片机在生产过程控制、自动检测、数据采集与处理、科技计算、商业管理和办公室自动化等方面获得了广泛应用。本设计是一个以单片机为核心的方波发生器,通过对键盘输入电路、波形的输出电路、显示电路的设计已经程序的编程,实现通过键盘改变方波占空比和频率,并显示波形频率的功能。关键字:单片机、法波发生器、频率、占空比第一章 绪论单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等

5、广大领域。单片机有两种基本结构形式:一种是在通用微型计算机中广泛采用的,将程序存储器和数据存储器合用一个存储器空间的结构,称为普林斯顿结构。另一种是将程序存储器和数据存储器截然分开,分别寻址的结构,一般需要较大的程序存储器,目前的单片机以采用程序存储器和数据存储器截然分开的结构为多。 本课题讨论的方波发生器的核心是目前应用极为广泛的 51系列单片机。1.1 设计内容本课程设计是设计一个方波发生器,用4位数码管显示方波的频率。1.2 设计基本要求频率可调,用一个变阻器来调整波形的频率,频率调节范围为20Hz2000Hz;占空比可调,采用两个按键来实现增加、减小波形的占空比作用,占空比调节步长为1

6、%,即每按键一次,占空比增加或减少1%。占空比用另外两位数码管显示。系统上电时频率依变阻器的阻值设定,占空比设定为50%。而我们在此设计的方波发生器与要求要设计的有点区别,所设计的频率调节范围为1Hz15000Hz,以调节变阻器的阻值来实现频率的调节相对来说要麻烦些。因此,频率也使用按键来进行调节,不同的频率及占空比可以使用不同的按键来实现,而以键盘扫描来实现各键的不同功能;显示部分可以使用ZLG7290芯片及数码管来实现。由此即可构成一个最小单片机应用系统。第2 章 总体方案论证与设计在电子技术领域中,实现方波发生器的方法有很多种,可以采用不同的原理及器件构成不同的电路,但可以实现相同的功能

7、。在此次设计中,有些地方与课题原本的具体要求有点不同。如实现频率调节时,不是按要求利用调整变阻器的阻值来完成的,而是用按键来实现的。2.1 方案论述基于MCS51单片机8051芯片所设计的可以实现键位与数字动态显示的一种频率,占空比可调方波发生器。设四位数码管显示频率范围为1HZ-9999HZ,可任意取1HZ、10HZ、100HZ等值,占空比任意取10%,20%,40%,50%,80%等值。通过对键盘上按键的操作完成对所取频率值,占空比的调用,以达到改变当前频率值,占空比的目的,并使用其八段数码管显示。单片机对键位进行扫描,确定键位的输入,根据程序设计要求,数码管显示频率以及占空比改变后当前的

8、数值,方波发生器输出以数码管显示的数值为频率的方波。基于以上思路,可进行如下功能扩展:由于伟福2000仿真实验箱共有6位数码管,显示频率只用其中4位,可使用余下2位进行占空比显示。设计思路同频率显示,可选定占空比10、20、50等值,通过键盘上的两个按键顺序调换所选取的占空比值,实现占空比的可调控改变。键盘可采用4*4的键盘,但是只选取选取其中的4个按键,其功能分别为:频率顺向增大、频率逆向减小、占空比顺向增大、占空比逆向减小。按键每按下一次,当前频率或占空比转向下一选定的频率或占空比值。单片机通过输出方波控制一个数码管的显用,该数码管显示当前所调换到的频率及占空比,并把该数值当做方波发生器的

9、输入频率及输入占空比。单片机控制该方波发生器以该数值作为频率和占空比显示方波,从而得到我们想要频率及占空比的方波。最后,可采用示波器观察方波波形。2.2方波发生器的总体硬件组成框图简单的流程为:主程序扫描键盘,将设置信息输入,处理后,输出到LED显示器显示。单片机用到了两个定时器,即定时器0与定时器1,分别进行频率与占空比的定时,两个定时器都是工作在方式1。计算定时器初值的公式如下: X = 2N - FOSC/12 × T根据计算定时器初值的公式,计算出定时器0与定时器1所要装入的初值。频率及占空比的显示电路由74374和74245构成的驱动电路和LED数码显示管组成,利用六个数码

10、管来显示,有四位是用来显示频率的,有两位是显示占空比的。此电路的键盘由四个功能键(调节频率与占空比的增减)组成,其特殊之处在于利用外部中断实现键盘扫描。功能键有两种种状态,一种为正顺序调换,根据所取值顺向增大的特点,此时为增大调节;另一种为逆顺序调换,同理,此时为减小调节。频率和占空比各有一组增大及减小的功能键。键盘单片机89S52LED 显 示频率与占空比数据频率与占空比数据图2-1 方波发生器原理框图第3章 方波发生器原理3.1、方波发生器的原理与功能方波发生器的总体原理方框图如下图所示:由于系统的要求不高,比较单一,再加上我们是通过定时器来调节频率的,这样仅用键盘、8051芯片及数码显示

11、管便可完成设计,达到所要求实现的功能。3.2键盘控制原理通过键盘的控制,可以实现频率和占空比的变化。本设计仅仅选用四个数码管显示频率,并增加了后两个数码管显示占空比的功能。其中,用NEXT键和LAST键控制频率的变化,每按一下NEXT键频率就按着 的顺序正向变化到下一个数值;每按一下LAST键,频率就反向变化到另一个数值。C键和D键控制占空比的变化:每按一下C键,数码管上的显示数字就按照 的顺序正向变化一个数字,每按一下D键,数字就反向变化。其对应关系如表1所示:表1频率-占空比-按键对照表频率占空比NEXTLASTCD+上_下+上_下3.3程序框图初始化后单片机产生初值,将初值以动态扫描的方

12、式显示于八段数码管 ,同时还对键盘进行实时扫描。在扫描后,单片机读取键值,并将键值通过数码管模块显示出来,方波发生器输出该频率,占空比的方波. 表2频率(HZ)-程序代码对照表编辑代码100H00H06H3FH显示频率1(HZ)0010编辑代码200H00H5BH3FH显示频率2(HZ)0020编辑代码300H00H6DH3FH显示频率3(HZ)0050编辑代码400H06H3FH3FH显示频率4(HZ)0100表3 占空比(%)-代码对照表编辑代码15BH3FH显示占空比(%)20编辑代码266H3FH显示占空比(%)40编辑代码36DH3FH显示占空比(%)50编辑代码47DH3FH显示占

13、空比(%)60编辑代码57FH3FH显示占空比(%)803.4方波波形显示 图1 频率100HZ,占空比50%图2 频率100HZ,占空比80%图3 频率100HZ,占空比20% 第4章 系统硬件设计4.1最小单片机系统单片机各功能部件的运行都是以时钟频率为基准的,有条不紊地进行工作。因而时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路方式有两种:一种是内部时钟方式,一种是外部时钟方式,这里采用的是内部时钟方式,外接晶振。时钟电路由片外晶体、微调电容和单片机的内部电路组成。选取频率为11.0592MHz的晶振,微调电容是瓷片电容。89S52单片机的P0.

14、7口作为波形输出口,若接示波器,则可通过示波器来观察波形,是一个矩形波。图3-1 单片机最小系统此单元电路包括时钟电路、复位电路,具体电路如图所示:4.2小键盘接口电路方案一:独立式键盘一个具有4个按键的独立式键盘,每一个按键的一端都接地,另一端接MEGA16的I/O口。独立式键盘每一按键都需要一根I/O线,占用MEGA16的硬件资源较多。因此独立式键盘只适合按键较少的场合。键盘是一组按键或开关的集合,键盘接口向计算机提供被按键的代码。特点:使用方便、结构复杂、成本高。方案二:矩阵式键盘我们采用4×4矩阵式键盘,键盘的行线X0X3通过电阻接+5V,当键盘没有键闭合时,所有的行线和列线

15、断开,行线X0X3均呈高电平,如下图:图52键盘控制LED连接原理图为了节省I/O口,使我们的设计能够顺利进行,我们选用方案二矩阵连接式键盘。为了能够较为简单的编程,和节省CPU的资源,我们采用定时扫描,每隔一段时间,CPU对键盘扫描一次,并将键值读入。扫描法是在判定有键按下后逐列(或行)置低电平,同时读入行(或列)状态,如果行(或列)状态出现非全1状态,这时与状态行,列交叉点的键就是所按下的键。扫描发的特点是逐列(或行)扫描查询。这时,相应的行(或列)应有上拉电阻接高电平。当键盘上某一键闭合时,该键所对应的行线与列线短路,此时该行线的电平将由被短路的列线电平所决定。如果将行线接至单片机的输入

16、端口,列线接至单片机的输出端口,则在单片机的控制下使列线Y0为低电平,其余三根列线Y1、Y2、Y3均为高电平,然后单片机读输入口状态(即键盘行线状态),若X0、X1、X2、X3均为高电平,则Y0这一列上没有键闭合,如果读出的行线状态不全为高电平,则为低电平的行线和Y0相交的键处于闭合状态。如果Y0这一列没有键闭合,紧接着使列线Y1为低电平,其余列线为高电平,用同样的方法检查Y1这一列有无键闭合,如此类推。CPU对键盘的扫描可以采取程序控制的随机方式,CPU空闲时才扫描键盘;也可以采取定时控制方式,每隔一段时间,CPU对键盘扫描一次;还可以采用中断方式,当键盘上有键闭合时,向CPU请求中断,CP

17、U响应键盘发出的中断请求,对键盘进行扫描,以识别哪一个键处于闭合状态,并对键输入信息作相应处理。 图3-2 小键盘接口电路4.3 LED显示电路方案一: 静态显示方式静态显示方式是指当显示器显示某一字符时,七段数码管的每段发光二极管的位选始终被选中。在这种显示方式下,每一个LED数码管显示器都需要一个8位的输出口进行控制。静态显示主要的优点是显示稳定,在发光二极管导通电流一定的情况下显示器的亮度大,系统运行过程中,在需要更新显示内容时,CPU才去执行显示更新子程序,这样既节约了CPU的时间,又提高了CPU的工作效率。其不足之处是占用硬件资源较多,每个LED数码管需要独占8条输出线。随着显示器位

18、数的增加,需要的I/O口线也将增加。方案二: 动态显示方式所谓动态显示,就是单片机定时地对显示模块件扫描。在这种方法中,显示模块件分时工作,每次只能有一个器件显示。但由于人视觉的暂留现象,所以仍感觉所有的器件都在显示。如许多单片机的开发系统及仿真器上的6位显示模块即采用这类显示方法。此种显示方法的优点是使用硬件少,因而价格低。但它占用机时长,只要单片机不执行显示程序,就立刻停止显示。由此可见,这种显示将使计算机的开销增大。由于8051单片机本身提供的I/O口有限,因此我们选择方案二动态扫描方式。扫描方式中在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的约1MS,尽管实际上各位显示器并非同

19、时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。节约了电能,节省 了I/O口4.4八段数码管原理数码管内部由8个发光发光二极管组成,排成一个8字,可以组成0到9数字以及A-F字符的表示形式。 图5-3.八段数码管引脚图 图5-4.八位数码管原理图表2 显示数字及其所对应的代码显示数字1234程序输入数06H5BH4FH66H显示数字5678程序输入数6DH7DH07H7FH显示数字90AB程序输入数6FH3FH77H7CH显示数字CDEF程序输入数39H5EH79H71H第5章 系统的软件设计软件是该LED显示屏控制系统的重要组成部分,在系统的软件设计中我们也才

20、用了模块化设计,将系统的各部分功能编写成子模块的形式,这样增强了系统软件的可读性和可移植性。5.1 主程序主程序包括系统初始化及显示程序,是一个死循环系统。其流程图如图所示:开始系统初始化显示图4-1 主程序流程图5.2 系统初始化子程序在此程序中,给所有变量赋初值,有键盘扫描口、选择串行口工作方式SCON、状态标志位flag、初始频率与占空比及其定时、定时器0与定时器1的工作方式等。初始化时启动了定时器0与定时器1。5.3显示子程序利用分离频率的各位数值,将各位数值分别显示出来。在程序中利用了频率显示的高位灭零的方法以致最高位为0时就不显示,以致显示效果美观化。一共有五位是显示频率的,若频率

21、小于10000时,则万位不显示;若频率小于1000时,则万位与千位都不显示,依次类推。占空比的显示规律与频率的一样。显示子程序流程图如图4-2所示:显示子程序入口分离频率和占空比的各位数字高位灭零处理查表,串口发送各位数字字型码软件延时结束图4-2 显示子程序流程图5.4 键盘扫描程序键盘扫描用外中断0实现,采用的是线反法,键盘扫描码采用逐行扫描的方法。关于键盘扫描程序的说明:频率可调时,占空比保持原状不变,反之亦然,只能进行单一变量的调节,状态标志flag的初始值为0。(1)频率调节: i=0时,按键为状态键,此时flag加1,即flag=1,此时进行频率的调节。可以进行加1Hz、减1Hz、

22、加100Hz、减100Hz操作,分别由1号键、2号键、3号键、4号键控制。如果按住某个键不放,便会执行连续加值或减值操作。这里的频率的最大值为15000Hz,当频率增至最大值时,还按增值键,此时频率会自动跳到1Hz开始继续增加。同理,频率的最小值为1Hz,当减频率减至最小值时,再按减频率键,则频率会跳到15000Hz。 (2)占空比调节: 当状态值flag=2时,此时频率保持不变,进行占空比调节。只可进行加1与减1操作,分别由1号键、2号键控制。要注意的是占空比的初值是50,我们定义的ZKB为50(百分比的分子部分,为一整数),故调节占空比时,ZKB会进行加1,减1操作。ZKB的最大值为99,

23、当增到最大值时,便会返回到值1,如此循环。(3)为了减轻单片机的工作量,在软件设计中采取了这样的措施,在修改参数确定后才进行定时器初值TC0、TC1的计算。键盘中断处理子程序流程图与键处理流程图分别如图4-3、图4-4所示:图4-3 键盘中断处理子程序流程图YNEA=0软件延时消抖外部中断0入口键盘扫描,得到键码查表取键值i实时显示键盘口初始化EA=1结束键处理是否为抖动NYi=1 ZKB+i=2 ZKB-边界处理Flag=2?NYi=0?Flag+=1键处理 Yi=3 PL+=100i=4 PL-=100i=2 PL-i=1 PL+边界处理NFlag=1?YNFlag=3?Flag=0,计算

24、定时器0和1的初值键处理结束 图4-4 键处理流程图5.5定时中断子程序定时器中断子程序中有定时器0与定时器1中断,频率定时器0中断流程图与占空比定时器1流程图分别如图4-5、图4-6所示。(1)定时器0遇中断执行的操作有复位,启动自身进行频率定时,同时启动定时器1,进行占空比定时,输出高电平。(2)定时器1遇中断,停止自身的计时,输出低电平。定时器1中断入口TR1=0重装定时初值输出低电平结束图4-6占空比定时器1中断流程定时器0中断入口TR1=1重装定时初值输出高电平结束图4-5 频率定时器0中断流程5.6汇编程序CISHU EQU 31H LOW0 EQU 32H HIGH0 EQU 3

25、3H BILI EQU 34H HL EQU 35H UP EQU 16H DOWN EQU 15H CP EQU 0CH DP EQU 0DH ORG 0000HLJMP MAINORG 000BHLJMP TIN0ORG 0040HZHONGDUAN:DB 100 50 20 10 ZHANKONG:DB 8,6,5,4,2MAIN:MOV TMOD,#02HSETB EASETB ET0MOV PINLV,#00HMOV BILI,#02HLCALL GOONLJMP MLOOPZHUANGRU:MOV A,PINLVRU1:MOV TH0,#06HMOV TL0,#06HJISHU:S

26、ETB HLSETB TR0SETB P1.0MOV CISHU,#01HMOV DPTR,#ZHANKONGMOV A,BILIMOVC A,A+DPTRMOV LOW0,AMOV B,#10XCH A,BSUBB A,BMOV HIGH0,ARETOUTBIT EQU 08002HOUTSEG EQU 08004H IN EQU 08001HLEDBUF EQU 60HLEDPINLVMAP: DB 00H,00H,06H,3FH DB 00H,00H,5BH,3FH DB 00H,00H,6DH,3FH DB 00H,06H,3FH,3FHLEDZHANKONGMAP: DB 7FH,3

27、FH DB 7DH,3FH DB 6DH,3FH DB 66H,3FH DB 5BH,3FHDELAY: MOV R7, #0DELAYLOOP: DJNZ R7, DELAYLOOP DJNZ R6, DELAYLOOP RETDISPLAYLED: MOV R0, #LEDBUF MOV R1, #6 MOV R2, #00100000BLOOP: MOV DPTR, #OUTBIT MOV A, #0 MOVX DPTR, AMOV A, R0 MOV DPTR, #OUTSEG MOVX DPTR, A MOV DPTR, #OUTBIT MOV A, R2 MOVX DPTR, AM

28、OV R6, #1 CALL DELAY MOV A, R2 RR A MOV R2, A INC R0 DJNZ R1, LOOP MOV DPTR, #OUTBIT MOV A, #0 MOVX DPTR, A RETTESTKEY: MOV DPTR, #OUTBIT MOV A, #0 MOVX DPTR, A MOV DPTR, #IN MOVX A, DPTR CPL A ANL A, #0FH RETKEYTABLE: DB 16H, 15H, 14H, 0FFH DB 13H, 12H, 11H, 10H DB 0DH, 0CH, 0BH, 0AH DB 0EH, 03H, 0

29、6H, 09H DB 0FH, 02H, 05H, 08H DB 00H, 01H, 04H, 07HGETKEY: MOV DPTR, #OUTBIT MOV P2, DPH MOV R0, #LOW(IN) MOV R1, #00100000B MOV R2, #6KLOOP: MOV A, R1 CPL A MOVX DPTR, A CPL A RR A MOV R1, A MOVX A, R0 CPL A ANL A, #0FH JNZ GOON1 DJNZ R2, KLOOP MOV R2, #0FFH SJMP EXITGOON1: MOV R1, A MOV A, R2 DEC

30、A RL A RL A MOV R2, A ; R2 = (R2-1)*4 MOV A, R1 MOV R1, #4LOOPC: RRC A JC EXIT INC R2 DJNZ R1, LOOPCEXIT: MOV A, R2 MOV DPTR, #KEYTABLE MOVC A, A+DPTR MOV R2, AWAITRELEASE: MOV DPTR, #OUTBIT CLR A MOVX DPTR, A MOV R6, #5 CALL DELAY CALL TESTKEY JNZ WAITRELEASE MOV A, R2 RETGOON: MOV R0,#LEDBUF MOV D

31、PTR, #LEDPINLVMAP MOV B,#4 MOV A,PINLV MUL AB MOV R2,A MOV R1,#4GOONLOOP: MOV A,R2 MOVC A, A+DPTR MOV R0, A INC R2 INC R0 DJNZ R1,GOONLOOPGOON2: MOV DPTR,#LEDZHANKONGMAP MOV B,#2 MOV A,BILI MUL AB MOV R2,A MOV R1,#2GOONLOOP2: MOV A,R2 MOVC A, A+DPTR MOV R0, A INC R2 INC R0 DJNZ R1,GOONLOOP2 RETKEYPR

32、ESSED: CALL GETKEY MOV B, A XRL A, #DOWN JNZ KEY0 MOV A, PINLV XRL A, #0 JZ KEY3 DEC PINLV SJMP KEY3KEY0: MOV A, B XRL A, #UP JNZ KEY1 MOV A, PINLV XRL A, #3 JZ KEY3 INC PINLVKEY1: MOV A,B XRL A,#CP JNZ KEY2 MOV A,BILI XRL A,#0 JZ KEY3 DEC BILIKEY2: MOV A,B XRL A,#DP JNZ KEY3 MOV A,BILI XRL A,#4 JZ

33、KEY3 INC BILIKEY3: LCALL ZHUANGRU SJMP MLOOP1MLOOP:CALL ZHUANGRUMLOOP1: CALL TESTKEY JNZ KEYPRESSED CALL GOON CALL DISPLAYLED SJMP MLOOP1TIN0:PUSH PSWPUSH APUSH BDJNZ CISHU,FANHUICPL P1.0CPL HLMOV DPTR,#ZHONGDUANMOV A,PINLVMOVC A,A+DPTRMOV B,#5DIV ABJB HL,HIGHLEVELMOV B,LOW0LJMP FUZHIHIGHLEVEL:MOV B,HIGH0FUZHI:MUL ABMOV CISHU,AFANHUI:POP BPOP APOP PSWRETIEND第6章 系统调试与测试结果分析6.1 硬件调试硬件的测试首先是检查电路的逻辑线路是否正确,如果正确再检查原理图的线路连接是否正确,电路的布局安排是否合理等等。

温馨提示

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

评论

0/150

提交评论