中斷向量表分析_第1頁
中斷向量表分析_第2頁
中斷向量表分析_第3頁
中斷向量表分析_第4頁
中斷向量表分析_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、* (C) COPYRIGHT 2009 STMicroelectronics *;* File Name          : startup_stm32f10x_cl.s;* Author             : MCD Application

2、0;Team;* Version            : V3.1.0;* Date               : 06/19/2009;* Description        : S

3、TM32F10x Connectivity line devices vector table for RVMDK *                      toolchain. *        

4、0;             This module performs:;*                      - Set the initial SP;*  &

5、#160;                   - Set the initial PC = Reset_Handler;*                   

6、;   - Set the vector table entries with the exceptions ISR address;*                      - Branches to _main&

7、#160;in the C library (which eventually;*                        calls main().;*           

8、0;          After Reset the CortexM3 processor is in Thread mode,;*                      priority

9、60;is Privileged, and the Stack is set to Main.;* <<< Use Configuration Wizard in Context Menu >>>   *; THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE 

10、ONLY AIMS AT PROVIDING CUSTOMERS; WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.; AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIAB

11、LE FOR ANY DIRECT,; INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE; CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE&#

12、160;CODING; INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.;*; Amount of memory (in bytes) allocated for Stack; Tailor this value to your application needs; <h&g

13、t; Stack Configuration;   <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> </h> 首先對(duì)棧和堆的大小進(jìn)行定義,并在代碼區(qū)的起始處建立中斷向量表,其第一個(gè)表項(xiàng)是棧; 頂?shù)刂?,第二個(gè)表項(xiàng)是復(fù)位中斷服務(wù)入口地址。然后在復(fù)位中斷服務(wù)程序中跳轉(zhuǎn)C/C+標(biāo); 準(zhǔn)實(shí)時(shí)庫的_main函數(shù)。假設(shè)STM32被設(shè)置為從內(nèi)部FLASH啟動(dòng)中斷向量表起始地位為0x8000000

14、,; 則棧頂?shù)刂反娣庞?x8000000處,而復(fù)位中斷服務(wù)入口地址存放于0x8000004處。當(dāng)STM32遇; 到復(fù)位信號(hào)后,則從0x80000004處取出復(fù)位中斷服務(wù)入口地址繼而執(zhí)行復(fù)位中斷服務(wù)程序,; 然后跳轉(zhuǎn)_main函數(shù),最后來到C的世界。  DCD指令:作用是開辟一段空間,其意義等價(jià)于C語言中的地址符“&”。開始建立的中斷向量; 表則類似于使用C語.其每一個(gè)成員都是一個(gè)函數(shù)指針,分別指向各個(gè)中斷服務(wù)函數(shù);偽指令A(yù)REA,表示開辟一段大小為Stack_Size的內(nèi)存空間作為棧,段名是STACK,可讀可寫。;NOINIT

15、:指定此數(shù)據(jù)段僅僅保留了內(nèi)存單元,而沒有將各初始值寫入內(nèi)存單元,或者將各個(gè)內(nèi)存單元值初始化為0;常見的數(shù)據(jù)定義偽指令有如下幾種:; DCB 用于分配一片連續(xù)的字節(jié)存儲(chǔ)單元并用指定的數(shù)據(jù)初始化。; DCW (DCWU) 用于分配一片連續(xù)的半字存儲(chǔ)單元并用指定的數(shù)據(jù)初始化。; DCD (DCDU) 用于分配一片連續(xù)的字存儲(chǔ)單元并用指定的數(shù)據(jù)初始化。; DCFD (DCFDU)用于為雙精度的浮點(diǎn)數(shù)分配一片連續(xù)的字存儲(chǔ)單元并用指 定的數(shù)據(jù)初始化。; DCFS  D

