基于Android的煙霧報警器設計與制作_第1頁
基于Android的煙霧報警器設計與制作_第2頁
基于Android的煙霧報警器設計與制作_第3頁
基于Android的煙霧報警器設計與制作_第4頁
基于Android的煙霧報警器設計與制作_第5頁
已閱讀5頁,還剩22頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

湖南商務職業技術學院畢業設計

目錄

1設計的意義..............................................................................................................1

2總體設計方案..........................................................................................................1

2.1產品功能分析................................................................................................1

2.2整體框圖設計................................................................................................2

2.3主要部件的選型............................................................................................2

3硬件電路設計..........................................................................................................3

3.1ArduinoUNO主控板介紹...............................................................................3

3.2LCD1602液晶顯示電路..................................................................................4

3.3MQ-2檢測模塊電路.......................................................................................5

3.4蜂鳴器報警電路............................................................................................6

3.5溫度傳感器模塊電路.....................................................................................7

3.6按鍵電路........................................................................................................7

4產品軟件設計..........................................................................................................8

4.1產品程序開發軟件.........................................................................................8

4.2模塊開發流程圖............................................................................................8

5實物作品操作效果及指引圖.................................................................................10

5.1實物作品展示..............................................................................................10

5.2實物作品操作演示.......................................................................................11

6設計總結................................................................................................................13

7附錄........................................................................................................................14

湖南商務職業技術學院畢業設計

基于Arduino的煙霧報警器設計與制作

1設計的意義

體隨著科技的飛黃騰達,城市化現象也在日益進步,雖然給予了國家經濟

上的支持,人名工作上的保障,但與此同時,無論是小到商鋪門店,大到工廠

車間,都無法避免火災等安全隱患的存在,日常生活中經常可以在新聞或者其

他社交平臺看到報道,例如“粉塵爆炸”、“居民樓火災”、“化工廠事故”

等等諸如此類駭人聽聞的新聞報道,而對于現有的環境監測器件,雖然可以準

確無誤的對周圍環境進行監測,但卻不能夠實時的進行播報,無法及時的了解

到現場的情況,接受警報的提醒,也是安全事故發生的重要因素之一,那么對

于我們,如何有效的避免解決此類安全問題的發生,防患于未然,就成了當下

的當務之急。

在我的努力之下,經過翻閱各類資料、數目,通過老師的指導,設計出了

一款基于Arduino的煙霧報警系統,該系統主要是由芯片來控制,測量環境中

煙霧濃度的部分只要由傳感器及模數轉換器組成。值得肯定的是,該電路系統

所能夠實現的檢測功能擁有成本低、功耗小、傳播速度快、測量準確、電路簡

單易懂等優點,一改傳統煙霧濃度檢測性能復雜、不靈通的缺點,在使用方面

方便直觀、簡單易懂適合各年齡段人群使用,大大的提高了該系統的性能優勢。

可以說,該設計所完成的煙霧濃度檢測功能在很大程度上滿足市場的廣大需求,

且適用范圍光、人群大的優勢使得該電路前景更加廣泛。

2總體設計方案

2.1產品功能分析

本設計使用arduinoIDE對主板系統進行編程。本次設計主要分為檢測、

顯示和報警和控制三個部分。單片機采用arduino單片機作為CPU處理器,

檢測部分包括煙霧溫度檢測,單片機控制LCD1602液晶顯示屏顯示檢測到的

溫度和煙霧濃度,按鍵用于設置煙霧濃度、溫度,蜂鳴器用于報警,SIM800

發送報警短信到設定的手機上,。本次系統設計采用單片機模塊化進行設計,

所謂模塊化,就是將功能分解,降低之間的耦合性。當需要增加或刪除某個

1

湖南商務職業技術學院畢業設計

功能時,只需要替換或增減某個模塊,不用改變整個結構,只需要改相應的

模塊,工作量就會明顯減少,所以模塊化的應用,對于單片機的設計時非常

重要的。

2.2整體框圖設計

圖2.1系統總體結構框圖

2.3主要部件的選型

主控芯片:ArduinoUno開發板是基于ATmega328P的單片機開發板。它有14

