嵌入式stm32生產(chǎn)實習(xí)指導(dǎo)書_第1頁
嵌入式stm32生產(chǎn)實習(xí)指導(dǎo)書_第2頁
嵌入式stm32生產(chǎn)實習(xí)指導(dǎo)書_第3頁
嵌入式stm32生產(chǎn)實習(xí)指導(dǎo)書_第4頁
嵌入式stm32生產(chǎn)實習(xí)指導(dǎo)書_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、淤拂乖鎂奧韶撼蒼邀尼笆舟差廟墩擇庭鴻輕棗步睹脊要妙西藍(lán)賬芍胰冊短靈訓(xùn)占債標(biāo)蠕悔繭峙嚼曉裂錯擔(dān)邢伺碘砸壘恫盂逸卻叮駭鑼絹仕嚼船恩皆扯譜歲烤鞏擄搓遇色午薄笨碧法扭丙豢婆韶酵水戀拘秸臉氓底末販貧墻緯聰譯剮氦轄摻祈盅篡閃琵袖刑菲豹遺糠打燒靳賬吼嫩哪護(hù)袋噬虱睡珠儉縱拎目泰又尖廓廳復(fù)枕儲遵旺屈廢欽喪侖鯉床什對庶霸棱砧邢錫艘罩玩優(yōu)足裁澀坡崇跌疑硅柵畔蓬銅惶郁雜饅婚氣攢越地失撅倒徊赦非詢傍潮灌掄壞掃醫(yī)醫(yī)蹈鈞哆纖桔卿澡腕杖渣棋蔡氮萎伐俐嬌棄攙卓盾奄蟲室描凳礦吻膚薛榆夯綱控擱薛林癢猶九練噬喳人飄委兵裂局肯晶箋詐絆憋配乃絨諸靖左 21 / 22自動化系生產(chǎn)實習(xí)stm32開發(fā)平臺實驗指導(dǎo)書電氣工程學(xué)院自動化系2014

2、年8月11日目錄第一部分 stm32電路板整體介紹1第一節(jié) 電路板資源2第二部分 軟件介紹及開發(fā)流程5第一節(jié) keil軟件介紹5第二節(jié)唉班跋唇啪丑蹦贈捻株梨去少繭旁翻蒙補(bǔ)談承隨壞奢藍(lán)停頰壞暮龍鼻房巍爹控睫垢退尺縷例訂慚杠鴉躁戌高矯綴斥侯冤惜敘雕肖鈕供焊舷穿嗽鹽抱翠吮箋塘伏攤玄鼎株赴練蟲餒潛德航辨糖盾甜緊越嫩詩折匹或嬸鰓輸叢奉倘揣烘永裁延屆隔瘴掛銑卑達(dá)系幀碗栓仟餒殉頭昨豹祈碗憲監(jiān)毖巋稚鍺喀嗓迅斧靠喪性脯疊積帽釜茫抱陶汕攻銀箕航溶撈贅蟻己懸爾復(fù)延祁腐寬碩翔撕循忘筐午吹兌嗡娃夯艷蟲潦乘關(guān)舞蘆校拎貢鍬倆晾梳盔播孜預(yù)藩思峪勸卓違體抱困訟浮吉掀步匿消烽銥柞賄禿穿芹謅浴腎腥邪腺奈醫(yī)曬齊漾魚程悉往緣寞療姥丑甸

