基于51單片機(jī)的簡(jiǎn)易電子密碼鎖_第1頁(yè)
基于51單片機(jī)的簡(jiǎn)易電子密碼鎖_第2頁(yè)
基于51單片機(jī)的簡(jiǎn)易電子密碼鎖_第3頁(yè)
基于51單片機(jī)的簡(jiǎn)易電子密碼鎖_第4頁(yè)
基于51單片機(jī)的簡(jiǎn)易電子密碼鎖_第5頁(yè)
已閱讀5頁(yè),還剩22頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 前言隨著電子技術(shù)的發(fā)展,具有防盜報(bào)警等功能的電子密碼鎖代替密碼量少、安全性差的機(jī)械式密碼鎖已是必然趨勢(shì)。電子密碼鎖與普通機(jī)械鎖相比,具有許多獨(dú)特的優(yōu)點(diǎn):保密性好,防盜性強(qiáng),可以不用鑰匙,記住密碼即可開鎖等。目前使用的電子密碼鎖大部分是基于單片機(jī)技術(shù),以單片機(jī)為主要器件,其編碼器與解碼器的生成為軟件方式。下面就是現(xiàn)在主流電子密碼鎖:目前常見的遙控式電子防盜鎖主要有光遙控和無(wú)線電遙控兩類。鍵盤式電子密碼鎖從目前的技術(shù)水平和市場(chǎng)認(rèn)可程度看,使用最為廣泛的是鍵盤式電子密碼鎖,該產(chǎn)品主要應(yīng)用于保險(xiǎn)箱、保險(xiǎn)柜和金庫(kù),還有一部分應(yīng)用于保管箱和運(yùn)鈔車??ㄊ诫娮臃辣I鎖使用各種“卡”作為鑰匙的電子防盜鎖是當(dāng)前最

2、為活躍的產(chǎn)品,無(wú)論卡的種類如何多種多樣,按照輸入卡的操作方式,都可分為接觸式卡和非接 觸式卡兩大類。生物特征防盜鎖人的某些與生俱來(lái)的個(gè)性特征(如手、眼睛、聲音的 特征)幾乎不可重復(fù),作為“鑰匙”就是唯一的(除非被逼迫或傷害)。因此,利用生物特征做密碼的電子防盜鎖,也特別適合金融業(yè)注重“驗(yàn)明正身”的行業(yè)特點(diǎn)。人們生活水平的提高和安全意識(shí)的加強(qiáng),對(duì)安全的要求也就越來(lái)越高。鎖自 古以來(lái)就是把守護(hù)門的鐵將軍,人們對(duì)它要求甚高,既要安全可靠的防盜,又要使用方便,這也是制鎖者長(zhǎng)期以來(lái)研制的主題。隨著電子技術(shù)的發(fā)展,各類電子產(chǎn)品應(yīng)運(yùn)而生,電子密碼鎖就是其中之一。據(jù)有關(guān)資料介紹,電子密碼鎖的研究從20世紀(jì)30

3、年代就開始了,在一些特殊場(chǎng)所早就有所應(yīng)用。這種鎖是通過(guò)鍵盤輸入一組密碼完成開鎖過(guò)程。研究這種鎖的初衷,就是為提高鎖的安全性。由于電子鎖的密鑰量(密碼 量)極大,可以與機(jī)械鎖配合使用,并且可以避免因鑰匙被仿制而留下安全隱患。電子鎖只需記住一組密碼,無(wú)需攜帶金屬鑰匙,免除了人們攜帶金屬鑰匙的煩惱,而被越來(lái)越多的人所欣賞。電子鎖的種類繁多,例如數(shù)碼鎖,指紋鎖,磁卡鎖,IC 卡鎖,生物鎖等。但較實(shí)用的還是按鍵式電子密碼鎖。20世紀(jì)80年代后,隨著電子鎖專用集成電路的出現(xiàn),電子鎖的體積縮小,可靠性提高,成本較高,是適合使用在安全性要求較高的場(chǎng)合,且需要有電源提供能量,使用還局限在一定范圍,難以普及,所以

