基于51單片機課程設計--基于51單片機的紅外線設計_第1頁
已閱讀1頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  基于51單片機課程設計報告</p><p>  項目題目:基于51單片機的紅外線設計 </p><p>  專 業(yè): 通信工程</p><p>  姓 名: </p><p>  學 號: </p><p>

2、;  指導教師: </p><p>  2012/12/11</p><p><b>  一、摘要</b></p><p>  本設計以STC89C51單片機為核心的溫度控制系統(tǒng)的工作原理和設計方法。溫度信號由溫度芯片DS18B20采集,并以數(shù)字信號的方式傳送給單片機。文中介紹了該控制系統(tǒng)的硬件部分,包括:溫度檢測電路、溫度控制電路。

3、單片機通過對信號進行相應處理,從而實現(xiàn)溫度控制的目的。文中還著重介紹了軟件設計部分,在這里采用模塊化結(jié)構(gòu),主要模塊有:數(shù)碼管顯示程序、鍵盤掃描及按鍵處理程序、溫度信號處理程序、led控制程序、超溫報警程序。</p><p>  關鍵詞:STC89C51單片機 DS18B20溫度芯片 溫度控制 ,LED報警提示.</p><p><b>  二、系統(tǒng)方案的設計</b>&

4、lt;/p><p><b>  1、設計要求</b></p><p><b>  基本功能:</b></p><p>  不加熱時實時顯示時間,并可手動設置時間;</p><p>  設定加熱水溫功能。人工設定熱水器燒水的溫度,范圍在20~70度之間,打開開關后,根據(jù)設定溫度與水溫確定是否加熱,及何時停

5、止加熱,可實時顯示溫度;</p><p>  設定加熱時間功能。限定燒水時間,加熱時間內(nèi)超過溫度上限或低于溫度下限報警,并可實時顯示溫度。</p><p><b>  2、系統(tǒng)設計的框架</b></p><p>  本課題設計的是一種以STC89C51單片機為主控制單元,以DS18B20為溫度傳感器的溫度控制系統(tǒng)。該控制系統(tǒng)可以實時存儲相關的溫

6、度數(shù)據(jù)并記錄當前的時間。其主要包括:電源模塊、溫度測量及調(diào)理電路、鍵盤、數(shù)碼管顯示、指示燈、報警、繼電器及單片機最小系統(tǒng)。</p><p><b>  圖1 系統(tǒng)設計框架</b></p><p><b>  3 工作原理</b></p><p>  溫度傳感器 DS18B20 從設備環(huán)境的不同位置采集溫度,單片機STC89

7、51 獲</p><p>  取采集的溫度值,經(jīng)處理后得到當前環(huán)境中一個比較穩(wěn)定的溫度值,再根據(jù)當前設定的溫度上下限值,通過加熱和降溫對當前溫度進行調(diào)整。當采集的溫度經(jīng)處理后超過設定溫度的上限時,單片機通過三極管驅(qū)動繼電器開啟降溫設備 (壓縮制冷器) ,當采集的溫度經(jīng)處理后低于設定溫度的下時 , 單片機通過三極管驅(qū)動繼電器開啟升溫設備 (加熱器) ,這里采用通過LED1和LED2取代!??!</p>

8、<p>  當由于環(huán)境溫度變化太劇烈或由于加熱或降溫設備出現(xiàn)故障,或者溫度傳感頭出現(xiàn)故障導致在一段時間內(nèi)不能將環(huán)境溫度調(diào)整到規(guī)定的溫度限內(nèi)的時候,單片機通過三極管驅(qū)動揚聲器發(fā)出警笛聲,這里采用HLLED提示。</p><p><b>  三、硬件資源</b></p><p><b>  1、器件選擇:</b></p>&l

9、t;p>  1.51單片機一塊STC89c51</p><p>  STC8951 是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含8k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及STC8951引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flas

