基于PSOC3的多点温度采集系统_第1页
基于PSOC3的多点温度采集系统_第2页
基于PSOC3的多点温度采集系统_第3页
基于PSOC3的多点温度采集系统_第4页
基于PSOC3的多点温度采集系统_第5页
免费预览已结束,剩余34页可下载查看

下载本文档

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

文档简介

1、电子系统综合实训基于PSOC3多点温度采集系统一、设计目的及要求1、基于PSOC破计多点温度采集系统,要求设立三个节点,即一个主机和两个从机。2、主机为0号机,两个从机分别为1号机和2号机。3、0号机与PC.1号机、2号机相连,1号机与0号机相连,2号机与0号机相连。4、1,2号机测得温度后汇总给0号机,0号机测得本机温度后一并将三个节点的数据报送给PC5、PC可以向0号机发送命令,命令如下:(1)开启温度采样start_all开启所有节点温度采样start_n(n=0,1,2)开启单一节点温度采样(2)关闭温度采样stop_allstop_n(n=0,1,2)(3)设置温度上、下限temha

2、ll=xx.xCtemlall=xx.xCtemhn=xx.xC(n=0,1,2)tem_l_n=xx.xC(n=0,1,2)(4)设置数据发送周期t=x.xs(5)设置节点修改权限au_all_enau_n_en(n=0,1,2)au_all_disau_n_dis(n=0,1,2)6、在PC端显示数据的格式如下:No.o:温度,门限,权限;No.1:温度,门限,权限;No.2:温度,门限,权限;二、设计方案本设计采用PSOC坡验板,用到的模块有LCD1602模块,ADCft>LM35、UART串口通信、BELLW鸣器。检测温度时,利用ADC转换数据得到温度值:温度值=ADC读数/实际

3、电压*216/参考电压其中实际电压设置为1.25V即1250mV,参考电压为10mV。检测到温度后存储并以一定格式在LCD上显示数据。0号机通过不停的查询PC端发出命令,来对本机或1、2号机器进行操作,0号机向PC报送数据时,因为要设置报送周期,所以报送数据是在一个循环里面,此时对于其他命令利用中断来实现。0号机查询1、2号子机的温度时,首先向1(2)号子机发送start_1(start_2)之后等待1、2号机以字符串形式报送温度数据,0号机收到数据后存心。同时子机在不停的扫描从主机收到的指令,若收到start_1(start_2)则检测温度后存储并以字符用形式报送给主机,若收到改变温度上下限

4、而命令贝仙改报警上下阈值。三、原理图设计及配置其中主机将用到所有模块,子机只用到UART1模块、LCDADCBELL其中三个UART模块配置相同,两个Timer配置相同Configure'UART'我me;山足_1RXOnlyTXOnlyConfigureAdvanc“BulHnMode:»FullVART(TX+RX)JKalfDuplexDatasheetOKApplyCaneelConfigure'UARTt眄哈VART.lConfigureAdvancedBuilt-in4DClockSelection:/®IntQrn«lCloc

