基于FPGA的數(shù)字溫度計(jì)_第1頁
基于FPGA的數(shù)字溫度計(jì)_第2頁
基于FPGA的數(shù)字溫度計(jì)_第3頁
基于FPGA的數(shù)字溫度計(jì)_第4頁
基于FPGA的數(shù)字溫度計(jì)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)1 題目要求基本要求:基于FPGA設(shè)計(jì)一個(gè)測(cè)量室溫的溫度計(jì),能夠?qū)崟r(shí)的顯示溫度。附加功能:、達(dá)到設(shè)置的預(yù)定溫度值可報(bào)警;、統(tǒng)計(jì)溫度測(cè)量期內(nèi)的最高溫以及最低溫 提供硬件:cyclone EP1C6Q240C8N開發(fā)板開發(fā)板資源:按鍵四個(gè);共陽數(shù)碼管四位;PS2接口;USB接口;蜂鳴器;四位撥碼開關(guān);LCD1602;VGA接口;RS232接口;FLASH;SDRAM;2 設(shè)計(jì)方案(或設(shè)計(jì)分析)外設(shè):鑒于要測(cè)量溫度,而開發(fā)板沒有測(cè)量溫度的設(shè)備,所以最基本是要添加外設(shè)數(shù)字溫度傳

2、感器ds18b20。.ds18b20外形與三極管一樣,一只腳傳輸數(shù)據(jù),另外兩只腳分別接地與高電平使之工作。Ds18b20實(shí)時(shí)測(cè)得的室溫將轉(zhuǎn)化成9到2位的串行數(shù)據(jù),對(duì)串行數(shù)據(jù)進(jìn)行“翻譯”就可以得出實(shí)時(shí)室溫。傳輸途徑:傳輸途徑是指9到12位的串行數(shù)據(jù)傳輸,我們考慮兩種傳輸途徑,一種是無線傳輸,一種是有限傳輸。如果是無線傳輸就會(huì)使成品溫度記的測(cè)溫更加靈活方便,不局限于線的長度,但必須再增加外設(shè),而且編程肯定會(huì)更難更復(fù)雜,所以我們的初始方案是第二種,就是有線傳輸,在實(shí)現(xiàn)了基本測(cè)溫功能之后如果有時(shí)間就再設(shè)計(jì)無線發(fā)送接收的模塊。連接:開發(fā)板上提供了眾多的引腳,我們只需選擇其中一個(gè)接口與ds18b20的傳輸

3、腳連接,將開發(fā)板上的地和+5v與ds18b20的其他兩腳連接就可完成外圍電路的連接,這個(gè)雖然比較簡單,但是在調(diào)試階段我們的連接還是忽略了一點(diǎn)問題,這將在設(shè)計(jì)中遇到的問題中述說。程序的編寫:程序的編寫我們打算用模塊化得方式??偟膩碚f數(shù)字溫度記程序的設(shè)計(jì)不算復(fù)雜,不分模塊寫下來應(yīng)該也不會(huì)難以讀懂,但模塊化的程序編寫的一個(gè)良好習(xí)慣,這樣在編寫復(fù)雜程序的時(shí)候才會(huì)調(diào)理清晰容易讀懂,而且模塊化有利于組內(nèi)分工,充分調(diào)動(dòng)大家,積極參與到課程設(shè)計(jì)中。而程序的分塊將在模塊實(shí)現(xiàn)中分析。附加功能:在實(shí)現(xiàn)基本測(cè)溫功能的前提下,我們考慮使其功能更強(qiáng)大更切合實(shí)際,所以打算添加功能,一個(gè)是警報(bào)功能,就是溫度達(dá)到某個(gè)設(shè)定的溫度

4、時(shí)使蜂鳴器響一聲并使燈亮;另一個(gè)功能是最高溫與最低溫的記錄,在不按按鍵的時(shí)候顯示的是實(shí)時(shí)室溫,在按下一個(gè)或者兩個(gè)按鍵時(shí)可以分別顯示溫度計(jì)啟動(dòng)開始到目前為止的最高室溫與最低室溫。3 模塊實(shí)現(xiàn)分析:首先要對(duì)DS18B20的外圍電路進(jìn)行配置:Ds18b20的工作方式看似簡單,只是單線傳輸,直接解讀,其實(shí)初始化與讀寫操作比較復(fù)雜,時(shí)序要求非常精確,如下面圖片所示:初始化:讀寫:寫時(shí)間隙當(dāng)主機(jī)把數(shù)據(jù)線從邏輯高電平拉到邏輯低電平的時(shí)候,寫時(shí)間隙開始。有兩種寫時(shí)間隙:寫1 時(shí)間隙和寫0 時(shí)間隙。所有寫時(shí)間隙必須最少持續(xù)60s,包括兩個(gè)寫周期間至少1s 的恢復(fù)時(shí)間。I/O 線電平變低后,DS1820 在一個(gè)1