4、對(duì)它的研究一直沒(méi)有明顯進(jìn)展。 目前,在西方發(fā)達(dá)國(guó)家,電子密碼鎖技術(shù)相對(duì)先進(jìn),種類齊全,電子密碼鎖已被 廣泛應(yīng)用于智能門禁系統(tǒng)中,通過(guò)多種更加安全,更加可靠的技術(shù)實(shí)現(xiàn)大門的管理。 在我國(guó)電子鎖整體水平尚處于國(guó)際上70年代左右,電子密碼鎖的成本還很高,市場(chǎng)上仍以按鍵電子鎖為主,按鍵式和卡片鑰匙式電子鎖已引進(jìn)國(guó)際先進(jìn)水平,現(xiàn)國(guó)內(nèi)有幾個(gè)廠生產(chǎn)供應(yīng)市場(chǎng)。但國(guó)內(nèi)自行研制開發(fā)的電子鎖,其市場(chǎng)結(jié)構(gòu)尚未形成,應(yīng)用還不廣泛。國(guó)內(nèi)的不少企業(yè)也引進(jìn)了世界上先進(jìn)的技術(shù),發(fā)展前景非??捎^。希望通過(guò)不斷的努力,使電子密碼鎖在我國(guó)也能得到廣泛應(yīng)用。 一、 作品功能:1、設(shè)置6位密碼,密碼通過(guò)鍵盤輸入,若密碼正確,則將鎖打開。

5、2、密碼可以由用戶自己修改設(shè)定(只支持6位密碼),鎖打開后才能修改密碼。修改密碼之前必須再次輸入密碼,在輸入新密碼時(shí)候需要二次確認(rèn),以防止誤操作。3、報(bào)警、鎖定鍵盤功能。密碼輸入錯(cuò)誤顯示器會(huì)出現(xiàn)錯(cuò)誤提示,若密碼輸入錯(cuò)誤次數(shù)超過(guò)3次,蜂鳴器報(bào)警并且鎖定鍵盤。4、AT24C02保存密碼,支持復(fù)位保存,掉電保存功能。二、按鍵說(shuō)明按鍵定義圖如圖示:采用4X4鍵盤輸入,鍵盤對(duì)應(yīng)名稱如下:1 2 3 A4 5 6 B7 8 9 C* 0 # D其中,【09】為數(shù)字鍵,用于輸入相應(yīng)的密碼, 【*】號(hào)鍵為取消當(dāng)前操作【#】號(hào)鍵為確認(rèn)【D】鍵為修改密碼 其它鍵無(wú)功能及定義三、操作說(shuō)明:密碼鎖初始密碼為:.1、

6、開鎖:插上電源后,程序自動(dòng)調(diào)入初始密碼,此時(shí)依次輸 入:,然后按【#】(確認(rèn))鍵,此時(shí)鎖會(huì)打開,可以看到顯示open,密碼鎖打開。2、 退出并關(guān)鎖:按下【*】(取消)鍵,此時(shí)鎖關(guān)閉,所有輸入清除。3、 修改密碼:在開鎖狀態(tài)下,再次輸入正確的密碼并按下【#】(確認(rèn))鍵,此時(shí)聽到兩聲提示,輸入新的六位密碼并按【D】(重設(shè))鍵,再重復(fù)輸入一次新密碼并按【D】,會(huì)聽到兩聲提示音,表示重設(shè)密碼成功,內(nèi)部保存新密碼并存儲(chǔ)到AT24C02。(如兩次輸入的新密碼不一樣,則重設(shè)密碼失?。?。4、 報(bào)警并鎖定鍵盤:當(dāng)輸入密碼錯(cuò)誤后,報(bào)警并鎖定鍵盤3秒,如3秒內(nèi)又有按鍵,3秒再啟動(dòng)。5、 當(dāng)重置新密碼時(shí),新密碼會(huì)保存