5、kExternalClockInterrupts7RX-(Jn.ByteReceivedIKC-OnParityErrorRX-OrtStopErrorRX-OnBreakRX-OnOverrunErrorRX-OnAddressMatchRX-On.AddressDetectTX-OnIXComplete-On.FIFOEmpty-OnFIFOFull-OnFIFONotFullRaAddressConfigurationBufferSizes!RXBufferSize(bvi1®®DatasheetOKApplyCaneelConfigure'CharLCD,C

6、ustomCharacterEditor我me;GeneralBu3t-inParametersLCDCustomCharacterSetoNena)VerticalBargraphHorizontalBargraph(UserDefinedIncludeASCIItoNumberDatasheetOKApplyCaneelConfigureADC.加1Sig端口配置如下AliasPertF201WHELLpgmwPOTPO7TDA£2;iourT心PlRx_2P4W氏_3P4(3:wTk_1pirnwTk_2P4(1¥Tk_3P44四、程序流程图Send0子机四、测试结果

7、2打氢on日“773HTMEE,“MWng句-»rfattr虔tu*ftH'NCWkH*,需掠T”"S£MS售MfnrazM-耽.IS网日已宣iMW:wM虐"仃"*ejw::(;cn«”的:9n纣,WikKrnmF河川1逸秀*七”史立«fVRWLBrnSdWW典,我W(M*LfWIOT.GTO前etjl:goEohiot,Ks,UH0»00K,trdio.naimi.EQllX:e逸"*足支N五、源代码0号机(主机)#include<project.h>#include<devi

8、ce.h>uint8ch='A'uint8jflag=0x00;uint8temperture=".aa"uint8shi0,ge0,xiao0,temhs0,temhg0,temhx0,temls0,temlg0,temlx0;uint8shi1,ge1,xiao1,temhs1,temhg1,temhx1,temls1,temlg1,temlx1;uint8shi2,ge2,xiao2,temhs2,temhg2,temhx2,temls2,temlg2,temlx2;uint8send0enable=0;/发送功能使能uint8send1enab

9、le=0;/发送功能使能uint8send2enable=0;/发送功能使能charrxbuff="e0s"charrxbuff1="yy.y"charrxbuff2="xx.x"charau="NULL"charau1="NULL"charau2="NULL"charen="EN"chardis尸'DIS"chartemh0="33.0"/温度上限charteml0尸"11.0"/温度下限char

10、temh1="33.0"/温度上限chartemll尸"11.0"/温度下限chartemh2="33.0"/温度上限charteml2尸"11.0"/温度下限uint16zhengshu;uint16xiaoshu;uint32subtime=1000;#defineROW_00/*LCDrow0*/#defineCOLUMN_00/*LCDcolumn0*/#defineCOLUMN_99/*LCDcolumn9*/#defineCOLUMN_1212/*LCDcolumn10*/#defineCOLUMN_1

11、313/*LCDcolumn11*/#defineCLEAR_TENS_HUNDREDS""/*ForclearingTensandHundredsplace*/#defineCLEAR_HUNDREDS""/*ForclearingHundredsplace*/uint8tmpStat;voidwendu();voidwendu1();voidwendu2();voidUpdateDisplay(floatvoltageRawCount);voidUpdateDisplay(floatvoltageRawCount);voidcheck();voidc

12、omand();voidsend0();voidstart_0();voidstart_1();voidstart_2();voidstop_0();voidstop_1();voidstop_2();voidtem_h_0();voidtem_h_1();voidtem_h_2();voidtem_l_0();voidtem_l_1();voidtem_l_2();voidsendtime();voidau_0_en();voidau_1_en();voidau_2_en();voidau_0_dis();voidau_1_dis();voidau_2_dis();volatiletoggl

13、e_flag=0;CY_ISR_PROTO(timer1_isr);volatiletime_flag=0;CY_ISR_PROTO(timer2_isr);voidmain()CyGlobalIntEnable;/*Enableinterrupts*/UART_1_Start();/*StartUART*/UART_2_Start();UART_3_Start();Timer_1_Start();/isr_1_Start();isr_2_Start();isr_3_Start();isr_4_Start();isr_2_SetVector(timer1_isr);Timer_2_Start(

14、);isr_3_SetVector(timer2_isr);LCD_Char_1_Start();/*InitializeandcleartheLCD*/LCD_Char_1_ClearDisplay();CyDelay(30);/*Appropriatedelaycouldbeused*/while(1)check();/不停的扫描命令有命令时操作)voidwendu()floatvoltageRawCount;ADC_DelSig_1_Start();/*ConfigureandpowerupADC*/LCD_Char_1_Start();/*InitializeandcleartheLC

15、D*/LCD_Char_1_Position(ROW_0,COLUMN_0);/*MovethecursortoRow0,Column0*/LCD_Char_1_PrintString("No.0temperture:");ADC_DelSig_1_StartConvert();/*ForceADCtoinitiateaconversion*/ADC_DelSig_1_IsEndConversion(ADC_DelSig_1_WAIT_FOR_RESULT);/*Waitforendofconversion*/voltageRawCount=ADC_DelSig_1_Get

16、Result16();/*Getconversionresult*/*ADCcounterrataworkaround*/voltageRawCount=voltageRawCount/65536*1250/10;UpdateDisplay(voltageRawCount);/*PrintresultonLCD*/voidwendu1()intj=0;UART_2_PutString("start_1");while(1)ch=UART_2_GetChar();rxbuff1j=ch;if(ch='0')break;j+;CyDelay(100);shi1=

17、rxbuff10;ge1=rxbuff11;xiao1=rxbuff13;/shi1=50;ge1=49;xiao1=48;/tempflag/voidwendu2()intj=0;UART_3_PutString("start_2");while(1)ch=UART_3_GetChar();rxbuff2j=ch;if(ch='0')break;j+;CyDelay(100);shi2=rxbuff20;ge2=rxbuff21;xiao2=rxbuff23;/shi1=50;ge1=49;xiao1=48;/tempflag/)voidUpdateDis

18、play(floatvoltageRawCount)(zhengshu=voltageRawCount;xiaoshu=(voltageRawCount*100-zhengshu*100)/10;shi0=zhengshu/10+48;ge0=zhengshu%10+48;xiao0=xiaoshu+48;if(temh00=shi0&&temh01=ge0)BELL_Write(0x01u);CyDelay(1000);BELL_Write(0x00u);)if(teml00=shi0&&teml01=ge0)BELL_Write(0x01u);CyDelay

19、(1000);BELL_Write(0x00u);)LCD_Char_1_Position(1,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char_1_PrintNumber(zhengshu);/*Printtheresult*/CyDelay(3);LCD_Char_1_PrintString(".");LCD_Char_1_PrintNumber(xiaoshu);/*Printtheresult*/LCD_Char_1_PrintNumber(voltageRawCount);/*Printtheresult*/LCD_Ch

20、ar_1_Position(1,4);/*MovethecursortoRow0,Column11*/LCD_Char_1_PrintString(CLEAR_HUNDREDS);/*Clearlastcharacters*/CyDelay(10);)voidsend0()/发送所有数据到PCif(send0enable=1)/*第0号机器报送*/UART_1_PutString("nNo.0:");CyDelay(3);UART_1_WriteTxData(shi0);/温度十位UART_1_WriteTxData(ge0);/温度个位UART_1_PutString(&

21、quot;.");UART_1_WriteTxData(xiao0);/温度小数UART_1_PutString(",(");UART_1_PutString(teml0);/温度警告上限UART_1_PutString(",");UART_1_PutString(temh0);/温度警告下限CyDelay(3);UART_1_PutString("),");UART_1_PutString(au);/权限UART_1_PutString("");CyDelay(3);)elseUART_1_PutStr

22、ing("nNo.0OFF");/if(send1enable=1)/*/UART_1_PutString("nNo.1:");CyDelay(3);UART_1_WriteTxData(shi1);/UART_1_WriteTxData(ge1);/UART_1_PutString(".");UART_1_WriteTxData(xiao1);/UART_1_PutString(",(");UART_1_PutString(teml1);/UART_1_PutString(",");UART_

23、1_PutString(temh1);/UART_1_PutString("),");UART_1_PutString(au1);/CyDelay(3);elseUART_1_PutString("nNo.1OFF");/if(send2enable=1)/*第温度十位温度个位温度小数温度警告上限温度警告下限权限第1号机器报送2号机器报送*/UART_1_PutString("nNo.2:");CyDelay(3);UART_1_WriteTxData(shi2);/温度十位UART_1_WriteTxData(ge2);/温度个位U

24、ART_1_PutString(".");UART_1_WriteTxData(xiao2);/温度小数UART_1_PutString(",(");UART_1_PutString(teml2);/温度警告上限UART_1_PutString(",");UART_1_PutString(temh2);/温度警告下限UART_1_PutString("),");UART_1_PutString(au2);/权限UART_1_PutString("n");CyDelay(3);elseUART_1

25、_PutString("nNo.2OFF");/UART_1_PutString("n");/sendenable=0x00u;CyDelay(subtime);/检查是否接受命令,并存储命令/voidcheck()intj=0;wendu();wendu1();wendu2();if(jflag=0x00u)while(1)ch=UART_1_GetChar();rxbuffj=ch;if(ch='0')break;j+;CyDelay(10);comand();/检查命令voidcomand()/start_allif(rxbuff0

26、='s'&&rxbuff2='a'&&rxbuff6='a')start_0();start_1();start_2();while(1)if(toggle_flag=1)check();send0enable=1;send1enable=1;send2enable=1;send0();toggle_flag=0;/start_0if(rxbuff0='s'&&rxbuff2='a'&&rxbuff6='0')start_0();whi

27、le(1)if(toggle_flag=1)check();send0enable=1;send0();)/start_1if(rxbuff0='s'&&rxbuff2='a'&&rxbuff6='1')start_1();while(1)if(toggle_flag=1)check();send1enable=1;send0();)/start_2if(rxbuff0='s'&&rxbuff2='a'&&rxbuff6='2')sta