個數字輸入/輸出引腳,其中6個可用作PWM輸出,6個模擬輸入腳,16MHz晶

振,USB連接,電源插孔,ICSP接頭和復位按鈕,HXP等輸入輸出口。只需使用

USB線將其連接到計算機,或者使用AC-to-DC適配器或電池為其供電即可開始

使用。可以修改UNO而不用擔心做錯任何事情,如果出現問題也不用擔心,只

需要關閉電源,重新開機即可解決。

顯示器:采用LCD1602液晶顯示模塊。LCD1602顯示器又叫LCD1602字符型

液晶顯示器。顯示功能強大,可以同時顯示出16*2即32個字符,可包括數字、

字母、符號、或者自定義字符。LCD1602液晶顯示器中的每一個字符都是由5*7

的點陣組成。LCD1602采用并行數據傳輸也可以采用串行數據傳輸,控制簡單。

煙霧檢測器件:采用的MQ-2型煙霧,它是一種表面的離子式N型半導體。

2

湖南商務職業技術學院畢業設計

當溫度在200~300°C時,空氣中的氧被二氧化錫所吸附,吸附了氧的負離子,

減少了其中的電子密度,進而增加了它的電阻值。但接觸到煙霧后,如果晶粒

間界處的勢壘受到該煙霧的調制而變化,這樣會讓電導率同樣發生變化。利用

這特征我們就可以得到這種煙霧存在的信息。

3硬件電路設計

3.1ArduinoUNO主控板介紹

1.ArduinoUNO主控板概述

ArduinoUno開發板是基于ATmega328P的單片機開發板。它有14個數字輸

入/輸出引腳,其中6個可用作PWM輸出,6個模擬輸入腳,16MHz晶振,USB

連接,電源插孔,ICSP接頭和復位按鈕,HXP等輸入輸出口。只需使用USB線

將其連接到計算機,或者使用AC-to-DC適配器或電池為其供電即可開始使用。

可以修改UNO而不用擔心做錯任何事情,如果出現問題也不用擔心,只需要關

閉電源,重新開機即可解決。

2.ArduinoUNO主控板最小系統

圖3.1主控板最小系統

3

湖南商務職業技術學院畢業設計

3.2LCD1602液晶顯示電路

1.LCD1602顯示模塊簡介

LCD1602液晶也叫LCD1602字符型液晶,它是一種專門用來顯示字母、數字、

符號等的點陣型液晶模塊。它由若干個5X7或者5X11等點陣字符位組成,每個

點陣字符位都可以顯示一個字符,每位之間有一個點距的間隔,每行之間也有

間隔,起到了字符間距和行間距的作用。LCD1602液晶實物圖如圖3.2所示。

圖3.2LCD1602液晶實物圖

2.LCD1602的引腳說明

LCD1602液晶顯示器引腳功能描述見表3.1。

表3.1LCD1602引腳

排號名稱定義排號名稱定義

1Vss工作電壓負極9D2數據端

2Vcc工作電壓正極10D3數據端

3VL液晶調節端11D4數據端

4RS數據/命令端(H/L)12D5數據端

5R/W讀/寫端(H/L)13D6數據端

6E使能信號端14D7數據端

7D0數據端15Bla背景燈正端

8D1數據端16Blk背景燈負端

3.LCD1602顯示電路設計

4

湖南商務職業技術學院畢業設計

LCD1602顯示電路接口設計圖如圖3.3所示。

圖3.3LCD1602顯示電路接口

3.3MQ-2檢測模塊電路

MQ-2氣體傳感器對丙烷、煙霧的靈敏度高,對天然氣和其它可燃蒸氣的檢

測也很理想。這種傳感器可檢測多種可燃性氣體,是一款適合多種應用的低成

本傳感器。

MQ-2傳感器模塊電路圖如下圖3.4所示,MQ-2傳感器對煙霧進行檢測后,

信號通過LM393比較放大器進行處理,轉變為高、低電平的數字信號供主控電

路進行檢測與處理。

圖3.4MQ-2傳感器模塊電路

MQ-2傳感器模塊接口電路如下圖3.5所示。