7、于AT24C02存儲(chǔ)器里。四、框圖及流程圖 1、系統(tǒng)結(jié)構(gòu)框圖 AT89S52顯示模塊鍵盤輸入模塊報(bào)警電路復(fù)位電路開鎖電路密碼存儲(chǔ)模塊2、主程序設(shè)計(jì)流程圖初始化 修改開鎖密碼正確 輸入舊密碼N原密碼相同 Y開鎖出錯(cuò)報(bào)警 N N Y設(shè)新密碼 返回 3、鍵功能程序流程圖。 鍵功能程序鍵值=09?鍵值=開鎖?鍵值=確認(rèn)?鍵值=設(shè)置? 返回密碼輸入程序確認(rèn)程序設(shè)置程序開鎖程序YNYNYN YN 4、開鎖程序流程圖LCD初始化按開鎖鍵輸入密碼確認(rèn)程序開鎖N輸入密碼正確?報(bào)警程序開鎖成功返回Y 5.電子密碼鎖原理圖程序(c語(yǔ)言)#include #include#define LCM_Data P0#def

8、ine uchar unsigned char #define uint unsigned int#define w 6/定義密碼位數(shù)sbit lcd1602_rs=P25;sbit lcd1602_rw=P26;sbit lcd1602_en=P27;sbit Scl=P34;/24C02串行時(shí)鐘sbit Sda=P35;/24C02串行數(shù)據(jù)sbit ALAM = P21;/報(bào)警sbit KEY = P20;/開鎖sbit open_led=P22;/開鎖指示燈bit operation=0;/操作標(biāo)志位bit pass=0;/密碼正確標(biāo)志bit ReInputEn=0;/重置輸入充許標(biāo)志b

9、it s3_keydown=0;/3秒按鍵標(biāo)志位bit key_disable=0;/鎖定鍵盤標(biāo)志unsigned char countt0,second;/t0中斷計(jì)數(shù)器,秒計(jì)數(shù)器void Delay5Ms(void);unsigned char code a=0xFE,0xFD,0xFB,0xF7; /控盤掃描控制表unsigned char code start_line= password: ;unsigned char code name = =Coded Lock=; /顯示名稱unsigned char code Correct = correct ;/輸入正確 unsigned

10、 char code Error = error ; /輸入錯(cuò)誤unsigned char code codepass= pass ; unsigned char code LockOpen= open ;/OPENunsigned char code SetNew = SetNewWordEnable;unsigned char code Input = input: ;/INPUTunsigned char code ResetOK = ResetPasswordOK ;unsigned char code initword= Init password.;unsigned char co

11、de Er_try= error,try again!;unsigned char code again= input again ;unsigned char InputData6;/輸入密碼暫存區(qū)unsigned char CurrentPassword6=1,3,1,4,2,0; /當(dāng)前密碼值unsigned char TempPassword6;unsigned char N=0;/密碼輸入位數(shù)記數(shù)unsigned char ErrorCont;/錯(cuò)誤次數(shù)計(jì)數(shù)unsigned char CorrectCont;/正確輸入計(jì)數(shù)unsigned char ReInputCont; /重新輸

12、入計(jì)數(shù)unsigned char code initpassword6=0,0,0,0,0,0;/=5ms延時(shí)=void Delay5Ms(void)unsigned int TempCyc = 5552;while(TempCyc-);/=400ms延時(shí)=void Delay400Ms(void) unsigned char TempCycA = 5; unsigned int TempCycB; while(TempCycA-) TempCycB=7269; while(TempCycB-); /=24C02=void mDelay(uint t) /延時(shí) uchar i; while(t

13、-) for(i=0;i125;i+) ; void Nop(void) /空操作 _nop_(); _nop_(); _nop_(); _nop_();/*起始條件*/void Start(void) Sda=1; Scl=1; Nop(); Sda=0; Nop(); /*停止條件*/void Stop(void) Sda=0; Scl=1; Nop(); Sda=1; Nop();/*應(yīng)答位*/void Ack(void)Sda=0;Nop();Scl=1;Nop();Scl=0;/*反向應(yīng)答位*/void NoAck(void) Sda=1; Nop(); Scl=1; Nop();

14、Scl=0; /*發(fā)送數(shù)據(jù)子程序,Data為要求發(fā)送的數(shù)據(jù)*/void Send(uchar Data) uchar BitCounter=8; uchar temp; do temp=Data; Scl=0; Nop(); if(temp&0x80)=0x80) Sda=1; else Sda=0; Scl=1; temp=Data1; Data=temp; BitCounter-; while(BitCounter); Scl=0;/*讀一字節(jié)的數(shù)據(jù),并返回該字節(jié)值*/uchar Read(void) uchar temp=0;uchar temp1=0;uchar BitCounter=