28、rt_2();while(1)if(toggle_flag=1)check();send2enable=1;send0();)/stop_allif(rxbuff0='s'&&rxbuff2='o'&&rxbuff5='a')stop_0();stop_1();stop_2();while(1)if(toggle_flag=1)check();send0enable=0;send1enable=0;send2enable=0;send0();)/stop_0if(rxbuff0='s'&&a

29、mp;rxbuff2='o'&&rxbuff5='0')stop_0();while(1)if(toggle_flag=1)check();send0enable=0;send0();)/stop_1if(rxbuff0='s'&&rxbuff2='o'&&rxbuff5='1')stop_1();while(1)if(toggle_flag=1)check();send1enable=0;send0();)/stop_2if(rxbuff0='s'&

30、amp;&rxbuff2='o'&&rxbuff5='2')stop_2();while(1)if(toggle_flag=1)check();send2enable=0;send0();/设置数据发送周期t=x.xsif(rxbuff0='t'&&rxbuff1='='&&rxbuff3='.')sendtime();/au_all_enif(rxbuff0='a'&&rxbuff1='u'&&

31、rxbuff3='a'&&rxbuff7='e')au_0_en();au_1_en();au_2_en();/au_all_disif(rxbuff0='a'&&rxbuff1='u'&&rxbuff3='a'&&rxbuff7='d')au_0_dis();au_1_dis();au_2_dis();/au_0_enif(rxbuff0='a'&&rxbuff1='u'&&am

32、p;rxbuff3='0'&&rxbuff5='e')au_0_en();/au_0_disif(rxbuff0='a'&&rxbuff1='u'&&rxbuff3='0'&&rxbuff5='d')au_0_dis();/au_1_enif(rxbuff0='a'&&rxbuff1='u'&&rxbuff3='1'&&rxbuff5=

33、9;e')au_1_en();/au_1_disif(rxbuff0='a'&&rxbuff1='u'&&rxbuff3='1'&&rxbuff5='d')au_1_dis();/au_2_enif(rxbuff0='a'&&rxbuff1='u'&&rxbuff3='2'&&rxbuff5='e')au_2_en();/au_2_disif(rxbuff0=

34、9;a'&&rxbuff1='u'&&rxbuff3='2'&&rxbuff5='d')au_2_dis();/tem_h_0=xx.xif(rxbuff0='t'&&rxbuff1='e'&&rxbuff4='h'&&rxbuff6='0')tem_h_0();/tem_l_0=xx.xif(rxbuff0='t'&&rxbuff1='e&

35、#39;&&rxbuff4='l'&&rxbuff6='0')tem_l_0();/tem_h_1=xx.xif(rxbuff0='t'&&rxbuff1='e'&&rxbuff4='h'&&rxbuff6='1')tem_h_1();/tem_l_1=xx.xif(rxbuff0='t'&&rxbuff1='e'&&rxbuff4='l'&

36、amp;&rxbuff6='1')tem_l_1();/tem_h_2=xx.xif(rxbuff0='t'&&rxbuff1='e'&&rxbuff4='h'&&rxbuff6='2')tem_h_2();/tem_l_2=xx.xif(rxbuff0='t'&&rxbuff1='e'&&rxbuff4='l'&&rxbuff6='2')tem_l