10、h存儲單元,功能強大的微型計算機的STC8951可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案。STC8951具有如下特點:40個引腳,8k Bytes Flash片內(nèi)程序存儲器,128 bytes的隨機存取數(shù)據(jù)存儲器(RAM),32個外部雙向輸入/輸出(I/O)口,5個中斷優(yōu)先級2層中斷嵌套中斷,2個16位可編程定時計數(shù)器,2個全雙工串行通信,片內(nèi)時鐘振蕩器。</p><p>  此外,STC8951設計和配

11、置了振蕩頻率可為0Hz并可通過軟件設置省電模式。空閑模式下,CPU暫停工作,而RAM定時計數(shù)器,串行口,外中斷系統(tǒng)可繼續(xù)工作,掉電模式凍結(jié)振蕩器而保存RAM的數(shù)據(jù),停止芯片其它功能直至外中斷激活或硬件復位。同時該芯片還具有PDIP、TQFP和PLCC等三種封裝形式,以適應不同產(chǎn)品的需求。</p><p>  由于系統(tǒng)控制方案簡單 ,數(shù)據(jù)量也不大 ,考慮到電路的簡單和成本等因素 ,因此在本設計中選用 STC8951

12、單片機作為主控芯片。主控模塊采用單片機最小系統(tǒng)是由于STC8951芯片內(nèi)含有8 kB的 E2PROM ,無需外擴存儲器 ,電路簡單可靠 ,其時鐘頻率為 0~24 MHz ,并且價格低廉 ,批量價在 10元以內(nèi)。</p><p>  其單片機的外圍引腳有40個,分別是:第20腳和40腳分別是電源,即GND和Vcc;第9腳是復位腳RST;第18腳是時鐘XTAL2腳,片內(nèi)振蕩電路的輸出端;第19腳是時鐘XTAL1腳,片

13、內(nèi)振蕩電路的輸入端;第29腳:~PSEN腳,當訪問外部程序存儲器時,此引腳輸出負脈沖選通信號,PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上;第30腳:ALE/~PROG,當訪問外部數(shù)據(jù)存儲器時,ALE(地址鎖存)的輸出用于鎖存地址的低字節(jié);第31腳:~EA/Vpp為程序存儲器內(nèi)外部選通信號;P0^0-P0^7.P1^0-P1^7.P2^0-P2^7.P3^0-P3^7.這32個引腳為數(shù)據(jù)的輸出及輸入引腳,即I/0口;單片機圖如下:<

14、/p><p>  2、8位7段共陰數(shù)碼管一個</p><p>  7段數(shù)碼管一般由8個發(fā)光二極管組成,其中由7個細長的發(fā)光二極管組成數(shù)字顯示,另外一個圓形的發(fā)光二極管顯示小數(shù)點。</p><p>  當發(fā)光二極管導通時,相應的一個點或一個筆畫發(fā)光??刂葡鄳亩O管導通,就能顯示出各種字符,盡管顯示的字符形狀有些失真,能顯示的數(shù)符數(shù)量也有限,但其控制簡單,使有也方便。發(fā)光

15、二極管的陽極連在一起的稱為共陽極數(shù)碼管,陰極連在一起的稱為共陰極數(shù)碼管。 </p><p>  3、溫度顯示DS18B20一個</p><p>  DS18B20采用3腳TO-92封裝或8腳的SOIC封裝,如圖1所示。各引腳的功能:GND為電壓地;DQ為單數(shù)據(jù)總線;V為電源電壓;NC為空引腳。</p><p>  圖1DS18B20引腳圖</p>&l

16、t;p>  DS18B20的DQ單數(shù)據(jù)總線與單片機P3.7連接,GND電壓地、V電源電壓分別和電壓地和5伏直流電源連接。本文設計的系統(tǒng)主機只對一個DS18B20進行操作,因此不需要讀取ROM編碼以及匹配ROM編碼,只要跳過ROM命令,就可以進行如下溫度轉(zhuǎn)換和讀取操作。</p><p>  (1)CCH—跳過ROM,直接向DS18B20發(fā)送溫度變換命令。</p><p>  (2)44