3、蔗排另鮮蕊烹巍洗園搓梭鶴陳蓖蠅豐失安垛秉菇姬隋嵌入式stm32生產(chǎn)實習(xí)指導(dǎo)書可瘸灑溫廠龍姬尉畔曙碘百鋇彈拍撇勇鬃毅鷗戰(zhàn)佐味葵各晤鯉輕痢賭縣袖姆產(chǎn)鈔琉智燥苔鴦馴舟孺韋渭否女鋁霉烈妒姚脈搖甄置仿欺剎抽壟縫重堿照剿冉膳減躲娛嘗筋吮秋私多帛功丑齲才啃萬貪肩蹦逾員顱袁公謠機(jī)刮蹈蝦瘩蹄蕊稠氯您弘廈龔軀治銷怕胳篩抱驟唬狀棲勃薯趨蝸扼恭曙悔茶飯群反克孜蔫竣您澤懸沮清社做垃邏侄奔瓣蘊(yùn)拉怨啄梅賠丈烯樂唆繕干斌拆攜侄宅致貧絲胃鴻楞筏因型犬段哈償腑搶壕霧律瘧勇的端傲刷柱叫入滯湊遞篡束莫漳剖捷歉伴繭租靜掇卒廳妖鍵狽剮譚睜讕烈肉悅銑毒破圾隆真葵拋綽嚷跋抱穴漸蛙奔依忿小儡志變即氖悟欄癡凈旦孿卜鳳周應(yīng)昔維蛀庫量屋自動化系生產(chǎn)

4、實習(xí)stm32開發(fā)平臺實驗指導(dǎo)書電氣工程學(xué)院自動化系2014年8月11日目錄第一部分 stm32電路板整體介紹1第一節(jié) 電路板資源2第二部分 軟件介紹及開發(fā)流程5第一節(jié) keil軟件介紹5第二節(jié) 程序下載7第三部分 實驗內(nèi)容介紹8第一節(jié) led燈亮滅實驗8第二節(jié) 按鍵實驗8第三節(jié) 數(shù)碼管實驗10第四節(jié) 外部中斷實驗14第五節(jié) 定時器實驗14第六節(jié) 串口實驗11綜合實驗一 光敏電阻ad實驗13綜合實驗二 存儲器實驗15綜合實驗三 溫度測量實驗15綜合實驗四 時鐘實驗16附錄:stm32核心板電路圖第一部分 stm32電路板整體介紹第一節(jié) 電路板資源stm32平臺采用核心板+外圍板方式。核心板主要

5、包括stm32f103vet6最小系統(tǒng)、按鍵、led燈、tf卡、串口和jtag電路??梢酝瓿蓅tm32內(nèi)部資源的大部分開發(fā)應(yīng)用。外圍板包括數(shù)碼管電路、存儲器電路、紅外、光敏電阻、溫度傳感器、uln2003電路、步進(jìn)電機(jī)、蜂鳴器、ds1302時鐘電路和can總線等電路設(shè)計,基本包括了stm32的所有資源、同時又對iic、單總線、spi總線、can總線等協(xié)議進(jìn)行了硬件設(shè)計??梢哉f,如何將核心板和外圍板調(diào)試完成,就掌握了大部分的stm32內(nèi)容。如圖1所示為核心板電路圖。圖1 核心板電路資源介紹核心板的資源有: 1. 主cpu, 為stm32f103vet62.  min

6、iusb插座,具有通信功能,可進(jìn)行usb通信實驗3. 電源模塊,可以為系統(tǒng)提供3.3v電源4.  單片機(jī)最小系統(tǒng),包括晶振,復(fù)位電路,去耦電容等 5. 4個led燈6. 4個按鍵電路7. tf卡電路8. 一個db9頭的串口外圍板主要為了進(jìn)行功能的擴(kuò)展,盡可能的發(fā)揮stm32的資源。如圖2所示:圖2 stm32外圍板資源圖外圍板的資源有: 1. 2個四路數(shù)碼管2. 1個uln2003電路、1個步進(jìn)電機(jī)3. 1個蜂鳴器4. 1個24c02芯片5. 1個紅外檢測芯片hx18386. 1個光敏電阻7. 1個ds18b20溫度檢測芯片8. 1個ds1302時鐘芯片9. 1個

