《電子實習(xí)2》基于FPGA多功能數(shù)字鐘設(shè)計_第1頁
《電子實習(xí)2》基于FPGA多功能數(shù)字鐘設(shè)計_第2頁
《電子實習(xí)2》基于FPGA多功能數(shù)字鐘設(shè)計_第3頁
《電子實習(xí)2》基于FPGA多功能數(shù)字鐘設(shè)計_第4頁
《電子實習(xí)2》基于FPGA多功能數(shù)字鐘設(shè)計_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、江蘇科技大學(xué)南徐學(xué)院 jiangsu university of science and technology nanxu college電子實習(xí)2基于fpga多功能數(shù)字鐘設(shè)計姓 名:學(xué) 號:.班 級:.指導(dǎo)教師:提交日期:2012 年 3 月摘 要本文介紹了利用eda技術(shù)自頂向下的設(shè)計方法,提出了一個多功能數(shù)字鐘的設(shè)計方案,采用verloghdl語言設(shè)計了數(shù)字鐘系統(tǒng)的各個模塊,在quartusii開發(fā)平臺下進行了編譯、仿真、下載,實現(xiàn)了基本計時顯示和設(shè)置、調(diào)整時間、鬧鐘和秒表功能。vhdl是very high speed integrated circuit hardware descrip

2、tion language的縮寫,意思是超高速集成電路硬件描述語言。對于復(fù)雜的數(shù)字系統(tǒng)的設(shè)計,它有獨特的作用。它的硬件描述能力強,能輕易的描述出硬件的結(jié)構(gòu)和功能。這種語言的應(yīng)用至少意味著兩種重大的改變:電路的設(shè)計竟然可以通過文字描述的方式完成;電子電路可以當作文件一樣來存儲。隨著現(xiàn)代技術(shù)的發(fā)展,這種語言的效益與作用日益明顯,每年均能夠以超過30%的速度快速成長。本文介紹一種基于fpga的數(shù)字時鐘設(shè)計方法,簡要介紹了vhdl語言的一些基本語法和概念后,進一步應(yīng)用vhdl,在max+plusii 的環(huán)境下設(shè)計一個電子鐘,最后通過仿真出時序圖實現(xiàn)預(yù)定功能。電子鐘的時間顯示用到了七段數(shù)碼管(或稱七段顯

3、示器)的電路設(shè)計,內(nèi)部的時間控制輸出則用到了各種設(shè)計,包括:時鐘分頻模塊、計時模塊、按鍵模塊和顯示模塊四個部分。目 錄1 引言12 總體方案設(shè)計 x2.1 項目設(shè)計要點2.2 方案論述2.3 軟件介紹2.4 芯片介紹3 單元電路設(shè)計3.1 分頻模塊設(shè)計3.2 計時功能模塊設(shè)計3.3 計數(shù)模塊3.4 譯碼顯示模塊3.5 整點報時模塊4 系統(tǒng)功能及功能仿真4.1 系統(tǒng)功能4.2功能仿真各個模塊的仿真波形5 心得體會6 參考文獻附錄:完整實驗程序引言vhdl語言是一種標準化的硬件描述語言。設(shè)計者可以通過它編寫代碼,然后用模擬器驗證其功能,再將設(shè)計代碼綜合成門級電路,最后下載到可編程邏輯器件(cpld

4、,fpga)中來實現(xiàn)一個設(shè)計。由于vhdl語言具有支持大規(guī)模設(shè)計和再利用已有設(shè)計等優(yōu)點1,因此使用vhdl語言來設(shè)計數(shù)字鐘。本設(shè)計采用的vhdl是一種全方位的硬件描述語言,具有極強的描述能力,能支持系統(tǒng)行為級、寄存器傳輸級和邏輯門級這三個不同層次的設(shè)計;支持結(jié)構(gòu)、數(shù)據(jù)流、行為三種描述形式的混合描述,覆蓋面廣,抽象能力強,因此在實際應(yīng)用中越來越廣泛。asic是專用的系統(tǒng)集成電路,是一種帶有邏輯處理的加速處理器;而fpga是特殊的asic芯片,與其它的asic芯片相比,它具有設(shè)計開發(fā)周期短、設(shè)計制造成本低、開發(fā)工具先進、標準產(chǎn)品無需測試、質(zhì)量穩(wěn)定以及可實時在線檢測等優(yōu)點。在控制系統(tǒng)中,鍵盤是常用的

