基于FPGA的直接數(shù)字頻率合成器設(shè)計_第1頁
基于FPGA的直接數(shù)字頻率合成器設(shè)計_第2頁
基于FPGA的直接數(shù)字頻率合成器設(shè)計_第3頁
基于FPGA的直接數(shù)字頻率合成器設(shè)計_第4頁
基于FPGA的直接數(shù)字頻率合成器設(shè)計_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 JIANGSU UNIVERSITY OF TECHNOLOGY FPGA技術(shù)實驗報告 基于FPGA的直接數(shù)字頻率合成器設(shè)計學 院: 電氣信息工程學院 專 業(yè): 電子信息工程 班 級: 姓 名: 學 號: 指導教師: 戴霞娟、陳海忠 時 間: 2015年9月17日 25 目 錄1.功能要求22. 方案設(shè)計及原理框圖22.1 方案設(shè)計22.2 原理框圖32.2.1輸入電路32.2.2FPGA電路32.2.3D/A轉(zhuǎn)換電路43. 硬件電路設(shè)計及原理分析43.1 硬件電路圖43.2 原理分析53.3 DAC0832轉(zhuǎn)換器53.4 LM358芯片54.程序模塊設(shè)計、仿真結(jié)果及分析64.1頂層模塊64

2、.2分頻模塊64.3 時鐘模塊104.4正弦波產(chǎn)生模塊114.5三角波產(chǎn)生模塊134.6方波產(chǎn)生模塊154.7鋸齒波產(chǎn)生模塊174.8波形選擇模塊195. 軟硬件調(diào)試205.1軟件調(diào)試225.2硬件調(diào)試226.調(diào)試結(jié)果說明257.心得體會258.參考文獻25附 錄261.功能要求 通過本課題訓練,使學生掌握使用FPGA實現(xiàn)頻率合成的方法。要求學生根據(jù)正弦波形發(fā)生器的設(shè)計實例,舉一反三,設(shè)計多功能波形發(fā)生器。該波形發(fā)生器能產(chǎn)生正弦波、方波、三角波、鋸齒波和由用戶編輯的特定形狀波形,并且幅度、頻率可調(diào)。具體要求如下:基本要求:(1)具有產(chǎn)生正弦波、方波、三角波、鋸齒波4種周期性波形的功能。(2)輸

3、出波形的頻率范圍為100HZ200kHZ;至少可以輸出8種頻率的波形。(3)輸出波形幅度不大于5V(峰-峰值),且幅度可調(diào)。擴展要求:(1) 在頻率范圍為100HZ200kHZ內(nèi),頻率步進間隔100HZ。(2) 輸出波形幅度范圍05V(峰-峰值),可按步進0.1V(峰-峰值)調(diào)整。(3) 用LCD1602顯示輸出波形的類型、重復(fù)頻率(周期)和幅度。(4) 用鍵盤輸入編輯生成上述4種波形(同周期)的線性組合波形。(5) 用鍵盤和其他輸入裝置產(chǎn)生任意波形。(6) 具有波形存儲功能。2. 方案設(shè)計及原理框圖2.1方案設(shè)計 利用FPGA來完成設(shè)計,F(xiàn)PGA編程靈活,可以實現(xiàn)三角波、方波、鋸齒波和正弦波

4、的數(shù)字化處理,將一個周期內(nèi)的采樣點存儲起來,生成頻率可調(diào)的正弦波、方波、鋸齒波或者三角波,再通過D/A轉(zhuǎn)換和濾波電路便可得到模擬波形。利用該方法,編程簡單,實現(xiàn)靈活。2.2原理框圖 數(shù)字信號發(fā)生器系統(tǒng)主要由輸入部分、FPGA部分、D/A轉(zhuǎn)換部分、頻率調(diào)節(jié)和波形轉(zhuǎn)換部分組成。原理框圖如下圖1:調(diào)頻3分頻器FPGA部分系 統(tǒng) 控 制 器時鐘復(fù)位波形調(diào)頻1調(diào)頻2正弦波三角波方波鋸齒波波 形 DA 轉(zhuǎn) 換濾波輸出 圖1:多功能波形信號發(fā)生器原理框圖2.2.1輸入部分輸入部分包含以下功能按鍵:時鐘、復(fù)位、波形、調(diào)頻1、調(diào)頻2和調(diào)頻3。(1)時鐘:標準的50MHZ時鐘輸入。(2)復(fù)位:低電平復(fù)位。(3)波