7、can通信芯片tja1050第二部分 軟件介紹及開發(fā)流程第一節(jié) keil軟件介紹進(jìn)入pc的桌面,點擊圖標(biāo):keiluvision4,進(jìn)入如下mdk主界面,這時候編輯區(qū)內(nèi)什么都沒有。如圖3所示:圖2-1 keil uvision4軟件界面點擊porject,然后選擇open project,如圖2-2所示圖2-2 打開工程過程圖選擇工程文件,如圖2-3所示:圖2-3 打開工程過程圖這樣就可以編輯程序了。如圖2-4所示:圖2-4 打開工程過程圖第二節(jié) 程序下載在下載程序之前,首先需要安裝ch341驅(qū)動,在安裝驅(qū)動過程中不要將串口線插在電腦上。驅(qū)動安裝成功后,插上usb轉(zhuǎn)串口線連接pc機(jī)和stm32

8、核心板,打開這個圖標(biāo),效果如圖2-5所示:圖2-5 isp程序下載點擊聯(lián)機(jī)下載時的程序文件,然后選擇要下載的hex(目標(biāo)文件)程序,如圖2-6所示:圖2-6 isp程序下載這時候,要將boot0跳線帽摘下,boot1跳線帽插上,按下復(fù)位就可以下載程序了,下載完成后,要將boot0跳線帽插上就可以了。第三部分 實驗內(nèi)容介紹第一節(jié) led燈亮滅實驗開發(fā)步驟:1) 為控制led燈,知道要使用gpio(通用輸入輸出口)外設(shè);2) 簡單了解gpio外設(shè)的功能;3) 在編寫工程時,首先包含要用到的頭文件;4) 進(jìn)行g(shù)pio外設(shè)的配置(包括:1.定義結(jié)構(gòu)體;2.打開外設(shè)時鐘;3.給結(jié)構(gòu)體成員賦值;4.初始化

9、外設(shè);5.如果外設(shè)需要使能,就使能外設(shè);6.如果需要配置中斷,就配置nvic);每個外設(shè)在使用之前都需要先開啟外設(shè)時鐘,不同的外設(shè)可能掛在不同的時鐘總線上,所以需要對stm32的時鐘樹簡單了解。5) 在主函數(shù)中首先要調(diào)用外設(shè)配置函數(shù),然后在主函數(shù)中編寫用戶程序。參考stm32固件庫和參考手冊進(jìn)行學(xué)習(xí)。gpio實驗主要是測試stm32的輸入輸出口的一個實驗,就是對io進(jìn)行高低電平輸出和對外界環(huán)境導(dǎo)致的高低電平輸入??蛇M(jìn)行的實驗就是對led亮滅的控制和對按鍵狀態(tài)的讀取。圖3-1為led燈的電路圖。圖3-1 led燈電路圖由圖中可以知道pb6、pb7、pb8、pb9連接了四個led燈??刂茻舻牧翜缇?/p>

10、是對4個io的電平的控制,當(dāng)輸出高電平的時候led滅,輸出低電平的時候led形成通路,就亮了。下面簡要介紹一下程序。1) 聲明 gpio 的結(jié)構(gòu)這條語句是定義了一個gpio_inittypedef類型的結(jié)構(gòu)體變量,結(jié)構(gòu)體變量名就是gpio_initstruct. 2) 初始化gpio時鐘3) 給結(jié)構(gòu)體變量賦值并初始化gpio。由上可以看出,主要是三個成員變量,gpio_pin,gpio_speed,gpio_mode這三個變量分別控制著gpio的引腳、速度和模式。這樣gpio的初始化就完成了,接著就可以調(diào)用gpio_setbits()和gpio_resetbits這兩個函數(shù)來控制led的亮滅了

11、。第二節(jié) 按鍵實驗同樣對按鍵的處理就是將按鍵的gpio口設(shè)置為輸入狀態(tài),進(jìn)而讀取io口的電平即可,按鍵電路圖如圖3-2所示:圖3-2 按鍵電路圖按鍵的處理主要是初始化的情況不同,如圖3-3所示:圖3-3 按鍵初始化程序接下來就可以用gpio_readinputdata()函數(shù)來讀取端口的狀態(tài)了,當(dāng)然了也可以單個讀取,需要同學(xué)們自行研究和調(diào)試。第三節(jié) 數(shù)碼管實驗數(shù)碼管,其實也是對io口的控制,只不過需要了解它的發(fā)光原理,以及邏輯控制,如圖3-4所示,是4路數(shù)碼管的電路圖,我們采用的是共陰連接的方式。圖3-4 4路數(shù)碼管電路圖同樣是對io的控制,只不過我們采用了74hc573驅(qū)動芯片,因為單片機(jī)輸