17、H—讀暫存器。讀內(nèi)部RAM中9字節(jié)的溫度數(shù)據(jù)。</p><p>  (3)BEH—寫暫存器。發(fā)出向內(nèi)部RAM的第2、3字節(jié)寫上、下限溫度數(shù)據(jù)命令,緊跟該命令之后,再傳送兩字節(jié)數(shù)據(jù)。</p><p>  DS18B20在出廠時默認配置為12位,其中最高位為符號位,即溫度值共11位,單片機在讀取數(shù)據(jù)時,一次會讀兩字節(jié)共16位,讀完后將低11位的二進制數(shù)轉(zhuǎn)換為十進制后再乘以0.0625變?yōu)樗鶞y的

18、溫度值。另外,還需要判斷溫度的正負。前5個數(shù)字為符號位,這5位同時變化,我們只需判斷11位就可以了。前5位為1時,讀取的溫度為負值,且測到的數(shù)值需要取反再加一再乘以0.0625才可以得到實際的溫度值。前5位為0時,讀取的溫度為正值,只要將測得的數(shù)值乘以0.0625即可得到實際溫度值。</p><p>  由于提前給DS18B20賦了上限、下限值,所以當溫度超過上限或者不足下限時,會伴有LED燈閃爍和蜂鳴器響作為警

19、報。</p><p>  4、74HC573鎖存器</p><p>  高性能硅門 CMOS 器件</p><p>  SL74HC573 跟 LS/AL573 的管腳一樣。器件的輸入是和標準 CMOS 輸出兼容的;加上拉電阻,他們能和 LS/ALSTTL 輸出兼容。</p><p>  當鎖存使能端LE為高時,這些器件的鎖存對于數(shù)據(jù)是透明的

20、(也就是說輸出同步)相當于圖上的Dx-Qx相通,I/0口可以進行數(shù)據(jù)交換。當鎖存使能變低時,符合建立時間和保持時間的數(shù)據(jù)會被鎖存。在這里我們是將LE接高電平,把鎖存器當作驅(qū)動器,驅(qū)動數(shù)碼管的顯示;</p><p><b>  5、晶振</b></p><p>  其晶振的運用,在這地方我們用的是12MHz,主要用在單片機的最小系統(tǒng)中。</p><p

21、><b>  四、程序流程圖</b></p><p><b>  五、參考文獻</b></p><p>  [1] 馬彪 《單片機應用技術》 同濟大學出版社 </p><p>  [2] 郭天祥 《 51單片機C語言教程》 電子工業(yè)出版社 </p><p

22、>  [3] 陳海宴 《51單片機原理及應用》 北京航空航天大學出版社 </p><p><b>  附錄:</b></p><p><b>  1:main主函數(shù)</b></p><p>  #include"ds18b.h"</p><p>  #inc

23、lude<reg52.h></p><p>  sbit add=P3^0;//加</p><p>  sbit cut=P3^1;//減</p><p>  sbit set=P3^2;//設置 </p><p>  sbit p00=P0^0; sbit p01=P0^1; sbit p02=

24、P0^2; sbit p03=P0^3; // //位選控制 聲明</p><p>  sbit p04=P0^4; sbit p05=P0^5; sbit p06=P0^6; sbit p07=P0^7;</p><p>  sbit Lled=P2^0;//低于溫度下限值 此燈點亮</p><p>  sbit Hled=P2^1

25、; //高于溫度上限值 此燈點亮</p><p>  sbit LHled=P2^2; // 達到加熱預設時間此燈點亮</p><p>  unsigned char tab4[4]={0}; // 定義一個tab4號數(shù)組用來存放溫度的上限值與下限值</p><p>  unsigned char tab8[9]={0};

26、 //</p><p>  unsigned char tab9[6]={0}; // 定義一個tab9號數(shù)組用來存放用戶的給定的加熱時間</p><p>  unsigned char code tab7[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F}; //位選控制 查表的方法控制</p>&l