15、8;Sda=1;doScl=0;Nop();Scl=1;Nop();if(Sda)temp=temp|0x01;elsetemp=temp&0xfe;if(BitCounter-1)temp1=temp1;temp=temp1;BitCounter-;while(BitCounter);return(temp);void WrToROM(uchar Data,uchar Address,uchar Num) uchar i; uchar *PData; PData=Data; for(i=0;iNum;i+) Start(); Send(0xa0); Ack(); Send(Address+i

16、); Ack(); Send(*(PData+i); Ack(); Stop(); mDelay(20); void RdFromROM(uchar Data,uchar Address,uchar Num) uchar i; uchar *PData; PData=Data; for(i=0;i0;x-) for(y=110;y0;y-);/-寫指令-write_1602com(uchar com)/*液晶寫入指令函數(shù)*lcd1602_rs=0;/數(shù)據(jù)/指令選擇置為指令lcd1602_rw=0; /讀寫選擇置為寫P0=com;/送入數(shù)據(jù)delay(1);lcd1602_en=1;/拉高使能端

17、,為制造有效的下降沿做準(zhǔn)備delay(1);lcd1602_en=0;/en由高變低,產(chǎn)生下降沿,液晶執(zhí)行命令/-寫數(shù)據(jù)-write_1602dat(uchar dat)/*液晶寫入數(shù)據(jù)函數(shù)*lcd1602_rs=1;/數(shù)據(jù)/指令選擇置為數(shù)據(jù)lcd1602_rw=0; /讀寫選擇置為寫P0=dat;/送入數(shù)據(jù)delay(1);lcd1602_en=1; /en置高電平,為制造下降沿做準(zhǔn)備delay(1);lcd1602_en=0; /en由高變低,產(chǎn)生下降沿,液晶執(zhí)行命令/-初始化-void lcd_init(void)write_1602com(0x38);/設(shè)置液晶工作模式,意思:16*2

18、行顯示,5*7點(diǎn)陣,8位數(shù)據(jù)write_1602com(0x0c);/開顯示不顯示光標(biāo)write_1602com(0x06);/整屏不移動(dòng),光標(biāo)自動(dòng)右移write_1602com(0x01);/清顯示/=將按鍵值編碼為數(shù)值=unsigned char coding(unsigned char m) unsigned char k;switch(m)case (0x18): k=1;break;case (0x28): k=2;break;case (0x48): k=3;break;case (0x88): k=A;break;case (0x14): k=4;break;case (0x24

19、): k=5;break;case (0x44): k=6;break;case (0x84): k=B;break;case (0x12): k=7;break;case (0x22): k=8;break;case (0x42): k=9;break;case (0x82): k=C;break;case (0x11): k=*;break;case (0x21): k=0;break;case (0x41): k=#;break;case (0x81): k=D;break;return(k);/=按鍵檢測(cè)并返回按鍵值=unsigned char keynum(void) unsigne

20、d char row,col,i; P1=0xf0; if(P1&0xf0)!=0xf0) Delay5Ms(); Delay5Ms(); if(P1&0xf0)!=0xf0) row=P10xf0; /確定行線i=0;P1=ai; /精確定位while(i4) if(P1&0xf0)!=0xf0) col=(P1&0xff); /確定列線 break; /已定位后提前退出 else i+; P1=ai; else return 0;while(P1&0xf0)!=0xf0);return (row|col); /行線與列線組合后返回 else return 0; /無(wú)鍵按下時(shí)返回0/=一聲提

21、示音,表示有效輸入=void OneAlam(void)ALAM=0;Delay5Ms(); ALAM=1;/=二聲提示音,表示操作成功=void TwoAlam(void)ALAM=0;Delay5Ms(); ALAM=1; Delay5Ms();ALAM=0;Delay5Ms(); ALAM=1;/=三聲提示音,表示錯(cuò)誤=void ThreeAlam(void)ALAM=0;Delay5Ms(); ALAM=1; Delay5Ms();ALAM=0;Delay5Ms(); ALAM=1; Delay5Ms();ALAM=0;Delay5Ms(); ALAM=1;/=顯示輸入的N個(gè)數(shù)字,用H

22、代替以便隱藏=void DisplayOne(void)/DisplayOneChar(9+N,1,*);write_1602com(yi+5+N);write_1602dat(*);/=顯示提示輸入=void DisplayChar(void)unsigned char i;if(pass=1)/DisplayListChar(0,1,LockOpen);write_1602com(er);for(i=0;i16;i+)write_1602dat(LockOpeni);elseif(N=0)/DisplayListChar(0,1,Error);write_1602com(er);for(i

23、=0;i16;i+)write_1602dat(Errori);else/DisplayListChar(0,1,start_line);write_1602com(er);for(i=0;i16;i+)write_1602dat(start_linei);void DisplayInput(void)unsigned char i;if(CorrectCont=1)/DisplayListChar(0,0,Input);write_1602com(er);for(i=0;i16;i+)write_1602dat(Inputi);/=重置密碼=/=void ResetPassword(void

24、)unsigned char i;unsigned char j;if(pass=0)pass=0;DisplayChar();ThreeAlam();else if(ReInputEn=1)if(N=6)ReInputCont+;if(ReInputCont=2)for(i=0;i6;)if(TempPasswordi=InputDatai)/將兩次輸入的新密碼作對(duì)比i+;else/DisplayListChar(0,1,Error);write_1602com(er);for(j=0;j16;j+)write_1602dat(Errorj);ThreeAlam();/錯(cuò)誤提示pass=0;

25、ReInputEn=0;/關(guān)閉重置功能,ReInputCont=0;DisplayChar();break; if(i=6)/DisplayListChar(0,1,ResetOK);write_1602com(er);for(j=0;j16;j+)write_1602dat(ResetOKj);TwoAlam();/操作成功提示 WrToROM(TempPassword,0,6);/將新密碼寫入24C02存儲(chǔ)ReInputEn=0;ReInputCont=0;CorrectCont=0;elseOneAlam();/DisplayListChar(0, 1, again); /顯示再次輸入一

26、次write_1602com(er);for(j=0;j16;j+)write_1602dat(againj);for(i=0;i6;i+)TempPasswordi=InputDatai;/將第一次輸入的數(shù)據(jù)暫存起來(lái)N=0;/輸入數(shù)據(jù)位數(shù)計(jì)數(shù)器清零 /=輸入密碼錯(cuò)誤超過(guò)三過(guò),報(bào)警并鎖死鍵盤=void Alam_KeyUnable(void)P1=0x00;ALAM=ALAM;Delay5Ms();/=取消所有操作=void Cancel(void)unsigned char i;unsigned char j;/DisplayListChar(0, 1, start_line); write

27、_1602com(er);for(j=0;j16;j+)write_1602dat(start_linej);TwoAlam();/提示音for(i=0;i6;i+)InputDatai=0;KEY=1;/關(guān)閉鎖ALAM=1;/報(bào)警關(guān)operation=0;/操作標(biāo)志位清零pass=0;/密碼正確標(biāo)志清零ReInputEn=0;/重置輸入充許標(biāo)志清零ErrorCont=0;/密碼錯(cuò)誤輸入次數(shù)清零CorrectCont=0;/密碼正確輸入次數(shù)清零ReInputCont=0;/重置密碼輸入次數(shù)清零 open_led=1;s3_keydown=0;key_disable=0;N=0;/輸入位數(shù)計(jì)數(shù)器

28、清零/=確認(rèn)鍵,并通過(guò)相應(yīng)標(biāo)志位執(zhí)行相應(yīng)功能=void Ensure(void)unsigned char i,j;RdFromROM(CurrentPassword,0,6); /從24C02里讀出存儲(chǔ)密碼 if(N=6) if(ReInputEn=0)/重置密碼功能未開啟for(i=0;i6;) if(CurrentPasswordi=InputDatai)i+;else ErrorCont+;if(ErrorCont=3)/錯(cuò)誤輸入計(jì)數(shù)達(dá)三次時(shí),報(bào)警并鎖定鍵盤write_1602com(er);for(i=0;i16;i+)write_1602dat(Errori);doAlam_Key

29、Unable();while(1);elseTR0=1;/開啟定時(shí)key_disable=1;/鎖定鍵盤pass=0;break;if(i=6)CorrectCont+;if(CorrectCont=1)/正確輸入計(jì)數(shù),當(dāng)只有一次正確輸入時(shí),開鎖,/DisplayListChar(0,1,LockOpen);write_1602com(er);for(j=0;j16;j+)write_1602dat(LockOpenj);TwoAlam();/操作成功提示音KEY=0;/開鎖pass=1;/置正確標(biāo)志位TR0=1;/開啟定時(shí)open_led=0;/開鎖指示燈亮for(j=0;j6;j+)/將輸

30、入清除InputDatai=0;else/當(dāng)兩次正確輸入時(shí),開啟重置密碼功能/DisplayListChar(0,1,SetNew);write_1602com(er);for(j=0;j16;j+)write_1602dat(SetNewj);TwoAlam(); /操作成功提示ReInputEn=1;/允許重置密碼輸入CorrectCont=0;/正確計(jì)數(shù)器清零 else/=當(dāng)?shù)谝淮问褂没蛲浢艽a時(shí)可以用對(duì)其密碼初始化=if(InputData0=1)&(InputData1=3)&(InputData2=1)&(InputData3=4)&(InputData4=2)&(InputDat

31、a5=0) WrToROM(initpassword,0,6); /強(qiáng)制將初始密碼寫入24C02存儲(chǔ)/DisplayListChar(0,1,initword);/顯示初始化密碼write_1602com(er);for(j=0;j16;j+)write_1602dat(initwordj);TwoAlam();Delay400Ms();TwoAlam();N=0;else/DisplayListChar(0,1,Error);write_1602com(er);for(j=0;j16;j+)write_1602dat(Errorj); ThreeAlam();/錯(cuò)誤提示音pass=0;els

32、e/當(dāng)已經(jīng)開啟重置密碼功能時(shí),而按下開鎖鍵,/DisplayListChar(0,1,Er_try);write_1602com(er);for(j=0;j16;j+)write_1602dat(Er_tryj);ThreeAlam();else/DisplayListChar(0,1,Error);write_1602com(er);for(j=0;j16;j+)write_1602dat(Errorj); ThreeAlam();/錯(cuò)誤提示音pass=0;N=0;/將輸入數(shù)據(jù)計(jì)數(shù)器清零,為下一次輸入作準(zhǔn)備operation=1;/=主函數(shù)=void main(void) unsigned

33、char KEY,NUM;unsigned char i,j; P1=0xFF; TMOD=0x11; TL0=0xB0; TH0=0x3C; EA=1; ET0=1; TR0=0; Delay400Ms(); /啟動(dòng)等待,等LCM講入工作狀態(tài) lcd_init(); /LCD初始化write_1602com(yi);/日歷顯示固定符號(hào)從第一行第0個(gè)位置之后開始顯示for(i=0;i16;i+)write_1602dat(namei);/向液晶屏寫日歷顯示的固定符號(hào)部分write_1602com(er);/時(shí)間顯示固定符號(hào)寫入位置,從第2個(gè)位置后開始顯示for(i=0;i16;i+)write

34、_1602dat(start_linei);/寫顯示時(shí)間固定符號(hào),兩個(gè)冒號(hào)write_1602com(er+9);/設(shè)置光標(biāo)位置write_1602com(0x0f);/設(shè)置光標(biāo)為閃爍 Delay5Ms(); /延時(shí)片刻(可不要) N=0;/初始化數(shù)據(jù)輸入位數(shù) while(1) if(key_disable=1)Alam_KeyUnable();elseALAM=1;/關(guān)報(bào)警KEY=keynum();if(KEY!=0)if(key_disable=1)second=0;elseNUM=coding(KEY);switch(NUM)case (A): ; break;case (B):; break;case (C): ; break;case (D): ResetPassword();break; /重新設(shè)置密碼case (*): Cancel();break; /取消當(dāng)前輸入case (#): Ensure(); break; /

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論