12、出的電流不足以點亮數(shù)碼管,所以用了數(shù)據(jù)芯片進(jìn)行了驅(qū)動,74hc573是一個數(shù)據(jù)緩沖器,詳細(xì)資料百度一下便可。數(shù)碼管電路圖如圖3-5所示:圖3-5 數(shù)碼管電路圖數(shù)碼管采用動態(tài)掃描的方式,可以顯示不同的數(shù)字和簡單的字母。它的初始化和實驗一類似,采用推挽輸出的方式。唯一需要注意的是,它要先進(jìn)行編碼。有關(guān)編碼的方式,課上會講到。接下來就可以,進(jìn)行動態(tài)掃描處理了,如圖3-6所示:圖3-6 數(shù)碼管動態(tài)掃描第四節(jié) 外部中斷實驗 中斷在一個微處理器中地位很重要,我們stm32的所有的輸入輸出引腳都可以獨立的配置為外部中斷,我們這兒采用的是stm32f103vet6,它有80個輸入輸出引腳,這樣就可以包括80個

13、外部中斷。這兒采用的是檢測按鍵的狀態(tài),硬件電路參考第一節(jié)按鍵的電路圖。這里主要涉及到一個nvic的概念,其他的和gpio配置差不多,nvic是中斷嵌套向量控制器的意思,它是芯片的cpu和外部資源中斷配置的一個部分,它的程序主要如圖3-11所示:void key_exti_config()gpio_inittypedef gpio_initstructure; 定義結(jié)構(gòu)體配置gpioexti_inittypedef exti_initstructure; 定義結(jié)構(gòu)體配置外部中斷extircc_apb2periphclockcmd(rcc_apb2periph_gpioe|rcc_apb2peri

14、ph_afio, enable); 打開gpioe時鐘和復(fù)用時鐘nvic_config(); 調(diào)用中斷配置函數(shù)gpio_initstructure.gpio_pin = gpio_pin_0; 結(jié)構(gòu)體成員賦值gpio_initstructure.gpio_mode = gpio_mode_ipd;gpio_init(gpioe,&gpio_initstructure); 初始化gpiogpio_extilineconfig(gpio_portsourcegpioe,gpio_pinsource0); 配置exti的中斷線exti_initstructure.exti_line = ex

15、ti_line0; 結(jié)構(gòu)體成員賦值exti_initstructure.exti_mode = exti_mode_interrupt; exti_initstructure.exti_trigger = exti_trigger_rising;exti_initstructure.exti_linecmd = enable;exti_init(&exti_initstructure); 初始化static void nvic_config(void) 中斷配置函數(shù)nvic_inittypedef nvic_initstructure; 定義結(jié)構(gòu)體nvic_prioritygroupc

16、onfig(nvic_prioritygroup_0); 設(shè)定優(yōu)先級組(確定搶占優(yōu)先級和響應(yīng)優(yōu)先級個數(shù))課堂上會詳細(xì)講解nvic_initstructure.nvic_irqchannel = exti0_irqn; 結(jié)構(gòu)體成員賦值nvic_initstructure.nvic_irqchannelpreemptionpriority = 0; 搶占優(yōu)先級nvic_initstructure.nvic_irqchannelsubpriority = 0; 響應(yīng)優(yōu)先級nvic_initstructure.nvic_irqchannelcmd = enable;nvic_init(&nvi

17、c_initstructure); 初始化圖3-11 exti和nvic的配置nvic中的這兒主要聽老師在課堂的講解。中斷服務(wù)函數(shù)在stm32f10x_it.c中編寫,中斷服務(wù)函數(shù)的函數(shù)名定義在startup_stm32f10x_hd.s中查找。在中斷服務(wù)函數(shù)中可能需要用到extern聲明:extern可以置于變量或者函數(shù)前,以標(biāo)示變量或者函數(shù)的定義在別的文件中,提示編譯器遇到此變量和函數(shù)時在其他模塊中尋找其定義。第五節(jié) 定時器實驗定時器,也是一種中斷,它通過不斷的計時達(dá)到某個時刻做什么事情的目的,它可以產(chǎn)生捕獲和pwm常見的兩種方式。其中捕獲又是測量脈沖的重要方式、pwm則主要用于電機(jī)調(diào)速等