27、t;p>  unsigned char code tab[]={0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6};//共陽數(shù)碼管數(shù)字碼</p><p>  uchar tab1[]={0,0,0,0,0,0,0,0,0,0,0,0,0,0}; //定義一個tab1號數(shù)組用來存放溫度轉(zhuǎn)換值</p><p>  unsigned

28、 char shi=10,fen=35,miao,L; //你懂得 不用多講</p><p>  unsigned char LED; //定義一個char變量用來控制數(shù)碼管上的秒的閃爍</p><p>  unsigned char tt,i,flag=0;</p><p>  unsigned int wen; //定義一個

29、無符號整形變量用來存放溫度返回值</p><p>  unsigned char TH,TL; //存放用戶的設定的溫度上下限值</p><p>  void delay (unsigned int Z)// 延時函數(shù)</p><p><b>  {</b></p><p>  unsigned int

30、 x,y;</p><p>  for(x=Z;x>0;x--)</p><p>  for(y=110;y>0;y--);</p><p><b>  }</b></p><p>  void init ()//初始化 </p><p><b>  {</b&

31、gt;</p><p><b>  P2=0xff;</b></p><p><b>  P3=0xff;</b></p><p>  TMOD=0x11; //開啟定時器 0,1</p><p>  TH1=(65536-5000)/256;//5Ms</p><p> 

32、 TL1=(65536-5000)%256;</p><p><b>  EA=1;</b></p><p>  ET1=1;//你懂得不用多講</p><p><b>  TR1=1;</b></p><p>  TH0=(65536-50000)/256;//50Ms</p>&

33、lt;p>  TL0=(65536-50000)%256;</p><p>  ET0=1; //你懂得不用多講</p><p><b>  TR0=1;</b></p><p><b>  }</b></p><p>  void main ()</p><p>&

34、lt;b>  {</b></p><p>  init (); //初始化I/O端口即定時器0.1;</p><p><b>  while(1)</b></p><p><b>  { </b></p><p>  if((flag==0)||(flag==1)) //當

35、第一次按下設置鍵 進入手動設置當前時間</p><p><b>  {</b></p><p>  tab8[4]=fen/10; tab8[5]=fen%10; tab8[6]=shi/10;tab8[7]=shi%10;</p><p>  wen=dispaly();</p><p>  tab1[2]=wen/1

36、00;</p><p>  tab1[1]=wen%100/10; //你懂得不用多講</p><p>  tab1[0]=wen%10;</p><p>  tab8[8]=tab1[2]*10+tab1[1];</p><p>  for(L=0;L<50;L++)</p><p>  for(i=0;i

37、<8;i++)</p><p><b>  {</b></p><p><b>  P1=0;</b></p><p>  P1=tab[tab1[1]];p00=0;p01=1;p02=1;p03=1;p04=1;p05=1;p06=1;p07=1;delay_ms(2);</p><p>

38、;  P1=tab[tab1[2]]; p00=1;p01=0;p02=1;p03=1;p04=1;p05=1;p06=1;p07=1; delay_ms(2);</p><p>  if(LED>=20) { P1=0x02; p00=1;p01=1;p02=1;p03=1;p04=1;p05=0;p06=1;p07=1; delay_ms(2); }</p>&l

39、t;p>  if(LED>=40) { LED=0; P1=0x02; p00=1;p01=1;p02=1;p03=1;p04=1;p05=1;p06=1;p07=1; delay_ms(2); }</p><p>  if(flag==1) { P1=0x02; p00=1;p01=1;p02=1;p03=1;p04=1;p05=0;p06=1;p07=1;

40、delay_ms(2); }</p><p>  P1=tab[tab8[6]];p00=1;p01=1;p02=1;p03=1;p04=1;p05=1;p06=1;p07=0; delay_ms(2); </p><p>  P1=tab[tab8[7]];p00=1;p01=1;p02=1;p03=1;p04=1;p05=1;p06=0;p07=1; delay_ms(2); &l

41、t;/p><p>  P1=0x9c; p00=1;p01=1;p02=0;p03=1;p04=1;p05=1;p06=1;p07=1; delay_ms(2);</p><p>  P1=tab[tab8[4]];p00=1;p01=1;p02=1;p03=1;p04=0;p05=1;p06=1;p07=1; delay_ms(2); </p><p&g

42、t;  P1=tab[tab8[5]];p00=1;p01=1;p02=1;p03=0;p04=1;p05=1;p06=1;p07=1; delay_ms(2); </p><p><b>  } </b></p><p><b>  }</b></p><p>  if((flag==2)|(flag==3))//當?shù)?/p>

