基于ZigBee的數(shù)據(jù)采集與無線傳輸實(shí)驗(yàn)_第1頁
基于ZigBee的數(shù)據(jù)采集與無線傳輸實(shí)驗(yàn)_第2頁
基于ZigBee的數(shù)據(jù)采集與無線傳輸實(shí)驗(yàn)_第3頁
基于ZigBee的數(shù)據(jù)采集與無線傳輸實(shí)驗(yàn)_第4頁
基于ZigBee的數(shù)據(jù)采集與無線傳輸實(shí)驗(yàn)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、2016-2017學(xué)年第二學(xué)期課程實(shí)驗(yàn)報(bào)告課程名稱:無線傳感網(wǎng)絡(luò)實(shí)驗(yàn)名稱: 基于ZigBee的數(shù)據(jù)采集與無線傳輸實(shí)驗(yàn)姓名班級(jí)學(xué)號(hào)同組同學(xué)實(shí)驗(yàn)課表現(xiàn)出勤、表現(xiàn)得分25%25實(shí)驗(yàn)報(bào)告得分50%實(shí)驗(yàn)總分操作結(jié)果得分25%25實(shí)驗(yàn)?zāi)康牧私鈀igBee的工作原理和技術(shù)特點(diǎn),利用CC2530芯片開發(fā)一個(gè)簡(jiǎn)單的ZigBee組網(wǎng)通信實(shí)驗(yàn)。實(shí)驗(yàn)內(nèi)容以小組為單位,利用CC2530芯片部署無線傳感網(wǎng)絡(luò)實(shí)驗(yàn),分別設(shè)計(jì)采集節(jié)點(diǎn)、匯聚節(jié)點(diǎn)的程序,采集節(jié)點(diǎn)采集溫度信息,并通過無線信道傳輸給匯聚節(jié)點(diǎn)。匯聚節(jié)點(diǎn)再將溫度數(shù)據(jù)通過串口傳輸給上位機(jī)(PC機(jī))。要求自己設(shè)計(jì)通信協(xié)議,實(shí)現(xiàn)上位機(jī)對(duì)監(jiān)控區(qū)域的定時(shí)和實(shí)時(shí)溫度數(shù)據(jù)采集。實(shí)驗(yàn)過

2、程中遇到的問題以及如何解決的?(可以寫多條,是否認(rèn)真填寫將影響實(shí)驗(yàn)成績(jī))在實(shí)驗(yàn)過程中我遇到了1、 能接收后遇到很多的噪聲干擾并且不能接收自己發(fā)送的信息2、 接收到自己的信息后仍然有很多的噪聲干擾出現(xiàn)了很多的亂碼3、 接收自己的信息也被轉(zhuǎn)換成亂碼4、 遇到了選擇性接收上的技術(shù)問題5、 溫度的acsii碼轉(zhuǎn)換錯(cuò)誤通過.的方式,我解決了這個(gè)問題。1、 修改了接收代碼并確認(rèn)發(fā)送代碼沒毛病2、 嘗試修改信道3、 檢查到接收子程序有問題并修改了4、 老師建議我們使用選擇性接收5、 通過組員合作研究討論并上網(wǎng)查找解決沒有問題的情況下,是否有創(chuàng)新思路(或多做哪些工作)。好像并沒有實(shí)驗(yàn)代碼如下:發(fā)送代碼:/*

3、文 件 名: main.c* 作 者: Andy* 修 訂: 2013-01-08* 版 本: 1.0* 描 述: 設(shè)置串口調(diào)試助手波特率:115200bps 8N1* 串口調(diào)試助手給CC2530發(fā)字符串時(shí),開發(fā)板會(huì)返回接收到的字符串*/#include <ioCC2530.h>#include <string.h>#include <stdio.h>#include <stdlib.h> /#define DISABLE_ALL_INTERRUPTS() (IEN0 = IEN1 = IEN2 = 0x00)/三個(gè)char rf_rx_buf1