5

湖南商務職業技術學院畢業設計

圖3.5MQ-2傳感器模塊接口電路

3.4蜂鳴器報警電路

電路中設計了一個蜂鳴器報警電路,當按鍵設置好煙霧溫度濃度的上限值

后,單片機就進行循環監測,時刻監測溫度和是否有人,并和報警上限進行比

較。本次報警電路主要分為二部分,分別是蜂鳴器報警,短信報警。下面介紹

一下蜂鳴器的工作原理,蜂鳴器是一種蜂鳴元器件,供電時就進行蜂鳴,操作

非常簡單。市場上有很多蜂鳴器,我們選擇提供5V電源的蜂鳴器被認為是實用

的。當我們使用蜂鳴器時,我們有一個小技巧。如果我們覺得蜂鳴器不夠響,我

們可以把蜂鳴器頂部的紙去掉。在本次設計中,當檢測到溫度或者煙霧濃度高

于報警上限時,蜂鳴器報警。具體接口電路如下圖3.6所示。

圖3.6蜂鳴器報警電路

6

湖南商務職業技術學院畢業設計

3.5溫度傳感器模塊電路

本次設計采用DS18B20溫度傳感器模塊,溫度傳感器DS18B20主要是用來

進行溫度檢測,當我們對溫度進行檢測,我們用防水的DS18B20就可以進行檢

測。DS18B20傳感器是市場上采用的溫度傳感器。此傳感器占用的面積非常簡單,

精度為0.2.采用的是單總線的數據傳輸方式。這個傳感器抗干擾能力非常的強,

經常用于高爐測溫、機房檢測、家庭溫度控制等方面適合于很多空間比較小的

場合和數字溫度檢測等領域。這款溫度傳感器轉換時間為75ns,檢測的結果以

數字量方式串行傳送。溫度傳感器模塊電路接口設計如圖3.7所示.

圖3.7溫度傳感器模塊電路接口

3.6按鍵電路

按鍵控制電路是由3個微動開關并聯組成的電路,按鍵開關的檢測其原理

就是高低電平的檢測。本次設計煙霧濃度溫度報警上限值就是通過按鍵設置的,

同時還可以設置接收信息手機號碼。S1鍵代表“設置鍵”、S2鍵代表“加一

鍵”,S3鍵代表“減一鍵”。按鍵電路接口設計如下圖3.8所示。

圖3.8按鍵電路接口

7

湖南商務職業技術學院畢業設計

4產品軟件設計

4.1產品程序開發軟件

Mind+和Arduino都是構建Arduino程序開發的軟件,而我選擇的便是

Mind+作為我的系統開發軟件。Mind+是一款擁有自主知識產權的國產青少年編

程軟件,集成各種主流主控板及上百種開源硬件,支持人工智能與物聯網功能,

既可以拖動圖形化積木編程,可以使用Python/C/C++等高級編程語言。該軟件

由DFRobot旗下子品牌蘑菇云創客教育發布,用戶只需要拖動圖形化程序塊即

可完成編程,還可以自動轉換Python/C/C++等高級編程語言,適用于校內的大

班教學、項目創作、創客比賽等場景,同時能滿足學生校外進行創意編程與項

目創造的需求。

圖4.1Mind+系統開發軟件界面

4.2模塊開發流程圖

首先各個硬件開始初始化,溫度傳感器,人體紅外傳感器,LCD1602液晶屏,

蜂鳴器,之后各個模塊開始工作,實時檢測煙霧溫度、是否有人,并進行相應

的報警操作。啟動的步驟為:DS18B20、LCD顯示等模塊初始化,溫度傳感器檢

8

湖南商務職業技術學院畢業設計

測當前溫度,人體紅外濃度傳感器檢測當前人體紅外濃度。按鍵設置溫度報警

上限和人體紅外濃度報警上限。當超出溫度或者人體紅外報警上限值時,蜂鳴

器報警,對應的LED報警指示燈亮起。主流程圖如圖4.2所示

圖4.2主程序流程圖

9

湖南商務職業技術學院畢業設計

5實物作品操作效果及指引圖

5.1實物作品展示