5、5s 到60s 的窗口內(nèi)對(duì)I/O 線采樣。如果線上是高電平,就是寫1,如果線上是低電平,就是寫0。主機(jī)要生成一個(gè)寫1時(shí)間隙,必須把數(shù)據(jù)線拉到低電平然后釋放,在寫時(shí)間隙開始后的15s內(nèi)允許數(shù)據(jù)線拉到高電平。主機(jī)要生成一個(gè)寫 0 時(shí)間隙,必須把數(shù)據(jù)線拉到低電平并保持60s。讀時(shí)間隙當(dāng)從 DS1820 讀取數(shù)據(jù)時(shí),主機(jī)生成讀時(shí)間隙。當(dāng)主機(jī)把數(shù)據(jù)線從高高平拉到低電平時(shí),寫時(shí)間隙開始。數(shù)據(jù)線必須保持至少1s;從DS1820 輸出的數(shù)據(jù)在讀時(shí)間隙的下降沿出現(xiàn)后15s 內(nèi)有效。因此,主機(jī)在讀時(shí)間隙開始后必須停止把I/O 腳驅(qū)動(dòng)為低電平15s,以讀取I/O 腳狀態(tài)(見圖12)。在讀時(shí)間隙的結(jié)尾,I/O 引腳將

6、被外部上拉電阻拉到高電平。所有讀時(shí)間隙必須最少60s,包括兩個(gè)讀周期間至少1s 的恢復(fù)時(shí)間。而對(duì)DS18B20的操作可以用下表表示:溫度轉(zhuǎn)換和插補(bǔ)(外部電源供電且只有一只 DS1820)控制器狀態(tài)數(shù)據(jù)(LSB在前)內(nèi)容TX復(fù)位復(fù)位脈沖TR存在存在脈沖TXCChSkip ROM 命令TX44hConvert T 命令RX讀 8 次忙標(biāo)志??刂破饕蛔止?jié)(或位)接一個(gè)字節(jié)讀下去,直到數(shù)據(jù)為FFh(所有位都為1)TX復(fù)位復(fù)位脈沖RX存在存在脈沖TXCChSkip ROM 命令TXBehRead Scratchpad 命令RX讀整個(gè)暫存器加上CRC;控制器重新計(jì)算從暫存讀到的8 個(gè)數(shù)據(jù)字節(jié)的CRC,把計(jì)

7、算的CRC 和讀取的CRC 進(jìn)行比較,如果相同,數(shù)據(jù)就是有效的??刂破鞔鎯?chǔ)溫度值并分別存儲(chǔ)計(jì)數(shù)寄存器的內(nèi)容和每度計(jì)數(shù)值寄存器的內(nèi)容,做為COUNT_REMAIN 和COUNT_PER_C。TX復(fù)位復(fù)位脈沖RX存在存在脈沖CPU 按手冊(cè)中的方法計(jì)算溫度值以得到更高的分辨力。時(shí)鐘:為了在初始化程序的編寫方面那些延時(shí)比較直觀準(zhǔn)確和七段顯示管的顯示正常工作,我們?cè)O(shè)置了兩個(gè)時(shí)鐘分頻模塊。把原開發(fā)板上5MHZ的始終頻率分成1MHZ和10KHZ,前者為串行數(shù)據(jù)處理與ds18b20初始化模塊提供時(shí)鐘,后者為并行數(shù)據(jù)處理與顯示模塊提供時(shí)鐘。并行數(shù)據(jù)處理與顯示:數(shù)碼管的溫度顯示方面,編程可以比較獨(dú)立,而且單獨(dú)編程