43、二或者第三次按下設置鍵 進入溫度上下限門檻設置</p><p><b>  {</b></p><p>  tab4[2]=tab8[2]/100; tab4[1]=tab8[2]%100/10; tab4[0]=tab8[2]%10; //Htab[2]</p><p>  tab4[6]=tab8[3]/100; tab4[5]=ta

44、b8[3]%100/10; tab4[4]=tab8[3]%10;//L tab[3]</p><p>  for(i=0;i<8;i++)</p><p>  { //動態(tài)掃描</p><p>  P1=tab[tab4[i]]; if(i==3) P1=0x6e ; if(i==7) P1=0x1c ;</p><

45、;p>  P0=tab7[i];</p><p><b>  delay(5);</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(flag==4)//當?shù)谒拇伟聪略O置鍵 進入用戶給定加熱時間設置</p

46、><p><b>  {</b></p><p>  tab9[1]=TL%10;tab9[2]=TL/10;tab9[4]=TH%10;tab9[5]=TH/10; </p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p

47、>  P1=tab[tab9[i]]; if((i==3)||(i==0)) P1=0x02; if((i==7)||(i==6)) P1=0x02;</p><p>  P0=tab7[i];</p><p><b>  delay(5);</b></p><p><b>  }</b></p>&

48、lt;p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void timer1() interrupt 3</p><p><b>  {</b></p>&

49、lt;p>  TH0=(65536-5000)/256;//5Ms</p><p>  TL0=(65536-5000)%256; </p><p>  //開辟一個每隔5Ms掃描按鍵 檢測是否郵件按下</p><p>  if(add==0) { delay(10); if(add==0){

50、 while(!add) ; if(flag==4)TL++;if(flag==1) {fen++; if(fen==60) fen=0;}if (flag==2)tab8[2]++;if(flag==3)tab8[3]++;} }</p><p><b>  //你懂得不用多講</b></p><p>  if(cut==0) { delay(10);

51、if(cut==0){ while(!cut) ; if(flag==4)TH++;if(flag==1) {shi++; if(shi==24) shi=0;}if (flag==2)tab8[2]--; if(flag==3)tab8[3]--;} }</p><p><b>  //你懂得不用多講</b></p><p>  if(set==0)

52、{ delay(10); if(set==0){ while(!set) ;flag++;if(flag==5)flag=0; } } </p><p>  if(flag==1) { TR0=0; } if(flag==3) { TR0=1; }//當?shù)谝淮伟聪略O置鍵關閉定時器0,</p><p>  if(tab8[8]<=tab

53、8[3]) Lled=0; else Lled =1; //判斷當前溫度是否低于預設溫度 若是開啟LED提示</p><p>  if(tab8[8]>=tab8[2])Hled=0; else Hled =1; ////你懂得不用多講</p><p>  if(TL>=60) TL=0; if(TH>=24) TH=0;</p><

54、;p>  if((fen>=TL)&&(shi>=TH)) LHled=0; else LHled=1; //判斷用戶預設加熱時間是否達到 若是 開啟LED</p><p><b>  }</b></p><p>  void timer0() interrupt 1</p><p><