5、輸入設(shè)備,系統(tǒng)應(yīng)當根據(jù)鍵盤的輸入來完成相應(yīng)的功能。因此,按鍵信息輸入是與軟件結(jié)構(gòu)密切相關(guān)的過程。根據(jù)鍵盤結(jié)構(gòu)的不同,采用不同的編碼方法,但無論有無編碼以及采用什么樣的編碼,最后都要轉(zhuǎn)換成為相應(yīng)的鍵值,以實現(xiàn)按鍵功能程序的轉(zhuǎn)移。1鐘表的數(shù)字化給人們生產(chǎn)生活帶來了極大的方便,而且大大地擴展了鐘表原先的報時功能。諸如定時自動報警、定時啟閉電路、定時開關(guān)烘箱、通斷動力設(shè)備,甚至各種定時電氣的自動啟用等,所有這些都是以鐘表數(shù)字化為基礎(chǔ)的。因此研究數(shù)字鐘以及擴大其應(yīng)用有著非?,F(xiàn)實的意義。2.總體方案設(shè)計2.1項目設(shè)計要點 (1)以數(shù)字形式顯示時、分、秒; (2)小時記數(shù)為24小時進制 (3)分秒進制為60

6、進制 (4)擴展功能:定時鬧鐘、整點報時2.2 方案論述 系統(tǒng)組成框圖,如下圖所示: 主體電路電路的兩種工作狀態(tài)如下圖所示:1.為正常時鐘模塊2.設(shè)置時間模塊控制按鍵用來選擇是正常計數(shù)還是調(diào)整時間并決定調(diào)整時、分、秒; 置數(shù)按鍵按下時,表示相應(yīng)的調(diào)整塊要加一;基準時鐘是1hz;計數(shù)器是對1hz的頻率計數(shù);動態(tài)顯示模塊是對計數(shù)器的計數(shù)進行譯碼,送到數(shù)碼管進行顯示 。2.3 軟件介紹本設(shè)計采用quartus ii軟件編寫所需程序。quartus ii 是altera公司的綜合性pld開發(fā)軟件,支持原理圖、vhdl、veriloghdl以及ahdl(altera hardware descripti

7、on language)等多種設(shè)計輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計輸入到硬件配置的完整pld設(shè)計流程。 quartus ii可以在xp、linux以及unix上使用,除了可以使用tcl腳本完成設(shè)計流程外,提供了完善的用戶圖形界面設(shè)計方式。具有運行速度快,界面統(tǒng)一,功能集中,易學(xué)易用等特點。 quartus ii支持altera的ip核,包含了lpm/megafunction宏功能模塊庫,使用戶可以充分利用成熟的模塊,簡化了設(shè)計的復(fù)雜性、加快了設(shè)計速度。對第三方eda工具的良好支持也使用戶可以在設(shè)計流程的各個階段使用熟悉的第三方eda工具。 此外,quartus ii 通過和

8、dsp builder工具與matlab/simulink相結(jié)合,可以方便地實現(xiàn)各種dsp應(yīng)用系統(tǒng);支持altera的片上可編程系統(tǒng)(sopc)開發(fā),集系統(tǒng)級設(shè)計、嵌入式軟件開發(fā)、可編程邏輯設(shè)計于一體,是一種綜合性的開發(fā)平臺。 maxplus ii 作為altera的上一代pld設(shè)計軟件,由于其出色的易用性而得到了廣泛的應(yīng)用。目前altera已經(jīng)停止了對maxplus ii 的更新支持,quartus ii 與之相比不僅僅是支持器件類型的豐富和圖形界面的改變。altera在quartus ii 中包含了許多諸如signaltap ii、chip editor和rtl viewer的設(shè)計輔助工具