4、28;void rf_send( char *pbuf , int len);void rf_receive_isr();typedef unsigned char uchar;typedef unsigned int uint;#define UART0_RX 1#define UART0_TX 2#define SIZE 51char RxBuf;char UartState;uchar count;char RxDataSIZE; /存儲(chǔ)發(fā)送字符串void InitClock(void) CLKCONCMD &= 0x40; /設(shè)置系統(tǒng)時(shí)鐘源為 32MHZ晶振 while(CLK

5、CONSTA & 0x40); /等待晶振穩(wěn)定 CLKCONCMD &= 0x47; /設(shè)置系統(tǒng)主時(shí)鐘頻率為 32MHZ/* 名 稱: InitSensor()* 功 能: 溫度傳感器初始化函數(shù)* 入口參數(shù): 無* 出口參數(shù): 無*/void InitSensor(void) /DISABLE_ALL_INTERRUPTS(); /關(guān)閉所有中斷 InitClock(); /設(shè)置系統(tǒng)主時(shí)鐘為 32M TR0=0x01; /設(shè)置為1來連接溫度傳感器到SOC_ADC ATEST=0x01; /使能溫度傳感 /* 名 稱: GetTemperature()* 功 能: 獲取溫度傳感器

6、AD 值* 入口參數(shù): 無* 出口參數(shù): 通過計(jì)算返回實(shí)際的溫度值*/float GetTemperature(void) uint value; ADCCON3 = (0x3E); /選擇1.25V為參考電壓;14位分辨率;對(duì)片內(nèi)溫度傳感器采樣 ADCCON1 |= 0x30; /選擇ADC的啟動(dòng)模式為手動(dòng) ADCCON1 |= 0x40; /啟動(dòng)AD轉(zhuǎn)化 while(!(ADCCON1 & 0x80); /等待 AD 轉(zhuǎn)換完成 value = ADCL >> 4; /ADCL 寄存器低 2 位無效 value |= (uint)ADCH) << 4); re

7、turn (value-1367.5)/4.5-5; /根據(jù) AD 值,計(jì)算出實(shí)際的溫度,芯片手冊(cè)有錯(cuò),溫度系數(shù)應(yīng)該是4.5 / /進(jìn)行溫度校正,這里減去5(不同芯片根據(jù)具體情況校正)/* 名 稱: DelayMS()* 功 能: 以毫秒為單位延時(shí)* 入口參數(shù): msec 延時(shí)參數(shù),值越大,延時(shí)越久* 出口參數(shù): 無*/void DelayMS(uint msec) uint i,j; for (i=0; i<msec; i+) for (j=0; j<1070; j+);/* 名 稱: InitUart()* 功 能: 串口初始化函數(shù)* 入口參數(shù): 無* 出口參數(shù): 無*/voi

8、d InitUart(void) PERCFG = 0x00; /外設(shè)控制寄存器 USART 0的IO位置:0為P0口位置1 P0SEL = 0x0c; /P0_2,P0_3用作串口(外設(shè)功能) P2DIR &= 0xC0; /P0優(yōu)先作為UART0 U0CSR |= 0x80; /設(shè)置為UART方式 U0GCR |= 11; U0BAUD |= 216; /波特率設(shè)為115200 UTX0IF = 0; /UART0 TX中斷標(biāo)志初始置位0 U0CSR |= 0x40; /允許接收 IEN0 |= 0x84; /開總中斷允許接收中斷 /* 名 稱: UartSendString()*

9、 功 能: 串口發(fā)送函數(shù)* 入口參數(shù): Data:發(fā)送緩沖區(qū) len:發(fā)送長(zhǎng)度* 出口參數(shù): 無*/void UartSendString(char *Data, int len) uint i; for(i=0; i<len; i+) U0DBUF = *Data+; while(UTX0IF = 0); UTX0IF = 0; /以下是RF初始化和發(fā)送與接收void rf_init() TXPOWER = 0xD5; / 發(fā)射功率為1dBm /FRMCTRL0 |= (0x20 | 0x40); /* AUTO_ACK | AUTO_CRC */ CCACTRL0 = 0xF8; /