5、形:為波形輸出選擇開關(guān),可以選擇單波形的輸出。(4)調(diào)頻1,2,3:可以改變正弦波、三角波、方波和鋸齒波的頻率,總共可以輸出8種不同頻率。2.2.2FPGA部分 FPGA是整個系統(tǒng)的核心,包括系統(tǒng)控制器、波形數(shù)據(jù)生成器、加法器、運算/譯碼、分頻器等電路。各部分具體功能如下:系統(tǒng)控制器:控制系統(tǒng)的每個部分狀態(tài)之間的協(xié)調(diào)。 分頻:分頻系數(shù)有的固定不變,也有可改變的。 正弦波:通過循環(huán)不斷地從RAM中依次讀取正弦波一個周期在時域上1024個采樣點的波形數(shù)據(jù)送入波形DAC,從而產(chǎn)生正弦波。正弦波的頻率取決于讀取數(shù)據(jù)的速度。 三角波:三角波波形是對稱的,每邊呈線性變化,所以可以根據(jù)地址數(shù)據(jù)做簡單運算,就

6、可以得到三角波。 鋸齒波:產(chǎn)生單調(diào)性鋸齒波,因此把地址數(shù)據(jù)進行左移2位,結(jié)果送波形DAC就可。 方波:方波產(chǎn)生有1024個采樣點組成,1024個采樣點的數(shù)據(jù)只有“低電平”和“高電平”2種狀態(tài)。2.2.3波形D/A轉(zhuǎn)換部分 采用具有8位分辨率的D/A轉(zhuǎn)換集成芯片DAC0832作為多種波形發(fā)生器的數(shù)模轉(zhuǎn)換器。由于多種波形發(fā)生器制使用一路D/A轉(zhuǎn)換,因而DAC0832可連續(xù)接成單緩沖器方式。另外,因DAC0832是一種電流輸出型D/A轉(zhuǎn)換器,要獲得模擬電壓輸出時,需外接運放來實現(xiàn)電流轉(zhuǎn)換為電壓。 由于在實際使用中輸出波形不僅需要單極性的(0+5V或-50V) 有時還需要雙極性的(±5V),

7、因而可用兩組運算放大器作為模擬電壓輸出電路,運放可選用LM358,其片內(nèi)集成了兩個運算放大器。3. 硬件電路設(shè)計及原理分析3.1硬件電路圖 圖2:波形信號發(fā)生器硬件電路圖3.2原理分析 本設(shè)計的工作原理為將要產(chǎn)生的波形數(shù)據(jù)存入波形存儲器 ,然后在參考時鐘的作用下 ,對輸入的頻率數(shù)據(jù)進行累加 ,并且將累加器的輸出一部分作為讀取波形存儲器的地址 ,將讀出的波形數(shù)據(jù)經(jīng)D/A轉(zhuǎn)換為相應(yīng)的模擬電壓信號。本研究的重點就是用VHDL來實現(xiàn)DDS的功能 ,能夠達到高精度的輸出 ,同時標準波形數(shù)據(jù)生成存放在 ROM 中 ,可以簡化運算過程 ,提高運算速度 ,加快反應(yīng)時間。3.3 DAC0832轉(zhuǎn)換器 DAC08

8、32是雙列直插式8位D/A轉(zhuǎn)換器,在電路中DAC0832被接成單緩沖器方式。它的ILE,VCC,8腳與+5V相連,CS,XFER,WR2,WR1,3腳,10腳與GND相連,WR1與CP信號相連。這樣DAC0832的8位DAC寄存器始終處于導通狀態(tài),因此當CP變成低電平時,數(shù)據(jù)線上的數(shù)據(jù)便可直接通過8位DAC寄存器,并有其8位D/A轉(zhuǎn)換器進行轉(zhuǎn)換。 圖3: DAC0832芯片引腳圖3.4 LM358芯片 LM358是常用的雙運,LM358里面包括有兩個高增益、獨立的、內(nèi)部頻率補償?shù)碾p運放,適用于電壓范圍很寬的單電源,而且也適用于雙電源工作方式,它的應(yīng)用范圍包括傳感放大器、直流增益模塊和其他所有可