圖5.1實物作品

10

湖南商務職業技術學院畢業設計

5.2實物作品操作演示

在最初的測試實驗當中,我們使用教室中的環境來對產品的測量精度進行

確認,先對電路板進行通電,下載完成后程序自動調試。在我們多次實驗測量

下,通過對結果的比對,發現他能很好的完成較高精度的測量,煙霧濃度誤差

在可接受范圍內,成果展示如下圖所示。

1、接通電源后,正常環境時的工作情況,如下圖5.2所示:

圖5.2正常工作情況

11

湖南商務職業技術學院畢業設計

2、當點燃打火機對準煙霧傳感器進行加熱,模擬煙霧超標時,電路的工作

情況如下圖所示,LCD顯示溫度及煙霧超標,并啟動煙霧報警。

圖5.3煙霧超標時工作情況

12

湖南商務職業技術學院畢業設計

6設計總結

至此,本產品基于Arduino的煙霧濃度檢測報警系統的主要部分已經結束

了,通過本次畢業設計產品的制作,在其過程中也遇到了許多棘手的麻煩,犯

了很多低級的錯誤,也可以說是略有挑戰,第一次通過自己來制作產品,自己

收集材料,整理素材,焊接編譯搭程序。但正是如此,也在其中學到了很多課

程書本中學不到的知識,通過自己的動手操作,增強了自己動手能力的同時,

發現程序中的不足,對問題逐個分析,逐個擊破。一直到實現效果成功,才如

釋重負,成就感充滿胸膛,我相信以后的日子里一定會學習更多的內容,畢竟

“學海無涯”,這也將會是我人生路上的新起點。

最后也感謝老師和同學的幫助,通過這次使我深刻的意識到學習不是一個

人的事,團隊合作也是重中之重,努力去嘗試發揮一個團隊的作用也是很重要

的一部分,而不是往常一個人完成任務,每個人都有自己不足和擅長的一部分,

大家互相幫助,揚長避短,提高彼此的工作效率,就算是對于那些基礎差的同

學,我同樣應該伸出援助之手,盡可能的去幫助他人,對于難理解的核心代碼

進行耐心的分析講解,真心實意的幫助其他的同學,為他人著想,同時可以更

好的激勵別人,努力自己。也感謝同學和老師們的幫助,正是因為大家的幫助

和指導才使我取得卓越的進步。

13

湖南商務職業技術學院畢業設計

7附錄

附錄一元器件清單

14

湖南商務職業技術學院畢業設計

附錄二電路原理圖

附錄三PCB板圖

15

湖南商務職業技術學院畢業設計

附錄四產品實物

附錄五源程序

#include"lcd1602.h"

#include"ds18b20.h"

constchar*phonenum="00310038003800320032003600380033003900330033";//接收

短信的手機號碼,這是轉碼過后的

//constchar*phonenum="00310035003800350030003600310038003000310030";//接

收短信的手機號碼,這是轉碼過后的

#definemq2pinA3//定義模擬接口A3

#definekey1pin14//定義按鍵引腳

#definekey2pin15//定義按鍵引腳

#definekey3pin16//定義按鍵引腳

#definebeeppin19//定義蜂鳴器引腳

16

湖南商務職業技術學院畢業設計

#defineGSM_TXBUF_SIZE60

shorttemperature=0;//溫度變量

shorttempMax=400;//溫度報警上限

longsmoke=0;//煙霧變量

intsmokeMax=50;//煙霧報警上限

inttimeCount=0;//計時累計

intsetn=0;//記錄設置按鍵按下的次數

ucharshanshuo=0;//閃爍標志

chargsm_at_txbuf[GSM_TXBUF_SIZE+1];//GSMAT指令緩存區

uchargsm_rev_start=0;//開始接收標志

uchargsm_rev_okflag=0;//GSM處理標志

ucharsendFlag=0x00;//發送短信標志

voiduart_send(char*bufs)//串口發送數

{

for(;*bufs!=0;bufs++)

{

Serial.print(*bufs);//將數據發送出去

}

}

voiduart_receive(void)//串口接收數據