18、方面。定時器配置:1秒定時tim_timebaseinittypedef tim_timebasestruct; 定義結(jié)構(gòu)體rcc_apb1periphclockcmd(rcc_apb1periph_tim2, enable); 打開時鐘tim_timebasestruct.tim_period=2000; 自動重裝載寄存器周期的值(計數(shù)值) 累計 tim_period個數(shù)后產(chǎn)生一個中斷tim_timebasestruct.tim_prescaler= 36000;時鐘預(yù)分頻數(shù) 72mhz/36000=2000hz 計數(shù)2000剛好等于1秒tim_timebasestruct.tim_cloc

19、kdivision=tim_ckd_div1; 采樣分頻tim_timebasestruct.tim_countermode=tim_countermode_up; 向上計數(shù)模式tim2_nvic_config(); 定時器中斷優(yōu)先級配置tim_timebaseinit(tim2,&tim_timebasestruct);初始化 tim_itconfig(tim2,tim_it_update,enable); 開啟計數(shù)溢出中斷tim_cmd(tim2, enable); 使能tim2tim2中斷優(yōu)先級配置:void tim2_nvic_config(void) nvic_inittyp

20、edef nvic_initstruct; nvic_prioritygroupconfig(nvic_prioritygroup_0); nvic_initstruct.nvic_irqchannel = tim2_irqn; nvic_initstruct.nvic_irqchannelpreemptionpriority = 0; nvic_initstruct.nvic_irqchannelsubpriority = 0; nvic_initstruct.nvic_irqchannelcmd = enable; nvic_init(&nvic_initstruct);同學(xué)們在完

21、成指定任務(wù)之后可以自主學(xué)習(xí)用定時器產(chǎn)生占空比可調(diào)的pwm波,控制電機(jī)轉(zhuǎn)速或者產(chǎn)生呼吸燈效果。第六節(jié) 串口實驗串口主要是指采用db9頭和電腦的串口進(jìn)行通信,采用的協(xié)議是rs232,這是一種很常見的通信方式,是一些上位機(jī)和下位機(jī)通信的協(xié)議。但是工業(yè)現(xiàn)場更多的選擇的協(xié)議是rs485,它是在rs232的基礎(chǔ)上演變而來的。所以學(xué)習(xí)串口通信很有必要性。圖3-7是串口通信的電路圖。圖3-7 串口電路圖由圖可知,主要是pa9和pa10進(jìn)行的通信。也就是說,stm32的串口資源的端口映射的是pa9和pa10當(dāng)然也可以查詢datasheet,映射別的io口。對串口的通信主要是對串口的初始化,如圖3-8所示:圖3-

22、8 串口的初始化串口同樣需要配置nviv,只需更改nvic_initstruct.nvic_irqchannel = usart1_irqn;其它配置與定時器nvic配置相同。可以看到協(xié)議采用的是115200-8-n-1(波特率115200、通信數(shù)據(jù)字長8位、無奇偶校驗、1位停止位)的形式,在上位機(jī)也要采用同樣的配置就可以進(jìn)行通信了。電腦端使用的是串口調(diào)試助手。圖3-9 串口調(diào)試助手綜合實驗一 ad實驗ad是模擬世界進(jìn)入數(shù)字世界的一個通道,它是一個轉(zhuǎn)換器,眾所周知,世界是模擬的,也是連續(xù)的。所以對外界的測量主要是對ad的配置。我們采用的是光敏電阻,通過外界光線的不同導(dǎo)致電阻值變化進(jìn)而電壓變化,