9、用單電源供電的使用運放的地方使用。 圖4: LM358芯片引腳圖4. 程序模塊設(shè)計、仿真結(jié)果分析 波形發(fā)生器可以由頂層模塊、分頻模塊、時鐘模塊、正弦波產(chǎn)生模塊、三角波產(chǎn)生模塊、方波產(chǎn)生模塊和輸出波形選擇模塊組成。4.1頂層模塊 頂層文件將已經(jīng)設(shè)計的各個模塊聯(lián)系在一起成為一個整體,實驗時使用Quartus9.0編寫VHDL程序?qū)崿F(xiàn)頂層文件設(shè)計。頂層文件仿真圖如下5: 圖5: 頂層文件仿真圖4.2分頻模塊 根據(jù)DAC0832 輸出控制時序,利用接口電路圖,DAC0832是8位的D/A轉(zhuǎn)換器,轉(zhuǎn)換周期為1s,又因為FPGA的系統(tǒng)時鐘為50MHz,必須對其進行分頻處理,實驗使用100分頻,實驗時使用Q

10、uartus9.0編寫VHDL程序生成時鐘分頻器。VHDL程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY wxm_CLK ISPORT(CLK:IN STD_LOGIC;EN,EN1,EN2:IN STD_LOGIC;CLKOUT:OUT STD_LOGIC);END;ARCHITECTURE BEHAVE OF wxm_CLK ISSIGNAL CNT:STD_LOGIC_VECTOR(19 DOWNTO 0);SIGNAL EN3,EN4,EN5: STD_LOGIC;SI

11、GNAL EN6:STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINEN6<=EN3&EN4&EN5;PROCESS(EN)BEGINIF EN'EVENT AND EN='0' THEN IF EN3 ='0' THEN EN3<='1'ELSEEN3<='0'END IF;END IF;END PROCESS;PROCESS(EN1)BEGINIF EN1'EVENT AND EN1='0' THEN IF EN4 ='0' T

12、HEN EN4<='1'ELSEEN4<='0'END IF;END IF;END PROCESS;PROCESS(EN2)BEGINIF EN2'EVENT AND EN2='0' THEN IF EN5 ='0' THEN EN5<='1'ELSEEN5<='0'END IF;END IF;END PROCESS;PROCESS(CLK,EN6)BEGINIF CLK'EVENT AND CLK='1' AND EN6="000&

13、quot; THENIF CNT>4 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>2 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;ELSIF CLK'EVENT AND CLK='1' AND EN6="001" THENIF CNT>8 THENCNT<=(OTHERS=>'0');CLKOUT<='0'

14、ELSIF CNT>4 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;ELSIF CLK'EVENT AND CLK='1' AND EN6="010" THENIF CNT>16 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>8 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;

15、ELSIF CLK'EVENT AND CLK='1' AND EN6="011" THENIF CNT>30 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>15 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;ELSIF CLK'EVENT AND CLK='1' AND EN6="100" THENIF CNT>6

16、2 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>31 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;ELSIF CLK'EVENT AND CLK='1' AND EN6="101" THENIF CNT>124 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>62 T

17、HENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;ELSIF CLK'EVENT AND CLK='1' AND EN6="110" THENIF CNT>250 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>125 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;ELSIF CLK'

18、;EVENT AND CLK='1' AND EN6="111" THENIF CNT>500 THENCNT<=(OTHERS=>'0');CLKOUT<='0'ELSIF CNT>250 THENCLKOUT<='1'CNT<=CNT+1;ELSECNT<=CNT+1;END IF;END IF;END PROCESS;END;4.3時鐘模塊 圖6VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.S