{

while(Serial.available()){

//getthenewbyte:

charinChar=(char)Serial.read();

if((inChar=='O')&&(gsm_rev_okflag==0))//如果接收到'o',便開始接收

{

gsm_rev_start=1;

}

if(gsm_rev_start)

{

if(inChar=='K')//如果接收到'k',說明GSM相關操作已經執行完成

{

gsm_rev_okflag=1;//完成標志置1

gsm_rev_start=0;

break;

}

17

湖南商務職業技術學院畢業設計

}

}

}

voidgsm_atcmd_send(char*at)//發送AT指令函數

{

unsignedshortwaittry;//延時變量

do

{

gsm_rev_start=0;//開始接收標志清零

gsm_rev_okflag=0;//接收完成標志清零

waittry=0;//延時變量清零

uart_send(at);

while(waittry++<30)//進入while等待

{

uart_receive();//獲取串口數據

if(gsm_rev_okflag==1)//等待GSM返回ok

{

return;//結束

}

delay(100);

}

}

while(gsm_rev_okflag==0);

}

voidgsm_init(void)//gsm初始化函數

{

gsm_atcmd_send((char*)"AT\r\n");//測試指令

delay(1000);

gsm_atcmd_send((char*)"AT+CSCS=\"UCS2\"\r\n");//設置為unicode編碼

delay(1000);

gsm_atcmd_send((char*)"AT+CMGF=1\r\n");//設置為文本模式

delay(1000);

gsm_atcmd_send((char*)"AT+CNMI=2,1\r\n");//來短信時,存儲到模塊內存

delay(1000);

gsm_atcmd_send((char*)"AT+CSMP=17,0,2,25\r\n");//設置短信保留5分鐘,發送中

文短信

delay(1000);

//gsm_atcmd_send((char*)"AT+CMGD=1,4\r\n");//清除短信

//delay(1000);

}

18

湖南商務職業技術學院畢業設計

voidgsm_send_msg(constchar*number,char*content)

{

ucharlen;

memset(gsm_at_txbuf,0,GSM_TXBUF_SIZE);//清除緩存

strncpy(gsm_at_txbuf,"AT+CMGS=\"",9);//將AT+CMGS=復制到gsm_at_txbuf數組中

memcpy(gsm_at_txbuf+9,number,44);//將手機號碼復制到AT+CMGS=之后

len=strlen(gsm_at_txbuf);//獲取字符串長度

gsm_at_txbuf[len]='"';//AT+CMGS=\"12345678901\"

gsm_at_txbuf[len+1]='\r';

gsm_at_txbuf[len+2]='\n';//gsm_at_txbuf最終格式"AT+CMGS=\"手機號碼\"\r\n"

uart_send(gsm_at_txbuf);//把接收短信號碼這個指令發送給GSM

delay(300);

uart_send(content);//發送短信內容

delay(10);

Serial.write(0x1A);//發送0x1A結束符

delay(10);

}

voidsim800_send(char*content)//發送短信函數

{

intsend_error=0;

uintsend_count=0;

gsm_rev_okflag=0;

lcd_write_str(0,1,(char*)"SendSms...");//顯示發送短信中

gsm_send_msg(phonenum,content);//發送短信

delay(1000);//延時

do

{

uart_receive();//獲取串口數據

if(send_count++>80)

{

send_count=0;

send_error=1;

break;

}

delay(100);

19

湖南商務職業技術學院畢業設計

}while(gsm_rev_okflag==0);//等待返回OK指令

gsm_rev_okflag=0;

if(send_error==1)

lcd_write_str(0,1,(char*)"SendFail!");//顯示發送超時

else

lcd_write_str(0,1,(char*)"SendOK!");//顯示發送成功

delay(1000);//延時

lcd_write_str(0,1,(char*)"");

}

/*此函數為短信內容處理部分,發送中文短信必須轉換為Unicode碼*/

voidSMS_Content(void)//短信內容