8、容易查錯(cuò),所以獨(dú)立設(shè)置了一個(gè)模塊。在后期的添加功能階段,最高溫與最低溫記錄與報(bào)警功能沒有單獨(dú)設(shè)置一個(gè)模塊,而是根據(jù)實(shí)際直接在此模塊上稍作改動(dòng)。數(shù)碼管的七段的七位輸入是一樣的,所以要在四個(gè)數(shù)碼管上顯示不同的數(shù)字需要逐個(gè)掃描,每個(gè)時(shí)鐘周期只選通一個(gè)數(shù)碼管,然后輸入要顯示的數(shù)字的七位碼,這樣由于視覺暫留時(shí)間,雖然每個(gè)數(shù)碼管的顯示是分別在四個(gè)周期的時(shí)間段,但看起來是同時(shí)顯示的,這是顯示的基本方式。如下:1 2 3 視覺所見: 123報(bào)警功能:報(bào)警功能的實(shí)現(xiàn)與最高最低溫的記錄原理差不多,對(duì)輸入的十二位并行數(shù)據(jù)(溫度的編碼)進(jìn)行檢測(cè),如果達(dá)到某個(gè)設(shè)定的溫度就給蜂鳴器一個(gè)電平使其想一聲并給led燈電平使其亮

9、,而溫度記錄則要比較后一個(gè)輸入的十二位數(shù)據(jù)與前一位十二位數(shù)據(jù),看其表示的溫度,比前一位大就把數(shù)據(jù)保存取代前一位最高,并設(shè)置按鈕使其按下就顯示此最高溫度,比前一位小就把數(shù)據(jù)保存取代前一位最低,并設(shè)置不同按鈕使其按下顯示此最低溫度。 串行數(shù)據(jù)處理與初始化:由于ds18b20的操作相對(duì)比較復(fù)雜,所以單獨(dú)設(shè)置一個(gè)模塊專門處理其初始化,鑒于數(shù)碼管的顯示模塊設(shè)置時(shí)并行輸入的,所以此模塊兼?zhèn)鋎s18b20的傳輸數(shù)據(jù)處理,把串行數(shù)據(jù)處理成并行數(shù)據(jù)。此模塊的輸入就一個(gè)是時(shí)鐘,另一個(gè)就是ds18b20的串行實(shí)時(shí)溫度代碼(12位),其與ds18b20之間就一根線相連,實(shí)現(xiàn)對(duì)其初始化與數(shù)據(jù)就收,還要對(duì)接收的串行數(shù)據(jù)進(jìn)

10、行儲(chǔ)存使之可以并行輸出,以提供給顯示模塊。整機(jī)模塊組合:時(shí)鐘分頻模塊2時(shí)鐘分頻模塊1時(shí)鐘時(shí)鐘分頻模塊2時(shí)鐘分頻模塊1時(shí)鐘并行數(shù)據(jù)處理與顯示模塊串行數(shù)據(jù)處理與初始化模塊并行數(shù)據(jù)處理與顯示模塊串行數(shù)據(jù)處理與初始化模塊DDs18b20另附各程序如下:時(shí)鐘分頻模塊:1:-分頻器生成一個(gè)頻率為1MHz的時(shí)鐘信號(hào),- 以供顯示及報(bào)警模塊作為觸發(fā)信號(hào)使用。LIBRARYIEEE;USE IEEE.STD_LOGIC_1164.ALL;entity clk_div isport( clk: in std_logic;clk_div: out std_logic);end entity;architecture

11、 behav of clk_div isbeginprocess(clk)variable count:integer range 0 to 50; begin if rising_edge(clk) thencount:=count+1;if count=50 then clk_div=1;count:=0; -開發(fā)板內(nèi)部時(shí)鐘為50MHz,計(jì)數(shù)變量count=50 使時(shí)鐘輸出為1MHzelse clk_div=0; -分頻器以1MHz的頻率置“1”其余保持低電平end if;end if;end process;end behav;2:-分頻器生成一個(gè)頻率為10000Hz的時(shí)鐘信號(hào),- 以供

12、顯示及報(bào)警模塊作為觸發(fā)信號(hào)使用。LIBRARYIEEE;USE IEEE.STD_LOGIC_1164.ALL;entity clk_div2 isport( clk: in std_logic;clk_div2: out std_logic);end entity;architecture behav of clk_div2 isbeginprocess(clk)variable count:integer range 0 to 5000; begin if rising_edge(clk) thencount:=count+1;if count=5000 then clk_div2=1;c

13、ount:=0;-開發(fā)板內(nèi)部時(shí)鐘為50MHz,計(jì)數(shù)變量count=5000 使時(shí)鐘輸出為10000Hzelse clk_div2=0;-分頻器以10000Hz的頻率置“1”其余保持低電平end if;end if;end process;end behav;DS18B20初始化與串行數(shù)據(jù)處理模塊:-溫度傳感器初始化以及命令的讀寫、溫度檢測(cè)library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity wendu_chuangan isport