10、 推薦值 smartRF軟件生成 FRMFILT0 = 0x0c; / 靜止接收過濾,即接收所有數(shù)據(jù)包 FSCAL1 = 0x00; / 推薦值 smartRF軟件生成 TXFILTCFG = 0x09; AGCCTRL1 = 0x15; /AGCCTRL2 = 0xFE; /TXFILTCFG = 0x09; / 推薦值 smartRF軟件生成 FREQCTRL = 0x09; / 選擇通道11 RFIRQM0 |= (1<<6); / 使能RF數(shù)據(jù)包接收中斷 IEN2 |= (1<<0); / 使能RF中斷 RFST = 0xED; / 清除RF接收緩沖區(qū) ISFL

11、USHRX RFST = 0xE3; / RF接收使能 ISRXON void rf_send( char *pbuf , int len) RFST = 0xE3; / RF接收使能 ISRXON while( FSMSTAT1 & ( 1<<1 ) | ( 1<<5 );/ 等待發(fā)送狀態(tài)不活躍 并且 沒有接收到SFD RFIRQM0 &= (1<<6); / 禁止接收數(shù)據(jù)包中斷 IEN2 &= (1<<0); / 清除RF全局中斷 RFST = 0xEE; / 清除發(fā)送緩沖區(qū) ISFLUSHTX RFIRQF1 = (

12、1<<1); / 清除發(fā)送完成標(biāo)志 / 填充緩沖區(qū) 填充過程需要增加2字節(jié),CRC校驗(yàn)自動(dòng)填充 RFD = len + 2; for (int i = 0; i < len; i+) RFD = *pbuf+; RFST = 0xE9; / 發(fā)送數(shù)據(jù)包 ISTXON while (!(RFIRQF1 &(1<<1) ); / 等待發(fā)送完成 P0_0 = P0_0; RFIRQF1 = (1<<1); / 清除發(fā)送完成標(biāo)志位 RFIRQM0 |= (1<<6); / RX接收中斷 IEN2 |= (1<<0);/* 程序入

13、口函數(shù)*/void main(void) /char i; / float AvgTemp; /char strTemp6; CLKCONCMD &= 0x40; /設(shè)置系統(tǒng)時(shí)鐘源為32MHZ晶振 while(CLKCONSTA & 0x40); /等待晶振穩(wěn)定為32M CLKCONCMD &= 0x47; /設(shè)置系統(tǒng)主時(shí)鐘頻率為32MHZ InitUart(); /調(diào)用串口初始化函數(shù) UartState = UART0_RX; /串口0默認(rèn)處于接收模式 memset(RxData, 0, SIZE); InitSensor(); rf_init(); float x

14、= GetTemperature(); char a10; sprintf(a, "%g", x); char b15="A C1:" strcat(b,a); while(1) rf_send(b,20); DelayMS(20); /* if(UartState = UART0_TX) /發(fā)送狀態(tài) U0CSR &= 0x40; /禁止接收 AvgTemp = 0; for (i=0; i<64; i+) AvgTemp += GetTemperature(); AvgTemp = AvgTemp/2; /每次累加后除 2 memset(

15、strTemp, 0, 6); sprintf(strTemp,"%.02fn", AvgTemp);/將浮點(diǎn)數(shù)轉(zhuǎn)成字符串 UartSendString(strTemp, 6); rf_send(strTemp , 5); DelayMS(1000); /延時(shí) / UartSendString(RxData, count); /發(fā)送已記錄的字符串。 U0CSR |= 0x40; /允許接收 UartState = UART0_RX; /恢復(fù)到接收狀態(tài) count = 0; /計(jì)數(shù)清0 memset(RxData, 0, SIZE); /清空接收緩沖區(qū) */ 接收代碼:/*

16、* 文件名稱:UART(Receive INT)_Ex.c * 功 能:CC253x系列片上系統(tǒng)基礎(chǔ)實(shí)驗(yàn)- UART(接收數(shù)據(jù) 中斷方式) * 描 述:本實(shí)驗(yàn)使用CC253x系列片上系統(tǒng)的片內(nèi)USART控制器,工作在UART模式下,通 * 過UART0接收數(shù)據(jù),采用中斷方式。 * 實(shí)驗(yàn)硬件: * 用USB電纜連接SK-SmartRF05EB上的USB接口與用戶PC的USB接口。 * * 作 者:POWER * 日 期:2010-04-18 */* 包含頭文件 */*/#include "ioCC2530.h" / CC2530的頭文件,包含對(duì)CC2530的寄存器、中斷向量等

17、的定義#include "LCD.h" / lcd驅(qū)動(dòng)頭文件#include "stdio.h" / C語言標(biāo)準(zhǔn)輸入/輸出庫頭文件/*/* 定義枚舉類型 */*/enum SYSCLK_SRCXOSC_32MHz,RC_16MHz; / 定義系統(tǒng)時(shí)鐘源(主時(shí)鐘源)枚舉類型/*/* * 函數(shù)名稱:SystemClockSourceSelect * 功 能:選擇系統(tǒng)時(shí)鐘源(主時(shí)鐘源) * 入口參數(shù):source * XOSC_32MHz 32MHz晶體振蕩器 * RC_16MHz 16MHz RC振蕩器 * 出口參數(shù):無 * 返 回 值:無 */void S

18、ystemClockSourceSelect(enum SYSCLK_SRC source) unsigned char osc32k_bm = CLKCONCMD & 0x80; unsigned char _clkconcmd,_clkconsta; /* 系統(tǒng)時(shí)鐘源(主時(shí)鐘源)選擇16MHz RC振蕩器,定時(shí)器tick設(shè)置為16MHz,時(shí)鐘速度設(shè)置為16MHz CLKCONCMD.OSC32Kb7不改變 32KHz時(shí)鐘源選擇保持先前設(shè)置 CLKCONCMD.OSCb6 = 1 系統(tǒng)時(shí)鐘源(主時(shí)鐘源)選擇16MHz RC振蕩器 CLKCONCMD.TICKSPDb5.b3 = 00

19、1 定時(shí)器tick設(shè)置為16MHz CLKCONCMD.CLKSPDb2.b0 = 001 時(shí)鐘速度設(shè)置為16MHz */ if(source = RC_16MHz) /* CLKCONCMD.OSC32Kb7 */ CLKCONCMD = (osc32k_bm) | /* CLKCONCMD.OSCb6 = 1 */ (0x01 << 6) | /* CLKCONCMD.TICKSPDb5.b3 = 001 */ (0x01 << 3) | /* CLKCONCMD.CLKSPDb2.b0 = 001 */ (0x01 << 0); /* 系統(tǒng)時(shí)鐘源(主時(shí)

20、鐘源)選擇32MHz晶體振蕩器,定時(shí)器tick設(shè)置為32MHz,時(shí)鐘速度設(shè)置為32MHz CLKCONCMD.OSC32Kb7不改變 32KHz時(shí)鐘源選擇保持先前設(shè)置 CLKCONCMD.OSCb6 = 0 系統(tǒng)時(shí)鐘源(主時(shí)鐘源)選擇32MHz晶體振蕩器 CLKCONCMD.TICKSPDb5.b3 = 000 定時(shí)器tick設(shè)置為32MHz CLKCONCMD.CLKSPDb2.b0 = 000 時(shí)鐘速度設(shè)置為32MHz */ else if(source = XOSC_32MHz) CLKCONCMD = (osc32k_bm /*| (0x00<<6) | (0x00<

21、<3) | (0x00 << 0)*/); /* 等待所選擇的系統(tǒng)時(shí)鐘源(主時(shí)鐘源)穩(wěn)定 */ _clkconcmd = CLKCONCMD; / 讀取時(shí)鐘控制寄存器CLKCONCMD do _clkconsta = CLKCONSTA; / 讀取時(shí)鐘狀態(tài)寄存器CLKCONSTA while(_clkconsta != _clkconcmd); / 直到CLKCONSTA寄存器的值與CLKCONCMD寄存 / 器的值一致,說明所選擇的系統(tǒng)時(shí)鐘源(主 / 時(shí)鐘源)已經(jīng)穩(wěn)定 /* * 函數(shù)名稱:InitUART0 * 功 能:UART0初始化 * P0.2 RX * P0.3 T

22、X * 波特率:57600 * 數(shù)據(jù)位:8 * 停止位:1 * 奇偶校驗(yàn):無 * 入口參數(shù):無 * 出口參數(shù):無 * 返 回 值:無 */void InitUART0(void) /* 片內(nèi)外設(shè)引腳位置采用上電復(fù)位默認(rèn)值,即PERCFG寄存器采用默認(rèn)值 */ /* P0.2 RX P0.3 TX P0.4 CT P0.5 RT */ /* UART0相關(guān)引腳初始化 */ P0SEL |= (0x01 << 2) | (0x01 << 3); / P0.2和P0.3作為片內(nèi)外設(shè)I/O /* P0口外設(shè)優(yōu)先級(jí)采用上電復(fù)位默認(rèn)值,即P2DIR寄存器采用默認(rèn)值 */ /* 第一

23、優(yōu)先級(jí):USART0 第二優(yōu)先級(jí):USART1 第三優(yōu)先級(jí):Timer1 */ /* UART0波特率設(shè)置 */ /* 波特率:57600 當(dāng)使用32MHz 晶體振蕩器作為系統(tǒng)時(shí)鐘時(shí),要獲得57600波特率需要如下設(shè)置: UxBAUD.BAUD_M = 216 UxGCR.BAUD_E = 10 該設(shè)置誤差為0.03% */ U0BAUD = 216; U0GCR = 10; /* USART模式選擇 */ U0CSR |= 0x80; / UART模式 /* UART0配置 */ U0UCR |= 0x80; / 進(jìn)行USART清除 /* 以下配置參數(shù)采用上電復(fù)位默認(rèn)值: 硬件流控:無 奇偶

24、校驗(yàn)位(第9位):奇校驗(yàn) 第9位數(shù)據(jù)使能:否 奇偶校驗(yàn)使能:否 停止位:1個(gè) 停止位電平:高電平 起始位電平:低電平 */ /* 用於發(fā)送的位順序采用上電復(fù)位默認(rèn)值,即U0GCR寄存器采用上電復(fù)位默認(rèn)值 */ /* LSB先發(fā)送 */ URX0IF = 0; / 清零UART0 RX中斷標(biāo)志 U0CSR |= (0x01 << 6); / 使能接收器 URX0IE = 1; / 使能UART0 RX中斷char rf_rx_buf16;char pbuf16;/* * 函數(shù)名稱:UART0SendByte * 功 能:UART0發(fā)送一個(gè)字節(jié) * 入口參數(shù):c * 出口參數(shù):無 *

25、返 回 值:無 */void UART0SendByte(unsigned char c) U0DBUF = c; / 將要發(fā)送的1字節(jié)數(shù)據(jù)寫入U(xiǎn)0DBUF while (!UTX0IF); / 等待TX中斷標(biāo)志,即U0DBUF就緒 UTX0IF = 0; / 清零TX中斷標(biāo)志 /* * 函數(shù)名稱:UART0SendString * 功 能:UART0發(fā)送一個(gè)字符串 * 入口參數(shù):無 * 出口參數(shù):無 * 返 回 值:無 */void UART0SendString( char *str) while(1) if(*str = '0') break; / 遇到結(jié)束符,退出 UA

26、RT0SendByte(*str+); / 發(fā)送一字節(jié) void rf_init() TXPOWER = 0xD5; / 發(fā)射功率為1dBm /FRMCTRL0 |= (0x20 | 0x40); /* AUTO_ACK | AUTO_CRC */ CCACTRL0 = 0xF8; / 推薦值 smartRF軟件生成 FRMFILT0 = 0x0c; / 靜止接收過濾,即接收所有數(shù)據(jù)包 FSCAL1 = 0x00; / 推薦值 smartRF軟件生成 TXFILTCFG = 0x09; AGCCTRL1 = 0x15; /AGCCTRL2 = 0xFE; /TXFILTCFG = 0x09;

27、/ 推薦值 smartRF軟件生成 FREQCTRL = 0x09; / 選擇通道11 RFIRQM0 |= (1<<6); / 使能RF數(shù)據(jù)包接收中斷 IEN2 |= (1<<0); / 使能RF中斷 RFST = 0xED; / 清除RF接收緩沖區(qū) ISFLUSHRX RFST = 0xE3; / RF接收使能 ISRXONvoid rf_receive_isr() int rf_rx_len = 0; char r1 = 0; char crc_ok = 0; char *rf_rx_buf; rf_rx_len = RFD - 2; / 長(zhǎng)度去除兩字節(jié)附加結(jié)果

28、rf_rx_len &= 0x7F; for (int i = 0; i < rf_rx_len; i+) rf_rx_bufi = RFD; / 連續(xù)讀取接收緩沖區(qū)內(nèi)容 r0 = RFD - 73; / 讀取RSSI結(jié)果 crc_ok = RFD; / 讀取CRC校驗(yàn)結(jié)果 BIT7 RFST = 0xED; / 清除接收緩沖區(qū) if( crc_ok & 0x80 ) for(int i=0;i<=strlen(rf_rx_buf);i+) if(rf_rx_bufi=':') strcat(rf_rx_buf,"n"); UAR

29、T0SendString(rf_rx_buf); / / 串口發(fā)送 / UartSendString(r,1); / else / / UartSendString("CRC Error",9); / /unsigned long rcv_count = 0; / 累計(jì)接收到的字節(jié)計(jì)數(shù)/unsigned long rcv_charA_count = 0; / 累計(jì)接收到的字符'A'計(jì)數(shù)/* * 函數(shù)名稱:URX0_ISR * 功 能:UART0 RX中斷服務(wù)函數(shù) * 入口參數(shù):無 * 出口參數(shù):無 * 返 回 值:無 */#pragma vector=RF_

30、VECTOR_interrupt void rf_isr(void) unsigned char e; P2_0 = P2_0; / LED1翻轉(zhuǎn) 提示作用 e = EA; EA = 0; / 接收到一個(gè)完整的數(shù)據(jù)包 if (RFIRQF0 & ( 1<<6 ) rf_receive_isr(); / 調(diào)用接收中斷處理函數(shù) S1CON &=0x03; / 清除RF中斷標(biāo)志 RFIRQF0 &= (1<<6); / 清除RF接收完成數(shù)據(jù)包中斷 EA = e;/* * 函數(shù)名稱:main * 功 能:main函數(shù)入口 * 入口參數(shù):無 * 出口參數(shù):

31、無 * 返 回 值:無 */void main(void) char s16; char rcv_count16; char rcv_charA_count16; SystemClockSourceSelect(XOSC_32MHz); / 選擇32MHz晶體振蕩器作為系統(tǒng)時(shí)鐘源(主時(shí)鐘源) HalLcdInit(); / LCD初始化 HalLcd_HW_Clear(); / 清屏 /* 在LCD上顯示相關(guān)信息 */ HalLcdWriteString("CC253x UART0 Recv", HAL_LCD_LINE_1); HalLcdWriteString(&quo

32、t;57600-8-1-N-N", HAL_LCD_LINE_3); HalLcd_HW_WaitUs(50000); InitUART0(); / UART0初始化 rf_init(); rf_receive_isr(); EA = 1; / 使能全局中斷 /* 在LCD上顯示從UART0累計(jì)接收到的字節(jié)數(shù)量以及字符'A'的數(shù)量 */ while(1) sprintf(s,"0x%08X",rcv_count); HalLcdWriteString(char *)s, HAL_LCD_LINE_4); / 累計(jì)接收(字節(jié)) sprintf(s,"0x%08X"

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論