{

charSEND_BUF[150];//發送短信內容緩存區

charBUF1[60];

memset(SEND_BUF,0,150);//清除緩存區

if(sendFlag&0x01)

{

strncpy(SEND_BUF,"70DF96FE6D535EA68D856807FF01",28);//煙霧濃度超標!

}

if(sendFlag&0x02)

{

strcat(SEND_BUF,"6E295EA68D856807FF01");//溫度超標!

}

memset(BUF1,0,60);//清除緩存區

sprintf(BUF1,"70DF96FE6D535EA6003A003%d003%d0025FF0C",(int)smoke%100/10,(int)s

moke%10);//煙霧值

strcat(SEND_BUF,BUF1);

memset(BUF1,0,60);//清除緩存區

sprintf(BUF1,"6E295EA6003A003%d003%d002E003%d21033002",temperature/100,tempera

ture%100/10,temperature%10);//溫度值

delay(1);

strcat(SEND_BUF,BUF1);

delay(1);

sim800_send(SEND_BUF);//發送短信

}

20

湖南商務職業技術學院畢業設計

voiddisplaySetValue(void)//顯示設置的值

{

if(setn==1)

{

lcd_write_char(7,1,tempMax/100+'0');

lcd_write_char(8,1,tempMax%100/10+'0');

lcd_write_char(10,1,tempMax%10+'0');

}

if(setn==2)

{

lcd_write_char(7,1,smokeMax%100/10+'0');

lcd_write_char(8,1,smokeMax%10+'0');

}

}

voidkeyscan(void)//按鍵掃描

{

if(digitalRead(key1pin)==LOW)//設置鍵按下

{

delay(10);//消抖

if(digitalRead(key1pin)==LOW)

{

while(digitalRead(key1pin)==LOW);

digitalWrite(beeppin,HIGH);//關閉蜂鳴器

setn++;

if(setn==1)

{

lcd_write_str(0,0,(char*)"SetTheTemp");

lcd_write_str(0,1,(char*)"max:00.0C");

lcd_write_char(11,1,0xDF);

displaySetValue();

}

if(setn==2)

{

lcd_write_str(0,0,(char*)"SetTheSmoke");

lcd_write_str(0,1,(char*)"max:00%");

displaySetValue();

}

if(setn>=3)

{

setn=0;

lcd_write_str(0,0,(char*)"SMOKE:00%00.0C");

21

湖南商務職業技術學院畢業設計

lcd_write_str(0,1,(char*)"");

lcd_write_char(14,0,0xDF);

}

}

}

if(digitalRead(key2pin)==LOW)//加鍵按下

{

delay(100);

if(digitalRead(key2pin)==LOW)

{

if(setn==1)

{

if(tempMax<999)tempMax++;

displaySetValue();

}

if(setn==2)

{

if(smokeMax<99)smokeMax++;

displaySetValue();

}

}

}

if(digitalRead(key3pin)==LOW)//減鍵按下

{

delay(100);

if(digitalRead(key3pin)==LOW)

{

if(setn==1)

{

if(tempMax>0)tempMax--;

displaySetValue();

}

if(setn==2)

{

if(smokeMax>0)smokeMax--;

displaySetValue();

}

}

}

}

voidsetup(void){

22

湖南商務職業技術學院畢業設計

//putyoursetupcodehere,torunonce:

lcd_init();//1602液晶初始化

delay(100);//延時100ms

pinMode(key1pin,INPUT);//輸入模式

pinMode(key2pin,INPUT);//輸入模式

pinMode(key3pin,INPUT);//輸入模式

pinMode(beeppin,OUTPUT);//輸出模式

digitalWrite(beeppin,HIGH);//關閉蜂鳴器

Serial.begin(9600);//設置波特率為9600

lcd_write_str(0,0,(char*)"GSMinit...");

gsm_init();//GSM初始化

while(DS18B20_Init()==1)

{

lcd_write_str(0,0,(char*)"DS18B20Erro!");

}

lcd_write_str(0,0,(char*)"SMOKE:00%00.0C");

lcd_write_str(0,1,(char*)"");

lcd_write_char(14,0,0xDF);

}

voidloop(void){

//putyourmaincodehere,torunrepeatedly:

keyscan();//按鍵掃描

if(timeCount++>=300&&!setn)//延時一段時間執行以下內容

{

timeCount=0;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論