19、TD_LOGIC_UNSIGNED.ALL;ENTITY CNT1024 ISPORT(CLK:IN STD_LOGIC; Q:OUT STD_LOGIC_VECTOR(9 DOWNTO 0);END;ARCHITECTURE BHV OF CNT1024 ISSIGNAL Q1:STD_LOGIC_VECTOR(9 DOWNTO 0);BEGINPROCESS(CLK)BEGIN IF CLK'EVENT AND CLK='1' THEN Q1<=Q1+1;END IF;END PROCESS;Q<=Q1;END;4.4正弦波產(chǎn)生模塊該模塊輸入信號由時鐘(

20、clk)和復(fù)位信號(reset)構(gòu)成,當信號發(fā)生器選擇信號(sel2.0)為4時,該模塊輸出端(q9.0)對外輸出。模塊振幅隨時鐘的變化階梯性遞增,輸出波形參數(shù)可以通過程序進行設(shè)定。VHDL程序為:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY altera_mf;USE altera_mf.all;ENTITY cyy_sin ISPORT(address: IN STD_LOGIC_VECTOR (9 DOWNTO 0);clock: IN STD_LOGIC ;q: OUT STD_LOGIC_VECTOR (9 DOWNTO 0);EN

21、D cyy_sin;ARCHITECTURE SYN OF cyy_sin ISSIGNAL sub_wire0: STD_LOGIC_VECTOR (9 DOWNTO 0);COMPONENT altsyncramGENERIC (clock_enable_input_a: STRING;clock_enable_output_a: STRING;init_file: STRING;intended_device_family: STRING;lpm_hint: STRING;lpm_type: STRING;numwords_a : NATURAL;operation_mode: STRI

22、NG;outdata_aclr_a: STRING;outdata_reg_a: STRING;widthad_a: NATURAL;width_a: NATURAL;width_byteena_a: NATURAL);PORT (clock0: IN STD_LOGIC ;address_a: IN STD_LOGIC_VECTOR (9 DOWNTO 0);q_a: OUT STD_LOGIC_VECTOR (9 DOWNTO 0);END COMPONENT;BEGINq <= sub_wire0(9 DOWNTO 0); altsyncram_component : altsyn

23、cramGENERIC MAP (clock_enable_input_a => "BYPASS",clock_enable_output_a => "BYPASS",init_file => "E:/wxm/wxm_sin.mif",intended_device_family => "Cyclone II",lpm_hint => "ENABLE_RUNTIME_MOD=NO",lpm_type => "altsyncram",numw

24、ords_a => 1024,operation_mode => "ROM",outdata_aclr_a => "NONE",outdata_reg_a => "CLOCK0",widthad_a => 10,width_a => 10,width_byteena_a => 1)PORT MAP (clock0 => clock,address_a => address,q_a => sub_wire0);END SYN;仿真結(jié)果:4.5三角波產(chǎn)生模塊 該模塊輸入信號由時鐘

25、(clk)和復(fù)位信號(reset)構(gòu)成,當信號發(fā)生器選擇信號(sel2.0)為2時,該模塊輸出端(q9.0)對外輸出。模塊內(nèi)計數(shù)器隨時鐘先遞增后遞減,波形隨之先遞增后遞減,輸出波形參數(shù)可以通過程序進行設(shè)定。VHDL程序LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY altera_mf;USE altera_mf.all;ENTITY cyy_sj ISPORT(address: IN STD_LOGIC_VECTOR (9 DOWNTO 0); clock: IN STD_LOGIC ; q: OUT STD_LOGIC_VECTOR (9 D

26、OWNTO 0);END cyy_sj;ARCHITECTURE SYN OF cyy_sj ISSIGNAL sub_wire0: STD_LOGIC_VECTOR (9 DOWNTO 0);COMPONENT altsyncramGENERIC (clock_enable_input_a: STRING;clock_enable_output_a: STRING;init_file: STRING;intended_device_family: STRING;lpm_hint: STRING;lpm_type: STRING;numwords_a: NATURAL;operation_mo

27、de: STRING;outdata_aclr_a: STRING;outdata_reg_a: STRING;widthad_a: NATURAL;width_a: NATURAL;width_byteena_a: NATURAL);PORT (clock0: IN STD_LOGIC ;address_a: IN STD_LOGIC_VECTOR (9 DOWNTO 0);q_a: OUT STD_LOGIC_VECTOR (9 DOWNTO 0);END COMPONENT;BEGINq <= sub_wire0(9 DOWNTO 0);altsyncram_component :

28、 altsyncramGENERIC MAP (clock_enable_input_a => "BYPASS",clock_enable_output_a => "BYPASS",init_file => "E:/wxm/wxm_sj.mif",intended_device_family => "Cyclone II",lpm_hint => "ENABLE_RUNTIME_MOD=NO",lpm_type => "altsyncram"

29、;,numwords_a => 1024,operation_mode => "ROM",outdata_aclr_a => "NONE",outdata_reg_a => "CLOCK0",widthad_a => 10,width_a => 10,width_byteena_a => 1)PORT MAP (clock0 => clock, address_a => address, q_a => sub_wire0);END SYN;仿真結(jié)果:4.6方波產(chǎn)生模塊 該模塊

30、輸入信號由時鐘(clk)和復(fù)位信號(reset)構(gòu)成,當信號發(fā)生器選擇信號(sel2.0)為5時,該模塊輸出端(q 9.0)對外輸出。模塊振幅隨時鐘的變化持續(xù)變?yōu)楦唠娖?或低電平,輸出波形參數(shù)可以通過程序進行設(shè)定。VHLIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY altera_mf;USE altera_mf.all;ENTITY cyy_square ISPORT(address: IN STD_LOGIC_VECTOR (9 DOWNTO 0);clock: IN STD_LOGIC ;q: OUT STD_LOGIC_VECTOR (9

31、 DOWNTO 0);END cyy_square;ARCHITECTURE SYN OF cyy_square ISSIGNAL sub_wire0: STD_LOGIC_VECTOR (9 DOWNTO 0);COMPONENT altsyncramGENERIC (clock_enable_input_a: STRING;clock_enable_output_a: STRING;init_file: STRING;intended_device_family: STRING;lpm_hint: STRING;lpm_type: STRING;numwords_a: NATURAL;op

32、eration_mode: STRING;outdata_aclr_a: STRING;outdata_reg_a: STRING;widthad_a: NATURAL;width_a: NATURAL;width_byteena_a: NATURAL);PORT (clock0: IN STD_LOGIC ;address_a: IN STD_LOGIC_VECTOR (9 DOWNTO 0);q_a: OUT STD_LOGIC_VECTOR (9 DOWNTO 0);END COMPONENTBEGINq <= sub_wire0(9 DOWNTO 0);altsyncram_co

33、mponent : altsyncramGENERIC MAP (clock_enable_input_a => "BYPASS",clock_enable_output_a => "BYPASS",init_file => "E:/wxm/wxm_square.mif",intended_device_family => "Cyclone II",lpm_hint => "ENABLE_RUNTIME_MOD=NO",lpm_type => "al

34、tsyncram",numwords_a => 1024,operation_mode => "ROM",outdata_aclr_a => "NONE",outdata_reg_a => "CLOCK0",widthad_a => 10,width_a => 10,width_byteena_a => 1)PORT MAP (clock0 => clock,address_a => address,q_a => sub_wire0);END SYN;仿真結(jié)果:4.

35、7鋸齒波產(chǎn)生模塊VHDL程序:LIBRARY ieee;USE ieee.std_logic_1164.all;LIBRARY altera_mf;USE altera_mf.all;ENTITY cyy_jc ISPORT(address: IN STD_LOGIC_VECTOR (9 DOWNTO 0); clock: IN STD_LOGIC ; q: OUT STD_LOGIC_VECTOR (9 DOWNTO 0);END cyy_jc;ARCHITECTURE SYN OF cyy_jc ISSIGNAL sub_wire0: STD_LOGIC_VECTOR (9 DOWNTO

36、0);COMPONENT altsyncramGENERIC (clock_enable_input_a: STRING;clock_enable_output_a: STRING;init_file: STRING;intended_device_family: STRING;lpm_hint: STRING;lpm_type: STRING;numwords_a: NATURAL;operation_mode: STRING;outdata_aclr_a: STRING;outdata_reg_a: STRING;widthad_a: NATURAL;width_a: NATURAL;wi

37、dth_byteena_a: NATURAL);PORT (clock0: IN STD_LOGIC ;address_a: IN STD_LOGIC_VECTOR (9 DOWNTO 0);q_a: OUT STD_LOGIC_VECTOR (9 DOWNTO 0);END COMPONENT;BEGINq <= sub_wire0(9 DOWNTO 0);altsyncram_component : altsyncramGENERIC MAP (clock_enable_input_a => "BYPASS",clock_enable_output_a =&

38、gt; "BYPASS",init_file => "E:/wxm/wxm_jc.mif",intended_device_family => "Cyclone II",lpm_hint => "ENABLE_RUNTIME_MOD=NO",lpm_type => "altsyncram",numwords_a => 1024,operation_mode => "ROM",outdata_aclr_a => "NONE&q

39、uot;,outdata_reg_a => "CLOCK0",widthad_a => 10,width_a => 10,width_byteena_a => 1)PORT MAP (clock0 => clock,address_a => address,q_a => sub_wire0);END SYN;4.8輸出波形選擇模塊VHDL程序LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY cyy_MUX ISPORT(Q1,Q2,Q3,Q4:IN STD_LOGIC_VECTOR(9

40、DOWNTO 0);A1,A0:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(9 DOWNTO 0);END;ARCHITECTURE ONE OF cyy_MUX ISSIGNAL A:STD_LOGIC_VECTOR(1 DOWNTO 0);SIGNAL A2,A3:STD_LOGIC;BEGINPROCESS(A1)BEGINIF A1'EVENT AND A1='0' THEN IF A2='0' THENA2<='1'ELSE A2<='0'END IF;END IF;END PROCESS;PROCESS(A0)BEGINIF A0'EVENT AND A0='0' THEN IF

溫馨提示

  • 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

提交評論