37、_2();/CY_ISR(timer1_isr)/扫描中断Timer_1_ReadStatusRegister();toggle_flag=1;CY_ISR(timer2_isr)/上报中断Timer_2_ReadStatusRegister();time_flag=1;voidstart_0()send0enable=1;if(toggle_flag=1)UART_1_PutString("nstart_0");voidstart_1()intj=0;if(toggle_flag=1)UART_1_PutString("nstart_1");voids

38、tart_2()intj=0;if(toggle_flag=1)UART_1_PutString("nstart_2");)voidstop_0()nstop_0");voidstop_1()nstop_1");voidstop_2()nstop_2");voidsendtime()intx,y;if(time_flag=1)x=rxbuff2-48;y=rxbuff4-48;UART_1_PutString("nSubtimewassetas:");CyDelay(3);subtime=(x+0.1*y)*1000;计算之

39、前吧asc码转换为数值UART_1_WriteTxData(x+48);UART_1_PutString(".");UART_1_WriteTxData(y+48);UART_1_PutString("s");voidau_0_en()if(time_flag=1)UART_1_PutString("nau_0_en");strcpy(au,en);LCD_Char_1_ClearDisplay();LCD_Char_1_Position(0,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char

40、_1_PrintString("No.0wasenabled");CyDelay(2000);LCD_Char_1_ClearDisplay();check();)voidau_1_en()(if(time_flag=1)UART_1_PutString("nau_1_en");strcpy(au1,en);LCD_Char_1_ClearDisplay();LCD_Char_1_Position(0,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char_1_PrintString("No.1wasena

41、bled");CyDelay(2000);LCD_Char_1_ClearDisplay();check();)voidau_2_en()if(time_flag=1)UART_1_PutString("nau_2_en");strcpy(au2,en);LCD_Char_1_ClearDisplay();LCD_Char_1_Position(0,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char_1_PrintString("No.2wasenabled");CyDelay(2000);LCD_Ch

42、ar_1_ClearDisplay();check();)voidau_0_dis()if(time_flag=1)UART_1_PutString("nau_0_en");strcpy(au,dis);LCD_Char_1_ClearDisplay();LCD_Char_1_Position(0,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char_1_PrintString("No.0isdisabled");CyDelay(2000);LCD_Char_1_ClearDisplay();check();)vo

43、idau_1_dis()(if(time_flag=1)UART_1_PutString("nau_1_dis");strcpy(au1,dis);LCD_Char_1_ClearDisplay();LCD_Char_1_Position(0,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char_1_PrintString("No.1isdisabled");CyDelay(2000);LCD_Char_1_ClearDisplay();check();voidau_2_dis()if(time_flag=1)UA

44、RT_1_PutString("nau_2_dis");strcpy(au2,dis);LCD_Char_1_ClearDisplay();LCD_Char_1_Position(0,ROW_0);/*MovethecursortoRow0,Column9*/LCD_Char_1_PrintString("No.2isdisabled");CyDelay(2000);LCD_Char_1_ClearDisplay();check();voidtem_h_0()if(time_flag=1|toggle_flag=1)temhs0=rxbuff8-48;t

45、emhg0=rxbuff9-48;temhx0=rxbuff11-48;UART_1_PutString("ntem_h_0wassetas:");CyDelay(3);temh00=temhs0+48;temh01=temhg0+48;temh03=temhx0+48;UART_1_WriteTxData(temhs0+48);CyDelay(2);UART_1_WriteTxData(temhg0+48);CyDelay(2);UART_1_PutString(".");CyDelay(2);UART_1_WriteTxData(temhx0+48)

46、;voidtem_h_1()/发温度上限到子机if(time_flag=1|toggle_flag=0)temhs1=rxbuff8-48;temhg1=rxbuff9-48;temhx1=rxbuff11-48;UART_1_PutString("ntem_h_0wassetas:");CyDelay(3);temh10=temhs1+48;temh11=temhg1+48;temh13=temhx1+48;UART_2_PutString(rxbuff);UART_1_WriteTxData(temhs1+48);CyDelay(2);UART_1_WriteTxDat

47、a(temhg1+48);CyDelay(2);UART_1_PutString(".");CyDelay(2);UART_1_WriteTxData(temhx1+48);voidtem_h_2()/发温度上限到子机if(time_flag=1|toggle_flag=0)temhs2=rxbuff8-48;temhg2=rxbuff9-48;temhx2=rxbuff11-48;UART_1_PutString("ntem_h_2wassetas:");CyDelay(3);temh20=temhs2+48;temh21=temhg2+48;temh

48、23=temhx2+48;UART_3_PutString(rxbuff);UART_1_WriteTxData(temhs2+48);CyDelay(2);UART_1_WriteTxData(temhg2+48);CyDelay(2);UART_1_PutString(".");CyDelay(2);UART_1_WriteTxData(temhx2+48);voidtem_l_0()if(time_flag=1|toggle_flag=1)temls0=rxbuff8-48;temlg0=rxbuff9-48;temlx0=rxbuff11-48;UART_1_Put

49、String("ntem_l_1wassetas:");CyDelay(3);teml00=temls0+48;teml01=temlg0+48;teml03=temlx0+48;UART_1_WriteTxData(temls0+48);CyDelay(2);UART_1_WriteTxData(temlg0+48);CyDelay(2);UART_1_PutString(".");CyDelay(2);UART_1_WriteTxData(temlx0+48);)voidtem_l_1()if(time_flag=1|toggle_flag=1)te

50、mls1=rxbuff8-48;temlg1=rxbuff9-48;temlx1=rxbuff11-48;UART_1_PutString("ntem_l_1wassetas:");CyDelay(3);teml10=temls1+48;teml11=temlg1+48;teml13=temlx1+48;UART_2_PutString(rxbuff);UART_1_WriteTxData(temls1+48);CyDelay(2);UART_1_WriteTxData(temlg1+48);CyDelay(2);UART_1_PutString("."

51、);CyDelay(2);UART_1_WriteTxData(temlx1+48);)voidtem_l_2()if(time_flag=1|toggle_flag=1)temls2=rxbuff8-48;temlg2=rxbuff9-48;temlx2=rxbuff11-48;UART_1_PutString("ntem_l_2wassetas:");CyDelay(3);teml20=temls2+48;teml21=temlg2+48;teml23=temlx2+48;UART_2_PutString(rxbuff);UART_1_WriteTxData(temls

52、2+48);CyDelay(2);UART_1_WriteTxData(temlg2+48);CyDelay(2);UART_1_PutString(".");CyDelay(2);UART_1_WriteTxData(temlx2+48);)1号机(从机)#include<project.h>#include<device.h>uint8ch='A'uint8jflag=0x00;uint8temperture=".aa"uint8Shi1,ge1,xiao1,temhs1,temhg1,temhx1,temls

53、1,temlg1,temlx1;intsend0enable=0;/发送功能使能uint8send1enable=0;/发送功能使能uint8send2enable=0;/发送功能使能charrxbuff="e0s"charrxbuff1="xx.x;"chartemh1尸"33.0"/温度上限charteml1="11.0"/温度下限uint16zhengshu;uint16xiaoshu;uint32subtime=1000;#defineROW_00/*LCDrow0*/#defineCOLUMN_00/*L

54、CDcolumn0*/#defineCOLUMN_99/*LCDcolumn9*/#defineCOLUMN_1212/*LCDcolumn10*/#defineCOLUMN_1313/*LCDcolumn11*/#defineCLEAR_TENS_HUNDREDS""/*ForclearingTensandHundredsplace*/#defineCLEAR_HUNDREDS""/*ForclearingHundredsplace*/uint8tmpStat;voidwendu();voidUpdateDisplay(floatvoltageRawCount);voidUpdateDisplay(floatvoltageRawCount);voidcheck();voidcomand(char

温馨提示

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

评论

0/150

提交评论