16、CFSU) 用于為單精度的浮點(diǎn)數(shù)分配一片連續(xù)的字存儲(chǔ)單元并用指 定的數(shù)據(jù)初始化。; DCQ  DCQU) 用于分配一片以 8 字節(jié)為單位的連續(xù)的存儲(chǔ)單元并用指定 的數(shù)據(jù)初始化。; SPACE 用于分配一片連續(xù)的存儲(chǔ)單元; MAP 用于定義一個(gè)結(jié)構(gòu)化的內(nèi)存表首地址; FIELD 用于定義一個(gè)結(jié)構(gòu)化的內(nèi)存表的數(shù)據(jù)域;EXPORT偽指令用于在程序中聲明一個(gè)全局的標(biāo)號(hào),該標(biāo)號(hào)可在其他的文件中引用。EXPORT可用GLOBAL代替。標(biāo)號(hào)在程序中區(qū)分大小寫,

17、WEAK選項(xiàng)聲明其他的同名標(biāo)號(hào)優(yōu)先于該標(biāo)號(hào)被引用。;啟動(dòng)代碼作用一般是:;1)堆和棧的初始化;;2)向量表定義;;3)地址重映射及中斷向量表的轉(zhuǎn)移;;4)設(shè)置系統(tǒng)時(shí)鐘頻率;;5)中斷寄存器的初始化;;6)進(jìn)入C應(yīng)用程序。;1)堆和棧的初始化Stack_Size      EQU     0x00000400 ;棧區(qū)(stack) 由編譯器自動(dòng)分配釋放 ,存放函數(shù)的參數(shù)值,局部變量的值等。其操作方式類似于數(shù)據(jù)結(jié)構(gòu)中的棧  SPACE用來分配一片連續(xù)

18、的存儲(chǔ)區(qū)域并初始化為0.                AREA    STACK, NOINIT, READWRITE, ALIGN=3     AREA 偽指令用于定義一個(gè)代碼段或數(shù)據(jù),;定義棧,可初始為0,8字節(jié)對(duì)齊2*2*2,2的3次方  NOINIT:指定此數(shù)據(jù)段僅僅保留了內(nèi)存單

19、元,  READWRITE屬性:指定本段為可讀可寫,數(shù)據(jù)段的默認(rèn)屬性為READWRITE。  STACK 段名  ALIGN屬性:使用方式為ALIGN 表達(dá)式。在默認(rèn)時(shí),ELF(可執(zhí)行連接文件)的代碼段和數(shù)據(jù)段是按字對(duì)齊的,表達(dá)式的取值范圍為031,相應(yīng)的對(duì)齊方式為2表達(dá)式次方。Stack_Mem       SPACE   Stack_Size    ;分配0x400個(gè)連續(xù)字節(jié),并初始

20、化為0_initial_sp   標(biāo)號(hào)_initial_sp,表示??臻g頂?shù)刂贰?  ;匯編代碼地址標(biāo)號(hào); <h> Heap Configuration;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> </h>Heap_Size       EQU &#

21、160;   0x00000200 ;堆區(qū)(heap)  一般由程序員分配釋放, 若程序員不釋放,程序結(jié)束時(shí)可能由OS回收 。注意它與數(shù)據(jù)結(jié)構(gòu)中的堆是兩回事,分配方式倒是類似于鏈表                AREA    HEAP, NOINIT, READWRITE, ALIGN=3 

22、60;  ALIGN用來指定對(duì)齊方式, 8字節(jié)對(duì)齊_heap_base     表示堆空間起始地址Heap_Mem        SPACE   Heap_Size_heap_limit  表示堆空間結(jié)束地址                PRESE

23、RVE8 ;PRESERVE8 指令指定當(dāng)前文件保持堆棧八字節(jié)對(duì)齊                THUMB ; 告訴匯編器下面是32位的Thumb指令,如果需要匯編器將插入位以保證對(duì)齊;2)中斷向量表定義; Vector Table Mapped to Address 0 at Reset   實(shí)際上是在CODE區(qū)(

24、假設(shè)STM32從FLASH啟動(dòng),則此中斷向量表起始地址即為0x8000000)                AREA    RESET, DATA, READONLY ;定義一塊數(shù)據(jù)段,只可讀,段名字是RESET;DATA屬性:用于定義數(shù)據(jù)段,默認(rèn)為READWRITE。指定本段為可讀可寫       