9、,集成了sopc和hardcopy設(shè)計流程,并且繼承了maxplus ii 友好的圖形界面及簡便的使用方法。 altera quartus ii 作為一種可編程邏輯的設(shè)計環(huán)境, 由于其強大的設(shè)計能力和直觀易用的接口,越來越受到數(shù)字系統(tǒng)設(shè)計者的歡迎。altera的quartus ii可編程邏輯軟件屬于第四代pld開發(fā)平臺。該平臺支持一個工作組環(huán)境下的設(shè)計要求,其中包括支持基于internet的協(xié)作設(shè)計。quartus平臺與cadence、exemplarlogic、 mentor graphics、synopsis和simplicity等eda供應(yīng)商的開發(fā)工具相兼容。改進了軟件的logicloc

10、k模塊設(shè)計功能,增添 了fastfit編譯選項,推進了網(wǎng)絡(luò)編輯性能,而且提升了調(diào)試能力。支持max7000/max3000等乘積項器件2.4 芯片介紹fpga是現(xiàn)場可編程門陣列(field programmable gate array)的簡稱,與之相應(yīng)的cpld是復(fù)雜可編程邏輯器件(complex programmable logic device)的簡稱,兩者的功能基本相同,只是實現(xiàn)原理略有不同,有時可以忽略這兩者的區(qū)別,統(tǒng)稱為可編程邏輯器件或cpld/pgfa。cpld/pgfa幾乎能完成任何數(shù)字器件的功能,上至高性能cpu,下至簡單的74電路。它如同一張白紙或是一堆積木,工程師可以通過

11、傳統(tǒng)的原理圖輸入或硬件描述語言自由的設(shè)計一個數(shù)字系統(tǒng)。通過軟件仿真可以事先驗證設(shè)計的正確性,在pcb完成以后,利用cpld/fpga的在線修改功能,隨時修改設(shè)計而不必改動硬件電路。使用cpld/fpga開發(fā)數(shù)字電路,可以大大縮短設(shè)計時間,減少pcb面積,提高系統(tǒng)的可靠性。這些優(yōu)點使得cpld/fpga技術(shù)在20世紀90年代以后得到飛速的發(fā)展,同時也大大推動了eda軟件和硬件描述語言hdl的進步。3fpga具有掩膜可編程門陣列的通用結(jié)構(gòu),它由邏輯功能塊排成陣列,并由可編程的互連資源連接這些邏輯功能塊來實現(xiàn)不同的設(shè)計。fpga一般由3種可編程電路和一個用于存放編程數(shù)據(jù)的靜態(tài)存儲器sram組成。這3

12、種可編程電路是:可編程邏輯模塊(clb-configurable logic block)、輸入/輸出模塊(iob-i/o block)和互連資源(irinterconnect resource)。可編程邏輯模塊clb是實現(xiàn)邏輯功能的基本單元,它們通常規(guī)則的排列成一個陣列,散布于整個芯片;可編程輸入/輸出模塊(iob)主要完成芯片上的邏輯與外部封裝腳的接口,它通常排列在芯片的四周;可編程互連資源包括各種長度的連接線段和一些可編程連接開關(guān),它們將各個clb之間或clb、iob之間以及iob之間連接起來,構(gòu)成特定功能的電路。3 單元電路設(shè)計3.1 分頻模塊設(shè)計系統(tǒng)需要1hz的頻率來驅(qū)動計時器,而實

13、驗箱上可提供多種不同的頻率,如系統(tǒng)時鐘20mhz和sw7提供的可選擇頻率,請根據(jù)需要自行選擇頻率,并進行分頻,形成1hz頻率。實驗程序分頻模塊process(clk) variable cnt: integer range 0 to 12000000; begin if(clkevent and clk=1) then if(cnt=12000000) then cnt:=0; clkin1=not clkin1; else cnt:=cnt+1; end if; end if; end process;process(clk) variable cnt: integer range 0 to