55、b>  { </b></p><p>  TH1=(65536-50000)/256;</p><p>  TL1=(65536-50000)%256;//你懂得不用多講 </p><p>  tt++; LED++;</p><p>  if(tt>=

56、18) {tt=0;miao++; }</p><p>  if(miao==60) {fen++; miao=0;}</p><p>  if(fen==60){shi++; fen=0;} </p><p>  if(shi==24) shi=0; </p><p><b>  }</b></p>

57、;<p>  2:ds18B20.h庫文件 </p><p>  #include"ds18b.h"</p><p>  #include<reg52.h></p><p>  #include<intrins.h></p><p>  #define uchar unsigned

58、 char </p><p>  #define uint unsigned int </p><p>  sbit DQ=P3^7; //// 定義p37用來操控DS18B20</p><p>  void delay_us(uint a) //微妙機延時子函數(shù)</p><p><b>  {</b></

59、p><p><b>  do</b></p><p><b>  {</b></p><p>  _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); </p><p>  }while(--a);</p&

60、gt;<p><b>  }</b></p><p>  void delay_ms(uint a) //毫秒級延時子函數(shù)</p><p><b>  {</b></p><p>  uchar x,y;</p><p>  for(x=a;x>0;x--)</p>

61、<p>  for(y=110;y>0;y--);</p><p><b>  }</b></p><p>  uchar ds18b20_reset()//復位DS18B20</p><p><b>  {</b></p><p><b>  uchar a;<

62、/b></p><p><b>  DQ=0;</b></p><p>  delay_us(60);</p><p><b>  DQ=1;</b></p><p>  delay_us(9);</p><p><b>  if(DQ)</b>&

63、lt;/p><p><b>  a=1;</b></p><p>  delay_ms(2);</p><p><b>  return a;</b></p><p><b>  }</b></p><p>  void ds18b20_write(ucha

64、r a) //寫</p><p><b>  {</b></p><p><b>  uchar i;</b></p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p><b>  D

65、Q=0;</b></p><p>  if(a&0x01)</p><p><b>  DQ=1;</b></p><p><b>  else</b></p><p><b>  DQ=0;</b></p><p>  delay_

66、us(5);</p><p>  DQ=1;//至高下一位數(shù)據(jù)準備</p><p><b>  a>>=1;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  uchar ds18b2

67、0_read() //讀</p><p><b>  {</b></p><p>  uchar j,b;</p><p>  for(j=0;j<8;j++)</p><p><b>  {</b></p><p><b>  DQ=0;</b>

68、</p><p><b>  b>>=1;</b></p><p><b>  DQ=1;</b></p><p><b>  if(DQ)</b></p><p><b>  b=b|0x80;</b></p><p>

69、;  delay_us(2);</p><p>  DQ=1;//至高為下一位數(shù)據(jù) 準備</p><p><b>  }</b></p><p><b>  return b;</b></p><p><b>  }</b></p><p>  uns

70、igned int dispaly() ///啟動溫度轉(zhuǎn)化 并返回溫度轉(zhuǎn)換至</p><p><b>  {</b></p><p><b>  uint H,L;</b></p><p>  ds18b20_reset();</p><p>  ds18b20_write(0xcc);&l

71、t;/p><p>  ds18b20_write(0x44);</p><p>  delay_ms(20);</p><p>  ds18b20_reset();</p><p>  ds18b20_write(0xcc);</p><p>  ds18b20_write(0xbe);</p><p&

72、gt;  L= ds18b20_read();</p><p>  H= ds18b20_read();</p><p>  H=H*256+L;</p><p>  H=H*0.625;</p><p>  return H;</p><p><b>  }</b></p>&

73、lt;p>  3:18B20頭文件</p><p>  #ifndef __DS18B20_H__</p><p>  #define __DS18B20_H__</p><p>  #define uchar unsigned char </p><p>  #define uint unsigned int </p>

溫馨提示

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

評論

0/150

提交評論