25、60;        EXPORT  _Vectors     EXPORT:在程序中聲明一個(gè)全局的標(biāo)號(hào)_Vectors,該標(biāo)號(hào)可在其他的文件中引用                EXPORT  _Vectors_End ;在程序中聲明一個(gè)全局的標(biāo)號(hào)_Vectors_End

26、60;               EXPORT  _Vectors_Size ;在程序中聲明一個(gè)全局的標(biāo)號(hào)_Vectors_Size_Vectors       DCD     _initial_sp         

27、      Top of Stack 第一個(gè)表項(xiàng)是棧頂?shù)刂?該處物理地址值即為 _Vetors 標(biāo)號(hào)所表示的值,                                &#

28、160;       ;該地址中存儲(chǔ)_initial_sp所表示的地址值,;大小為一個(gè)字(32bit)                DCD     Reset_Handler             

29、; Reset Handler  第二個(gè)表項(xiàng)是復(fù)位中斷服務(wù)入口地址                DCD     NMI_Handler                NMI Ha

30、ndler 不可屏蔽中斷?                DCD     HardFault_Handler          Hard Fault Handler 硬件錯(cuò)誤處理       

31、;         DCD     MemManage_Handler          MPU Fault Handler 存儲(chǔ)器錯(cuò)誤處理                

32、;DCD     BusFault_Handler           Bus Fault Handler  總線錯(cuò)誤處理                DCD     UsageFault

33、_Handler         Usage Fault Handler 用法錯(cuò)誤處理                DCD     0            

34、              Reserved   這種形式就是保留地址,不給任何標(biāo)號(hào)分配                DCD     0       

35、;                   Reserved                DCD     0        

36、;                  Reserved                DCD     0         

37、;                 Reserved                DCD     SVC_Handler        &

38、#160;       SVCall Handler 執(zhí)行系統(tǒng)服務(wù)調(diào)用指令(SVC)引發(fā)的異常                DCD     DebugMon_Handler           De