14、 12000; begin if(clkevent and clk=1) then if(cnt=12000) then cnt:=0; clkin2=not clkin2; else cnt:=cnt+1; end if; end if; end process;3.2 計時功能模塊設(shè)計計時模塊需對時、分、秒進行計數(shù),其中小時位為24進制,分鐘和秒鐘位為60進制??梢杂靡欢纬绦?qū)r、分、秒進行連續(xù)計數(shù),也可以對時、分、秒的高位和低位分別計數(shù)。注意,如果采用連續(xù)計數(shù)方式,因為每位顯示時有高位和低位之分,所以需將十進制數(shù)據(jù)用bcd碼進行轉(zhuǎn)換后,才能輸出到七段數(shù)碼管上顯示。實驗程序process(

15、clk) variable cnt: integer range 0 to 6000000; begin if(clkevent and clk=1) then if(jiezou=0) then if(cnt=3000000) then cnt:=0; clk1=not clk1; else cnt:=cnt+1; end if; else if(cnt=6000000) then cnt:=0; clk1=not clk1; else cnt:=cnt+1; end if; end if; end if; end process; process(clk1,kaiguan) begin i

16、f(clk1event and clk1=1) then if(kaiguan=1) then temp=0; end if; if(kaiguan=0) then if(temp=25) then temp=0; else templiushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushuiliushui=

17、00000000; end case; end process; process(clkin1,mode,tiaofen,tiaoshi) begin if(clkin1event and clkin1=1) then co1=0;co2=0; if(mode=1) then if(sec0=1001) then sec0=0000; if(sec1=0101) then sec1=0000; else sec1=sec1+1; end if; else sec0=sec0+1; end if; if(sec1=0101 and sec0=1000) then co1=1; else co1=

18、0; end if; if(co1=1) then if(min0=1001) then min0=0000; if(min1=0101) then min1=0000; else min1=min1+1; end if; else min0=min0+1; end if; end if; if(min1=0101 and min0=1001) then co2=1; else co2=0; end if; if(co1=1 and co2=1) then if(hour0=1001) then hour0=0000; if(hour1=0010) then hour1=0000; else

19、hour1=hour1+1; end if; else hour0=hour0+1; end if; if(hour1=0010 and hour0=0011) then hour1=0000; hour0=0000; end if; end if; elsif(mode=0 and tiaofen=0) then if(min0=1001) then min0=0000; if(min1=0101) then min1=0000; else min1=min1+1; end if; else min0=min0+1; end if; elsif(mode=0 and tiaoshi=0) t

20、hen if(hour0=1001) then hour0=0000; if(hour1=0010) then hour1=0000; else hour1=hour1+1; end if; else hour0=hour0+1; end if; if(hour1=0010 and hour0=0011) then hour1=0000; hour0=0000; end if; end if; end if; end process; process(clkin2,sel) begin if(clkin2event and clkin2=1) then if(sel=111) then sel

21、=000; else sel=sel+1; end if; end if;3.3 計數(shù)模塊1.秒計數(shù)模塊該模塊框圖如圖4.9所示。模塊主要完成秒向分的進位,產(chǎn)生脈沖信號。圖3.9 秒模塊邏輯框圖核心程序如下:entity second isport(clk_1s : in std_logic;os : out std_logic);end second;architecture sec_architecture of second isbegink1:process(clk_1s)variable count:integer range 0 to 100:=0;beginif rising_e