14、(clk:in std_logic; dq:inout std_logic; wendu:out std_logic_vector(15 downto 0);end wendu_chuangan;architecture behav of wendu_chuangan istype state_type is(s0,s1,s2,s3,s4,s5,s6,s7,write_0,write_1,write_01,write_11,read0,read1,read2,read3);signal state:state_type;signal reset:std_logic;signal i:integ

15、er range 0 to ;signal date:std_logic_vector(15 downto 0);beginwendu=date;-內(nèi)部暫存數(shù)據(jù)賦給“wendu”輸出一個(gè)16位的數(shù)值process(clk,reset)-通常作用實(shí)現(xiàn)是變量i=i+1,而當(dāng)reset=1,則i置“0” begin if (reset=1)then i=0; elsif rising_edge(clk) then i -對(duì)傳感器輸入一個(gè)拉低電平 dq=0; reset=1; state -保持低電平500s,之后釋放傳感器的數(shù)據(jù)I/O管腳并置高阻態(tài) reset=0; if(i=500)then dq

16、=Z; state=s2; reset -等待45s reset=0; if(i=45)then reset=1; state -如果檢測(cè)到DQ輸出低電平則跳轉(zhuǎn)到s4,如果為高電平則跳轉(zhuǎn)到s0 if(dq=0)then state=s4; elsif(dq=1)then state -保持存在低電平200s,之后跳轉(zhuǎn)到s5reset=0; if(i=200)then reset=1; state -命令寫入 if(j=0 or j=1)then -寫入命令CCh,即Skip ROM 命令 state=write_0; j:=j+1; elsif(j=2 or j=3)then state=wr

17、ite_1; j:=j+1;dq=0; elsif(j=4 or j=5)then state=write_0; j:=j+1; elsif(j=6 or j=7)then state=write_1; j:=j+1;dq=0; elsif(j=8 or j=9)then -寫入命令44h,即Convert T 命令 state=write_0; j:=j+1; elsif(j=10)then state=write_1; j:=j+1;dq=0; elsif(j=11)then state=write_0; j:=j+1; elsif(j=12 or j=13)then state=writ

18、e_0; j:=j+1; elsif(j=14)then state=write_1; j:=j+1;dq=0; elsif(j=15)then state=write_0; j:=j+1; elsif (j=16)then j:=20; state=s6; dq=Z; elsif(j=20 or j=21)then -寫入命令CCh,即 Skip ROM 命令 state=write_0; j:=j+1; elsif(j=22 or j=23)then state=write_1; j:=j+1;dq=0; elsif(j=24 or j=25)then state=write_0; j:=

19、j+1; elsif(j=26 or j=27)then state=write_1; j:=j+1;dq=0; elsif(j=28)then -寫入命令BEh, 即Read Scratchpad 命令 state=write_0; j:=j+1; elsif(j=29 or j=30 or j=31)then state=write_1; j:=j+1;dq=0; elsif(j=32 or j=33)then state=write_1; j:=j+1;dq=0; elsif(j=34)then state=write_0; j:=j+1; elsif(j=35)then state=w

20、rite_1; j:=j+1;dq=0; elsif(j=36)then state -寫入命令44h后,釋放DQ管腳,并等待750ms reset=0; if (i= or dq=1)then state=s0; reset -主機(jī)生成一個(gè)寫 0 時(shí)間隙,必須把數(shù)據(jù)線拉到低電平并保持70s。dq=0; reset=0; if (i = 70) then dq=Z; -釋放DQ管腳,使其有1s的恢復(fù)時(shí)間 reset=1; state state -主機(jī)生成一個(gè)寫“1”時(shí)間隙,必須把數(shù)據(jù)線拉到低電平然后釋放,1s后把數(shù)據(jù)線DQ拉到高電平,并保持70s state dq=1; reset=0; i

21、f (i = 70) then reset=1; state -從DQ管腳讀出連續(xù)串行的16個(gè)數(shù)值if (j 55 ) then j:=j+1; state=read0;cnt:=cnt+1; dq=0; elsif (j = 55 ) then j:=60; state=read0;cnt:=15;dq=0; elsif (j = 60 ) then j:=0;state -DQ寫入一個(gè)低電平,此處等待1sstate -釋放DQ,當(dāng)10s后轉(zhuǎn)到read2把讀出的數(shù)值賦給寄存器datedq = Z; reset=0; if (i = 10) then reset=1; state date(c

22、nt)= dq; state -讀時(shí)間隙再保持55s,合67sreset=0; if (i = 55) then reset=1; statestate=s0;end case;end if;end process;end behav;七段數(shù)碼管顯示外加溫度記錄與報(bào)警功能模塊:-并行數(shù)據(jù)處理與顯示模塊LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_unsigned.all;USE ieee.std_logic_arith.all;entity d18b20 isGENERIC(LED_0:STD_LOGIC_VECTOR

23、(7 DOWNTO 0):=; -LED驅(qū)動(dòng)不包括小數(shù)點(diǎn)LED_1:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED_2:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED_3:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED_4:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED_5:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED_6:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED_7:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED

24、_8:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED_9:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED0:STD_LOGIC_VECTOR (7 DOWNTO 0):=; -LED驅(qū)動(dòng)包括小數(shù)點(diǎn)LED1:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED2:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED3:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED4:STD_LOGIC_VECTOR (7 DOWNTO 0):=;LED5:STD_LOGIC_VECTOR (7 DOW

25、NTO 0):=; LED6:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED7:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED8:STD_LOGIC_VECTOR (7 DOWNTO 0):=; LED9:STD_LOGIC_VECTOR (7 DOWNTO 0):=); port(clk,dip1,dip2:in std_logic; temp:in std_logic_vector(15 downto 0); led77:out std_logic_vector(7 downto 0); led44:out std_logic_vecto

26、r(3 downto 0); led:out std_logic_vector(7 downto 0); beep:out std_logic);end entity;architecture behav of d18b20 issignal j:std_logic_vector(1 downto 0);signal led71:std_logic_vector(7 downto 0);signal led72:std_logic_vector(7 downto 0);signal led73:std_logic_vector(7 downto 0);signal led74:std_logi

27、c_vector(7 downto 0);type state_type is(s0,s1,s2,s3);signal state:state_type;signal r:std_logic_vector(15 downto 0);type state_type_first is(w0,w1,w2);signal state_first:state_type_first; begin counter:process(clk) begin if(clkevent and clk=1) then jled44=0111; led77led44=1011; led77led44=1101; led7

28、7led44=1110; led77 -等待1s后把從溫度傳感器的DQ管腳讀入的16位數(shù)值,賦給me1,以及me2 i:=i+1; if(i=10000)then i:=0; me1:=temp;me2:=temp; state_first -me1為檢測(cè)通電時(shí)間內(nèi)檢測(cè)到的最高溫,me2則為最低溫 if(me1temp)then me2:=temp; else me2:=me2; end if; if(dip1=1)then -當(dāng)dip1為高電平則數(shù)碼管顯示實(shí)時(shí)溫度,當(dāng)dip2為高電平則顯示最高溫,dip2為低電平則顯示最低溫r=temp;elsif(dip2=1)thenr=me1;elsi

29、f(dip2=0)thenr=me2;end if;state_first - case r(11 downto 4)is -窮舉讀入數(shù)值temp的第511位,并置第一、二個(gè)數(shù)碼管為相應(yīng)的數(shù)字 when =led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_0;led72led71=led_1;led72led71=led_

30、1;led72led71=led_1;led72led71=led_1;led72led71=led_1;led72led71=led_1;led72led71=led_1;led72led71=led_1;led72led71=led_1;led72led71=led_1;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led71=led_2;led72led7

31、1=led_2;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_3;led72led71=led_4;led72led71=led_4;led72led71=led_4;led72led71=led_4;led72led71=led_4;led72led71=led_4;led72led71=led_4;led

32、72led71=led_4;led72led71=led_4;led72led71=led_4;led72led71=led_5;led72led71=led_5;led72led71=led_5;led72led71=led_5;led72led71=led_5;led72led71=led_5;led72led71=led_0;led72led73=led_0;led74led73=led_2;led74led73=led_5;led74led73=led_7;led74led73=led_0;led74=led_0; end case; state_first state_firstif

33、(q(10 downto 2)=or q(10 downto 2)=)thenstate=s1;elsif(q(10 downto 2)=)thenstate=s3;else stateif(q(10 downto 2)= or q(10 downto 2)=)thenstate=s2;else statei:=i+1;if(i=1)thenbeep=0;led=;elsif(i=1875)thenled=;elsif(i=3750)thenled=;elsif(i=5000)thenbeep=Z;elsif(i=5625)thenled=;elsif(i=7500)thenled=;elsif(i=9575)thenled=;elsif(i=11250)thenled=;elsif(i=13125)thenled=;elsif(i=15000)thenled=;elsif(i=16875)thenled

溫馨提示

  • 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)論