39、bug Monitor Handler 調(diào)試監(jiān)視器(斷點(diǎn),數(shù)據(jù)觀察點(diǎn),或者是外部調(diào)試請求                 DCD     0                 

40、60;        Reserved                DCD     PendSV_Handler             PendSV Handler

41、為系統(tǒng)設(shè)備而設(shè)的“可懸掛請求” (pendable request)                DCD     SysTick_Handler            SysTick Handler  系統(tǒng)滴答定時(shí)器 

42、                External Interrupts 外設(shè)中斷                DCD     WWDG_IRQHandler     &

43、#160;       Window Watchdog   窗口看門狗                DCD     PVD_IRQHandler            

44、  PVD through EXTI Line detect 電源電壓檢測(PVD)中斷                 DCD     TAMPER_IRQHandler           Tamper&#

45、160;               DCD     RTC_IRQHandler              RTC            

46、    DCD     FLASH_IRQHandler            Flash                DCD     RCC_IRQHandler &

47、#160;            RCC                DCD     EXTI0_IRQHandler            EXT

48、I Line 0                DCD     EXTI1_IRQHandler            EXTI Line 1       &#

49、160;        DCD     EXTI2_IRQHandler            EXTI Line 2                DCD &

50、#160;   EXTI3_IRQHandler            EXTI Line 3                DCD     EXTI4_IRQHandler    

51、;        EXTI Line 4                DCD     DMA1_Channel1_IRQHandler    DMA1 Channel 1     

52、;           DCD     DMA1_Channel2_IRQHandler    DMA1 Channel 2                DCD     

53、;DMA1_Channel3_IRQHandler    DMA1 Channel 3                DCD     DMA1_Channel4_IRQHandler    DMA1 Channel 4    &#

54、160;           DCD     DMA1_Channel5_IRQHandler    DMA1 Channel 5                DCD    &#

55、160;DMA1_Channel6_IRQHandler    DMA1 Channel 6                DCD     DMA1_Channel7_IRQHandler    DMA1 Channel 7    

56、;            DCD     ADC1_2_IRQHandler           ADC1 and ADC2              

57、0; DCD     CAN1_TX_IRQHandler          CAN1 TX                DCD     CAN1_RX0_IRQHandler   

58、60;     CAN1 RX0                DCD     CAN1_RX1_IRQHandler         CAN1 RX1      

59、60;         DCD     CAN1_SCE_IRQHandler         CAN1 SCE                DCD    &

60、#160;EXTI9_5_IRQHandler          EXTI Line 9.5                DCD     TIM1_BRK_IRQHandler       

61、0; TIM1 Break                DCD     TIM1_UP_IRQHandler          TIM1 Update         

62、       DCD     TIM1_TRG_COM_IRQHandler     TIM1 Trigger and Commutation                DCD     

63、TIM1_CC_IRQHandler          TIM1 Capture Compare                DCD     TIM2_IRQHandler        

64、     TIM2                DCD     TIM3_IRQHandler             TIM3      

65、0;         DCD     TIM4_IRQHandler             TIM4                DCD  

66、60;  I2C1_EV_IRQHandler          I2C1 Event                DCD     I2C1_ER_IRQHandler       

67、60;  I2C1 Error                DCD     I2C2_EV_IRQHandler          I2C2 Event        

68、        DCD     I2C2_ER_IRQHandler          I2C1 Error                DCD    

69、60;SPI1_IRQHandler             SPI1                DCD     SPI2_IRQHandler         &#

70、160;   SPI2                DCD     USART1_IRQHandler           USART1         &#

71、160;      DCD     USART2_IRQHandler           USART2                DCD     USART3_IR

72、QHandler           USART3                DCD     EXTI15_10_IRQHandler        EXTI Line 15.

73、10                DCD     RTCAlarm_IRQHandler         RTC alarm through EXTI line        &

74、#160;       DCD     OTG_FS_WKUP_IRQHandler      USB OTG FS Wakeup through EXTI line                D

75、CD     0                           Reserved                D

76、CD     0                           Reserved                D

77、CD     0                           Reserved                D

78、CD     0                           Reserved                D

79、CD     0                           Reserved                D

80、CD     0                           Reserved                D

81、CD     0                           Reserved                D

82、CD     TIM5_IRQHandler             TIM5                DCD     SPI3_IRQHandler    

83、60;        SPI3                DCD     UART4_IRQHandler            UART4    

84、;            DCD     UART5_IRQHandler            UART5                DCD&#

85、160;    TIM6_IRQHandler             TIM6                DCD     TIM7_IRQHandler     &

86、#160;       TIM7                DCD     DMA2_Channel1_IRQHandler    DMA2 Channel1         

87、       DCD     DMA2_Channel2_IRQHandler    DMA2 Channel2                DCD     DMA2_Channel3_IRQHandler 

88、   DMA2 Channel3                DCD     DMA2_Channel4_IRQHandler    DMA2 Channel4           

89、60;    DCD     DMA2_Channel5_IRQHandler    DMA2 Channel5                DCD     ETH_IRQHandler     &

90、#160;        Ethernet                DCD     ETH_WKUP_IRQHandler         Ethernet Wakeup through

91、0;EXTI line                DCD     CAN2_TX_IRQHandler          CAN2 TX           

92、;     DCD     CAN2_RX0_IRQHandler         CAN2 RX0                DCD     CAN2_RX1_IRQHandler&#

93、160;        CAN2 RX1                DCD     CAN2_SCE_IRQHandler         CAN2 SCE   &#

94、160;            DCD     OTG_FS_IRQHandler           USB OTG FS_Vectors_End    結(jié)束_Vectors_Size  EQU  _Vectors_End

95、60;- _Vectors  得到向量表的大小,304個(gè)字節(jié)也就是0x130個(gè)字節(jié);3)地址重映射及中斷向量表的轉(zhuǎn)移;                AREA    |.text|, CODE, READONLY   定義一個(gè)代碼段,可讀,段名字是.text  段名若以數(shù)字開頭,則該段名需用"|&q