22、dge(clk_1s) thenif count=59 thenos=1;count:=0;elseos=0;count:=count+1;end if;end if;end process k1;3.4 譯碼顯示模塊該模塊完成對計數(shù)器編碼信息的譯碼工作,驅(qū)動數(shù)碼管則顯示相應(yīng)的數(shù)字。模塊組件如4.14所示。圖3.14譯碼顯示模塊組件核心程序如下:entity drive is port (clk:in std_logic;addr : in std_logic_vector(3 downto 0); led : out std_logic_vector(7 downto 0); end dri

23、ve; architecture behave of drive is signal sel:std_logic_vector(3 downto 0); begin process(clk)begin selledledledledledledledledledledled=10111111; end case; end process; end behave;3.5 整點報時模塊該模塊能夠完成整點時的報時功能。即將至整點時,前四秒低音,最后一秒高音。該模塊在十二點三十分的時候,蜂鳴器響起音樂,持續(xù)一分鐘。模塊組件如圖4.17所示。圖3.17 整點報時模塊組件1.整點報時核心程序如下:if r

24、ising_edge(clk05s) thenif cnt=119 thencnt:=0;elsecnt:=cnt+1;end if;if mh=0101 and ml=1001 and(cnt=117 or cnt=115 or cnt=113 or cnt=111) then c=0;else c=1;end if;if mh=0000 and ml=0000 and (cnt=119 or cnt=0 or cnt=1)then d=0;else d=1;end if;end if;end process;a=clk1k and not(d);b=clk05s and not(c);sp

25、eaker=a or b;4 系統(tǒng)功能及仿真計數(shù)功能 該模塊的仿真波形如圖4.10所示。圖3.10 秒計數(shù)模塊波形仿真譯碼功能該模塊的仿真波形如圖3.15所示。圖3.15 譯碼顯示波形仿真5.小結(jié)與體會通過本次的數(shù)字鐘設(shè)計過程中,讓我更進一步地熟悉有關(guān)數(shù)字電路的知識和具體應(yīng)用。學(xué)會了利用quarterii軟件進行原理圖的繪制,硬件描述語言vhdl的編寫,程序的仿真等工作。并能根據(jù)仿真結(jié)果分析設(shè)計的存在的問題和缺陷,從而進行程序的調(diào)試和完善。參考文獻:1eda技術(shù)與vhdl。2 王紫婷,吳蓉 ,張彩珍,eda技術(shù)與應(yīng)用,蘭州大學(xué)出版社,20033 潘松,黃繼業(yè),eda技術(shù)實用教程,北京科學(xué)出版社

26、,20064 王開軍,姜宇柏,面向cpld/fpga的vhdl設(shè)計,機械工業(yè)出版社,20075 畢滿清,電子技術(shù)實驗與課程設(shè)計,機械工業(yè)出版社,20056 呂思忠,數(shù)子電路實驗與課程設(shè)計,哈爾濱工業(yè)大學(xué)出版社,20017 謝自美,電子線路設(shè)計、實驗、測試,華中理工大學(xué)出版社,2003附錄:完整實驗程序 1)主程序模塊:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity szz isport(clk:in std_logic; md1:in std_logic; md2:in std_lo

27、gic_vector(1 downto 0); speak:out std_logic; h1,h2,m1,m2,s1,s2:out std_logic_vector(3 downto 0);end szz;architecture one of szz issignal hou1:std_logic_vector(3 downto 0);signal hou2:std_logic_vector(3 downto 0);signal min1:std_logic_vector(3 downto 0);signal min2:std_logic_vector(3 downto 0);signal

28、 seth1:std_logic_vector(3 downto 0);signal seth2:std_logic_vector(3 downto 0);signal setm1:std_logic_vector(3 downto 0);signal setm2:std_logic_vector(3 downto 0);signal sec1:std_logic_vector(3 downto 0);signal sec2:std_logic_vector(3 downto 0);begin-小時十位h110:process(clk,hou2,min1,min2,sec1,sec2,md1,

29、md2)beginif clkevent and clk=1 thenif (hou1=0010 and hou2=0011)and(min1=0101 and min2=1001) and (sec1=0101 and sec2=1001) thenhou1=0000;elsif hou1=0010and hou2=0011and md1=0 and md2=01 then-當時間為23點且處于校時狀態(tài)時hou1=0000;elsif (hou2=1001and(min1=0101 and min2=1001) and (sec1=0101 and sec2=1001)or (hou2=10

30、01and md1=0 and md2=01) thenhou1=hou1+1;end if;end if;end process h110;-小時個位h220:process(clk,min1,min2,sec1,sec2,md1,md2,hou1)beginif clkevent and clk=1 thenif (hou1=0010 and hou2=0011)and(min1=0101 and min2=1001) and (sec1=0101 and sec2=1001) thenhou2=0000;elsif hou2=1001and(min1=0101 and min2=1001

31、) and (sec1=0101 and sec2=1001) thenhou2=0000;elsif (hou2=1001and md1=0 and md2=01)or (hou1=0010and hou2=0011) thenhou2=0000;-md=1;elsif (min1=0101 and min2=1001) and (sec1=0101 and sec2=1001)or (md1=0 and md2=01) thenhou2=hou2+1;-speak=clk;end if;end if;end process h220;-分鐘十位m110:process(clk,min2,s

32、ec1,sec2,md1,md2)beginif clkevent and clk=1 thenif (min1=0101 and min2=1001) and (sec1=0101 and sec2=1001) then min1=0000;elsif min1=0101and min2=1001and (md1=0 and md2=00)thenmin1=0000;elsif (min2=1001and (sec1=0101 and sec2=1001) or (min2=1001and md1=0 and md2=00)thenmin1=min1+1;end if;end if;-end

33、 if;end process m110;-分鐘個位m220:process(clk,sec1,sec2,md1,md2)beginif clkevent and clk=1 thenif min2=1001and (sec1=0101 and sec2=1001)thenmin2=0000;elsif min2=1001and (md1=0 and md2=00)thenmin2=0000;else if (sec1=0101 and sec2=1001) or(md1=0 and md2=00)thenmin2=min2+1;end if;end if;end if;end process

34、 m220;-秒十位s110:process(clk)beginif clkevent and clk=1 thenif (sec1=0101 and sec2=1001)thensec1=0000;else if sec2=1001thensec1=sec1+1;end if;end if;end if;end process s110;-秒個位s220:process(clk)beginif clkevent and clk=1 thenif sec2=1001 thensec2=0000;else sec2=sec2+1;end if;end if;end process s220;-時

35、間設(shè)置小時部分sethour1:process(clk,seth2)beginif clkevent and clk=1 thenif seth1=0010and seth2=0011 thenseth1=0000;elsif seth2=1001 thenseth1=seth1+1;end if;end if;end process sethour1;-sethour2:process(clk,md1,md2,seth1)beginif clkevent and clk=1 thenif (seth1=0010and seth2=0011)or seth2=1001thenseth2=000

36、0;elsif md1=1 and md2=00 thenseth2=seth2+1;end if;end if;end process sethour2;-時間設(shè)置分鐘部分setmin1:process(clk,setm2)beginif clkevent and clk=1 thenif setm1=0101and setm2=1001thensetm1=0000;elsif setm2=1001thensetm1=setm1+1;end if;end if;end process setmin1;-setmin2:process(clk,md1,md2)beginif clkevent

37、and clk=1thenif setm2=1001thensetm2=0000;elsif md1=1 and md2=01thensetm2=setm2+1;end if;end if;end process setmin2;-鬧鈴speaker:process(clk,hou1,hou2,min1,min2)beginif clkevent and clk=1thenif seth1=hou1 and seth2=hou2 and setm1=min1 and setm2=min2 thenspeak=clk;else speak=0;end if;end if;end process

38、speaker;-disp:process(md1,hou1,hou2,min1,min2,sec1,sec2,seth1,seth2,setm1,setm2)beginif md1=0 then-計時時間顯示和設(shè)置模式h1=hou1;h2=hou2;m1=min1;m2=min2;s1=sec1;s2=sec2;else -鬧鈴時間現(xiàn)實和設(shè)置模式h1=seth1;h2=seth2;m1=setm1;m2=setm2;s1=1111;s2=1111;end if;end process disp;end one;模塊一、library ieee;use ieee.std_logic_1164.

39、all;use ieee.std_logic_unsigned.all;entity notetabs isport(clk:in std_logic;speak:in std_logic;toneindex:out std_logic_vector(3 downto 0);end;architecture one of notetabs iscomponent musicport(address:in std_logic_vector(7 downto 0);clock:in std_logic;q:out std_logic_vector(3 downto 0);end component;signal counter:std_logic_vector(7 downto 0);begincnt8:process(clk,speak)beginif counter=138 then counter=00000000;elsif (clkevent and clk=1)then if speak=1 then counter

溫馨提示

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

最新文檔

評論

0/150

提交評論