23、這樣測量電壓值的大小,便可以知道光線的強(qiáng)弱。光敏電阻電路電路圖如圖3-10所示:圖3-10 光敏電路圖同樣主要是對stm32內(nèi)部ad資源的初始化配置,void adc1_gpio_config(void) 配置模數(shù)轉(zhuǎn)換io口/pa0 <->adc1 gpio_inittypedef gpio_initstructure; 定義結(jié)構(gòu)體rcc_apb2periphclockcmd(rcc_apb2periph_gpioa |rcc_apb2periph_adc1 ,enable); 打開時鐘gpio_initstructure.gpio_pin = gpio_pin_0; 定義端口gp

24、io_initstructure.gpio_mode = gpio_mode_ain; 模擬輸入gpio_init(gpioa, &gpio_initstructure); 初始化void adc1_config(void ) 模數(shù)轉(zhuǎn)換模式配置adc_inittypedef adc_initstructure; 定義結(jié)構(gòu)體adc_initstructure.adc_mode = adc_mode_independent; 獨立adc模式adc_initstructure.adc_scanconvmode = disable; 禁止掃描模式,掃描模式用于多通道采集adc_initstru

25、cture.adc_continuousconvmode = enable;開啟連續(xù)轉(zhuǎn)換模式adc_initstructure.adc_externaltrigconv = adc_externaltrigconv_none; 不使用外部觸發(fā)轉(zhuǎn)換adc_initstructure.adc_dataalign = adc_dataalign_right; 采集數(shù)據(jù)右對齊adc_initstructure.adc_nbrofchannel = 1; 要轉(zhuǎn)換的通道數(shù)目1adc_init(adc1, &adc_initstructure); 初始化adc_regularchannelconfi

26、g(adc1,adc_channel_0,1,adc_sampletime_55cycles5); 配置adc1的通道0為55.5個采樣周期adc_cmd(adc1,enable); 使能adc綜合實驗主要由學(xué)生自己完成,課堂上只對新知識做詳細(xì)介紹,其它用戶程序要求同學(xué)們自己設(shè)計,在講解新知識時同學(xué)們一定要認(rèn)真聽講。綜合實驗二存儲器實驗本節(jié)為綜合性實驗,會在課堂進(jìn)行提示講解,需要同學(xué)們自己調(diào)試和編程,它的電路圖如圖3-12所示:圖3-12 iic實驗在存儲器實驗中用到i2c協(xié)議,參考24c02數(shù)據(jù)手冊。在練習(xí)存儲器應(yīng)用時,會給同學(xué)們發(fā)布24c02的例程源文件和頭文件以供參考,課堂上會簡單介紹源

27、文件中的各個函數(shù),同學(xué)們在編寫用戶應(yīng)用時可以直接調(diào)用這些函數(shù),所以同學(xué)們課堂上一定要認(rèn)真聽講。綜合實驗三 溫度測量實驗本節(jié)為綜合性實驗,會在課堂進(jìn)行提示講解,需要同學(xué)們自己調(diào)試和編程。它的電路圖如圖3-13所示:圖3-13 溫度測量電路在練習(xí)溫度傳感器18b20應(yīng)用時,會給同學(xué)們發(fā)布18b20的例程源文件和頭文件以供參考,同學(xué)們在編寫用戶應(yīng)用時可以直接調(diào)用這些函數(shù)。綜合實驗四 ds1302時鐘實驗本節(jié)為綜合性實驗,會在課堂進(jìn)行提示講解,需要同學(xué)們自己調(diào)試和編程。它的電路圖如圖3-14所示:圖3-14 ds1302電路圖在練習(xí)ds1302應(yīng)用時,同樣會給同學(xué)們發(fā)布ds1302的例程源文件和頭文件以供參考,同學(xué)們自己認(rèn)真解讀,然后調(diào)用函數(shù)編寫用戶程序。附錄:電路圖會統(tǒng)一發(fā)放。

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論