96、uot;括起來,如|1_test|。;定義只讀數(shù)據(jù)段,實(shí)際上是在CODE區(qū),如果在FLASH區(qū)起動(dòng),則 中斷向量起始地址為0X8000000;;CODE屬性:用于定義代碼段,默認(rèn)為READONLY; Reset handler routineReset_Handler    PROC ;;標(biāo)記一個(gè)函數(shù)的開始;利用PROC、ENDP這一對(duì)偽指令把程序段分為若干個(gè)過程,使程序的結(jié)構(gòu)加清晰           &

97、#160;     EXPORT  Reset_Handler             WEAK  在外部沒有定義該符號(hào)時(shí)導(dǎo)出該符號(hào)Reset_Handler   EXPORT偽指令用于在程序中聲明一個(gè)全局的標(biāo)號(hào)          IMPORT &#

98、160;_main   IMPORT:偽指令用于通知編譯器要使用的標(biāo)號(hào)在其他的源文件中定義                 LDR     R0, =_main ;_main為運(yùn)行時(shí)庫提供的函數(shù);完成堆棧,堆的初始化等工作,會(huì)調(diào)用下面定義的_user_initial_stackheap    

99、60;            BX      R0   跳到_main,進(jìn)入C的世界                    ENDP; Dummy Exception H

100、andlers (infinite loops which can be modified);虛擬異常處理器(無限循環(huán)可以修改了)NMI_Handler     PROC ;PROC表示匯編函數(shù)的開始                EXPORT  NMI_Handler   &#

101、160;            WEAK   WEAK聲明其他的同名標(biāo)號(hào)優(yōu)先于該標(biāo)號(hào)被引用,就是說如果外面聲明了的話,                B       .  會(huì)調(diào)用外面的  &

102、#160;             ENDPHardFault_Handler                PROC  PROC表示匯編函數(shù)的開始            

103、0;   EXPORT  HardFault_Handler          WEAK  換行的意思                B       .    

104、            ENDPMemManage_Handler                PROC ;PROC表示匯編函數(shù)的開始               &#

105、160;EXPORT  MemManage_Handler          WEAK                B       .         

106、60;      ENDPBusFault_Handler                PROC   PROC表示匯編函數(shù)的開始                EXPORT  B

107、usFault_Handler           WEAK                B       .            

108、60;   ENDPUsageFault_Handler                PROC                EXPORT  UsageFault_Handler    &

109、#160;    WEAK                B       .                ENDPSVC_Handler  

110、0;  PROC    PROC表示匯編函數(shù)的開始                EXPORT  SVC_Handler                WEAK    &

111、#160;           B       .                ENDPDebugMon_Handler           

112、60;    PROC ;PROC表示匯編函數(shù)的開始                EXPORT  DebugMon_Handler           WEAK         

113、       B       .                ENDPPendSV_Handler  PROC              

114、  EXPORT  PendSV_Handler             WEAK                B       .     

115、0;          ENDPSysTick_Handler PROC   PROC表示匯編函數(shù)的開始                EXPORT  SysTick_Handler         

116、   WEAK                B       .                ENDPDefault_Handler PROC  &

117、#160;             EXPORT  WWDG_IRQHandler            WEAK                EXPORT 

118、 PVD_IRQHandler             WEAK                EXPORT  TAMPER_IRQHandler          WEAK

119、60;               EXPORT  RTC_IRQHandler             WEAK               

120、60;EXPORT  FLASH_IRQHandler           WEAK                EXPORT  RCC_IRQHandler           

121、;  WEAK                EXPORT  EXTI0_IRQHandler           WEAK              

122、;  EXPORT  EXTI1_IRQHandler           WEAK                EXPORT  EXTI2_IRQHandler         

123、;  WEAK                EXPORT  EXTI3_IRQHandler           WEAK              

124、;  EXPORT  EXTI4_IRQHandler           WEAK                EXPORT  DMA1_Channel1_IRQHandler   WEAK    

125、;            EXPORT  DMA1_Channel2_IRQHandler   WEAK                EXPORT  DMA1_Channel3_IRQHandler   WEAK

126、60;               EXPORT  DMA1_Channel4_IRQHandler   WEAK                EXPORT  DMA1_Channel5_IRQHandler 

127、;  WEAK                EXPORT  DMA1_Channel6_IRQHandler   WEAK                EXPORT  DMA1_Chan

128、nel7_IRQHandler   WEAK                EXPORT  ADC1_2_IRQHandler          WEAK           &#

129、160;    EXPORT  CAN1_TX_IRQHandler         WEAK                EXPORT  CAN1_RX0_IRQHandler       

130、60;WEAK                EXPORT  CAN1_RX1_IRQHandler        WEAK                EXPORT 

131、 CAN1_SCE_IRQHandler        WEAK                EXPORT  EXTI9_5_IRQHandler         WEAK     

132、60;          EXPORT  TIM1_BRK_IRQHandler        WEAK                EXPORT  TIM1_UP_IRQHandler  

133、0;      WEAK                EXPORT  TIM1_TRG_COM_IRQHandler    WEAK               

134、60;EXPORT  TIM1_CC_IRQHandler         WEAK                EXPORT  TIM2_IRQHandler            WE

135、AK                EXPORT  TIM3_IRQHandler            WEAK               

136、60;EXPORT  TIM4_IRQHandler            WEAK                EXPORT  I2C1_EV_IRQHandler         WE

137、AK                EXPORT  I2C1_ER_IRQHandler         WEAK                EXPORT 

138、 I2C2_EV_IRQHandler         WEAK                EXPORT  I2C2_ER_IRQHandler         WEAK    

139、0;           EXPORT  SPI1_IRQHandler            WEAK                EXPORT  SPI2_IRQH

140、andler            WEAK                EXPORT  USART1_IRQHandler          WEAK    

141、;            EXPORT  USART2_IRQHandler          WEAK                EXPORT  USART3_IRQHand

142、ler          WEAK                EXPORT  EXTI15_10_IRQHandler       WEAK         

143、;       EXPORT  RTCAlarm_IRQHandler        WEAK                EXPORT  OTG_FS_WKUP_IRQHandler     WE

144、AK                EXPORT  TIM5_IRQHandler            WEAK               

145、60;EXPORT  SPI3_IRQHandler            WEAK                EXPORT  UART4_IRQHandler         

146、0; WEAK                EXPORT  UART5_IRQHandler           WEAK              

147、0; EXPORT  TIM6_IRQHandler            WEAK                EXPORT  TIM7_IRQHandler         

148、   WEAK                EXPORT  DMA2_Channel1_IRQHandler   WEAK                EXPORT  DMA2

149、_Channel2_IRQHandler   WEAK                EXPORT  DMA2_Channel3_IRQHandler   WEAK                EX

150、PORT  DMA2_Channel4_IRQHandler   WEAK                EXPORT  DMA2_Channel5_IRQHandler   WEAK             

151、   EXPORT  ETH_IRQHandler             WEAK                EXPORT  ETH_WKUP_IRQHandler      

152、;  WEAK                EXPORT  CAN2_TX_IRQHandler         WEAK                EXPORT  CAN2_RX0_IRQHandler        WEAK               &

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論