基于MSP430的I2C模擬總線程序講解_第1頁(yè)
基于MSP430的I2C模擬總線程序講解_第2頁(yè)
基于MSP430的I2C模擬總線程序講解_第3頁(yè)
基于MSP430的I2C模擬總線程序講解_第4頁(yè)
基于MSP430的I2C模擬總線程序講解_第5頁(yè)
已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、程序和流程圖: IIC.hvoid Init_IIC(void);void EEPROM_ByteWrite(unsigned char nAddr,unsigned char nVal);unsigned char EEPROM_RandomRead(unsigned char nAddr);unsigned char EEPROM_CurrentAddressRead(void);void EEPROM_AckPolling(void);void Init_CLK(void);void Init_IIC_Port(void);Main.C/* IIC for AT24c16 OR AT24

2、CXXX 系列 只要控制好IICRM IICSTP IICSTT 其硬件會(huì)自動(dòng)完成SCL SDA的一系列時(shí)序 只要注意各個(gè)發(fā)送與接收的控制標(biāo)志位.*/#include <MSP430x16x.h>#include "IIC.h"volatile unsigned char Data6;void main(void) /volatile unsigned char Data6; /停止看門狗 WDTCTL = WDTPW+WDTHOLD; /初始化端口 Init_IIC_Port(); /初始化時(shí)鐘 Init_CLK(); /I2C初始化 Init_IIC();

3、/置傳輸方式及控制方式 /打開中斷 _EINT(); /寫入數(shù)據(jù) EEPROM_ByteWrite(0x0000,0x12); /等待寫操作完成 EEPROM_AckPolling(); /寫入數(shù)據(jù) EEPROM_ByteWrite(0x0001,0x34); /等待寫操作完成 EEPROM_AckPolling(); /寫入數(shù)據(jù) EEPROM_ByteWrite(0x0002,0x56); /等待寫操作完成 EEPROM_AckPolling(); /寫入數(shù)據(jù) EEPROM_ByteWrite(0x0003,0x78); /等待寫操作完成 EEPROM_AckPolling(); /寫入數(shù)據(jù)

4、 EEPROM_ByteWrite(0x0004,0x9A); /等待寫操作完成 EEPROM_AckPolling(); /寫入數(shù)據(jù) EEPROM_ByteWrite(0x0005,0xBC); /等待寫操作完成 EEPROM_AckPolling(); /讀出數(shù)據(jù),隨機(jī)讀 Data0 = EEPROM_RandomRead(0x0000); /地址自動(dòng)加1 /讀出數(shù)據(jù),當(dāng)前地址讀 Data1 = EEPROM_CurrentAddressRead(); /讀出數(shù)據(jù),當(dāng)前地址讀 Data2 = EEPROM_CurrentAddressRead(); /讀出數(shù)據(jù),當(dāng)前地址讀 Data3 =

5、EEPROM_CurrentAddressRead(); /讀出數(shù)據(jù),當(dāng)前地址讀 Data4 = EEPROM_CurrentAddressRead(); /讀出數(shù)據(jù),當(dāng)前地址讀 Data5 = EEPROM_CurrentAddressRead(); IIC.C#include <MSP430x16x.h>#include "IIC.h"#define SLAVEADDR 0x50;int tx_count;int rx_count;unsigned char I2CBuffer3;void Init_IIC(void) /將P3.1和P3.3設(shè)置為I2C管腳

6、 P3SEL = 0x0A; /設(shè)置P3.1和P3.3管腳的方向 P3DIR &= 0x0A; /選擇為I2C模式 U0CTL |= I2C + SYNC; /禁止I2C模塊 U0CTL &= I2CEN; /設(shè)置I2C為7位地址模式,不使用DMA, /字節(jié)模式,時(shí)鐘源為SMCLK, /設(shè)置成傳輸模式 I2CTCTL = I2CTRX + I2CSSEL_2; /定義從器件地址 I2CSA = SLAVEADDR; /設(shè)置本身的地址 I2COA = 0x01A5; /I2C時(shí)鐘為SMCLK / 160 I2CPSC = 159; /SCL 高電平為:5 *I2C 時(shí)鐘 I2CS

7、CLH = 0x03; /SCL 低電平為:5 *I2C 時(shí)鐘 I2CSCLL = 0x03; /I2C 模塊有效 U0CTL |= I2CEN; tx_count = 0; rx_count = 0;void I2CWriteInit(void) /對(duì)于AT24CXXX的寫操作是置成主模式并置位中斷使能. /主(Master)模式 U0CTL |= MST; /傳輸模式,R/W 為:0 I2CTCTL |= I2CTRX; /清除中斷標(biāo)志 I2CIFG &= TXRDYIFG; /發(fā)送中斷使能 I2CIE = TXRDYIE;void I2CReadInit(void) /接收模式,

8、R/W 為:1 I2CTCTL &= I2CTRX; /接收中斷使能 I2CIE = RXRDYIE;void EEPROM_ByteWrite(unsigned char nAddr, unsigned char nVal) /等待I2C模塊完成所有操作 /在選定的地址寫入數(shù)據(jù). while (I2CDCTL&I2CBUSY) ; /設(shè)置地址數(shù)據(jù) I2CBuffer1 = nAddr; /設(shè)置數(shù)據(jù) I2CBuffer0 = nVal; /設(shè)置緩沖區(qū)指針 tx_count = 1; /寫數(shù)據(jù)初始化 I2CWriteInit(); /設(shè)置為主模式 /發(fā)送數(shù)據(jù)的長(zhǎng)度 /1個(gè)控制字節(jié)

9、,2個(gè)數(shù)據(jù)字節(jié) I2CNDAT = 2; /開始和停止條件產(chǎn)生 /開始I2C通信 I2CTCTL |= I2CSTT+I2CSTP; return;unsigned char EEPROM_CurrentAddressRead(void) /等待I2C模塊完成所有操作 while (I2CDCTL&I2CBUSY); /讀操作的初始化 I2CReadInit(); /主(Master)模式 U0CTL |= MST; /接收1個(gè)字節(jié)的數(shù)據(jù) I2CNDAT = 1; /清除中斷標(biāo)志 I2CIFG &= ARDYIFG; /開始接收,產(chǎn)生重新起始和停止條件 I2CTCTL |= I

10、2CSTT + I2CSTP; /等待傳輸完成 while (I2CIFG)&ARDYIFG) ; /返回?cái)?shù)據(jù) return I2CBuffer0;unsigned char EEPROM_RandomRead(unsigned char nAddr) /等待I2C模塊完成所有操作 while (I2CDCTL&I2CBUSY); /設(shè)置地址 I2CBuffer0 = nAddr; /設(shè)置緩沖區(qū)指針 tx_count = 0; /寫操作初始化 I2CWriteInit(); /傳輸數(shù)據(jù)長(zhǎng)度 /1個(gè)控制字節(jié)和一個(gè)地址數(shù)據(jù) I2CNDAT = 1; /清除中斷標(biāo)志 I2CIFG &

11、amp;= ARDYIFG; /起始條件產(chǎn)生 I2CTCTL |= I2CSTT; /等待傳輸完成 while (I2CIFG)&ARDYIFG); /讀操作初始化 I2CReadInit(); /接收一個(gè)字節(jié)的數(shù)據(jù) I2CNDAT = 1; /清除中斷標(biāo)志 I2CIFG &= ARDYIFG; /開始接收,產(chǎn)生重新起始和停止條件 I2CTCTL |= I2CSTT + I2CSTP; /等待傳輸完成 while (I2CIFG)&ARDYIFG); /返回?cái)?shù)據(jù) return I2CBuffer0;void EEPROM_AckPolling(void) unsigne

12、d int count; /等待I2C模塊完成所有操作 while (I2CDCTL&I2CBUSY); count=0; /清除I2CEN位 U0CTL &= I2CEN; I2CTCTL |= I2CRM; /使能I2C模塊 U0CTL |= I2CEN; /設(shè)置NACKIFG標(biāo)志 I2CIFG = NACKIFG; while (NACKIFG & I2CIFG) /清除中斷標(biāo)志 I2CIFG=0x00; /主(Master)模式 U0CTL |= MST; /設(shè)置傳輸模式 I2CTCTL |= I2CTRX; /產(chǎn)生起始條件 I2CTCTL |= I2CSTT;

13、 /等待I2CSTT被清除 while (I2CTCTL & I2CSTT) ; /產(chǎn)生停止條件 I2CTCTL |= I2CSTP; /等待停止條件復(fù)位 while (I2CDCTL & I2CBUSY) ; count = count + 1; /清除I2CEN位 U0CTL &= I2CEN; I2CTCTL &= I2CRM; /使能I2C U0CTL |= I2CEN; return;#if _VER_ < 200 interrupt USART0TX_VECTOR void ISR_I2C(void)#else #pragma vector=U

14、SART0TX_VECTOR _interrupt void ISR_I2C(void)#endif /上面的程序其實(shí)只要編寫 : /#pragma vector=USART0TX_VECTOR _interrupt void ISR_I2C(void)就行. switch (I2CIV) case I2CIV_AL: /仲裁中斷 break; case I2CIV_NACK: /NACK中斷 break; case I2CIV_OA: /自己地址中斷 break; case I2CIV_ARDY: /訪問準(zhǔn)備好中斷 break; case I2CIV_RXRDY: /接收準(zhǔn)備好中斷 I2CB

15、uffer0=I2CDRB; break; case I2CIV_TXRDY: /發(fā)送準(zhǔn)備好中斷 I2CDRB = I2CBuffertx_count; tx_count = tx_count - 1; if (tx_count < 0) /禁止發(fā)送中斷 I2CIE &= TXRDYIE; break; case I2CIV_GC: /一般調(diào)用中斷 break; case I2CIV_STT: /起始條件中斷 break; void Init_IIC_Port(void) /初始化端口寄存器 與IIC口無關(guān)的PX口關(guān)閉以便于對(duì)編寫系統(tǒng)板的綜合程序. /P1DIR = 0xFF;

16、/P2DIR = 0xFF; P3DIR = 0xF5; /P4DIR = 0xFF; P5DIR = 0x7F; /P6DIR = 0xFF; /P4OUT = 0X11; /P5OUT &= 0XF0; P3SEL|=BIT1+BIT3; /在這里如果設(shè)置成 void Init_CLK(void) unsigned int i; /將寄存器的內(nèi)容清零 /XT2震蕩器開啟 /LFTX1工作在低頻模式 /ACLK的分頻因子為1 BCSCTL1 = 0X00; do / 清除OSCFault標(biāo)志IFG1 &= OFIFG; for (i = 0x20; i > 0; i-)

17、; while (IFG1 & OFIFG) = OFIFG); / 如果OSCFault =1 /open XT2, LFTX2 選擇低頻率 BCSCTL1 &= (XT2OFF + XTS); /BCSCTL1=0X00 功能一樣 /DCO Rsel=7(Freq=3200k/25攝氏度) BCSCTL1 |= RSEL0 + RSEL1 + RSEL2; BCSCTL1 |= 0x07; /MCLK的時(shí)鐘源為TX2CLK,分頻因子為1 BCSCTL2 += SELM1; /SMCLK的時(shí)鐘源為TX2CLK,分頻因子為1 BCSCTL2 += SELS; /對(duì)于系統(tǒng)時(shí)鐘的選

18、擇關(guān)系到整個(gè)程序運(yùn)行穩(wěn)定性./*文件名:msp430f169i2c.c*整體描述:MSP430F169單片機(jī)硬件IIC軟件,字節(jié)方式,主方式*          IIC接口:P3.3=SCL,P3.1=SDA;(開漏輸出)*          相應(yīng)寄存器:地址寄存器 I2COA 用于存放自身從地址(從方式時(shí)才有用)*                  

19、60;   地址寄存器 I2CSA 用于存放外圍的從機(jī)地址(主方式時(shí)才有用)*                      控制寄存器 U0CTL 硬件I2C的設(shè)置、使能、模式等。                       發(fā)送控制寄存器 I2CTCTL*   

20、0;                  數(shù)據(jù)控制寄存器 I2CDCTL 指示I2C總線的狀態(tài)*       U0CTL - RXDMAEN,TXDMAEN,I2C, XA, LISREN,SYNC,MST,I2CEN *                 0       0  &#

21、160;   1   0    0      1    1    1      (0x17)*       I2CTCTL -I2CWORD,I2CRM,I2CSSEL1,I2XSSEL0, I2CTRX,I2CSTB, I2CSTP, I2CSTT *              

22、0;  0       1      1         0        *      0       *       *     *作者:   jy*狀態(tài):  通過*/#inc

23、lude <msp430x16x.h>#include "fpgacode.h"#define WR24C512#define LED1_1            (0x20)     /* Port 3.5 Output -> LED1  */#define LED1_0            (0xdf)#define SDA_1

24、60;      P3OUT |=  BIT1              /串行數(shù)據(jù)線,SDA = 1#define SDA_0       P3OUT &= BIT1              /SDA = 0#define SCL_1       P3OUT

25、 |=  BIT3              /串行時(shí)鐘線,SCL = 1#define SCL_0       P3OUT &= BIT3              /SCL = 0#define SDADIR_IN   P3DIR &= BIT1      &

26、#160;     /SDA,I/O口為輸入#define SDADIR_OUT  P3DIR |=  BIT1            /I/0口為輸出#define SDA_IN      (P3IN >> 1) & 0x01)      /Read SDA#define SCLDIR_IN   P3DIR &= BI

27、T3           /SCL,I/O口為輸入#define SCLDIR_OUT  P3DIR |=  BIT3           /I/0口為輸出#define SCL_IN      (P3IN >> 3) & 0x01)     /Read SCL#ifdef WR24C512stat

28、ic int numi = 0;                   /Data Pointer#elsestatic int numj = 0;                   /Data Pointer#endif#define I2CSLA 0x50/*-功能描述: 檢查總線是否空閑-子程序狀況: 09-23調(diào)試通過-*/void I2c_Idle

29、_Check(void)    while (I2CBUSY & I2CDCTL);    / I2C ready? 在空閑狀態(tài):0,空閑;1:忙void DelayTime10us(unsigned char n)    unsigned char i;     while(n-)                  / 5 cycles  

30、0;       for(i=0;i<10;i+);      / 8mhz  110:771 + 4 to while/*-功能描述:發(fā)送數(shù)據(jù):用于向總線發(fā)送數(shù)據(jù)-子程序狀況: 09-23調(diào)試通過-*/void I2cBusSendByte(unsigned char c)      while(I2CIFG & TXRDYIFG) != TXRDYIFG);  / 檢測(cè)發(fā)送準(zhǔn)備    I2

31、CDRB = c;                             / 寫發(fā)送寄存器  /*- MSP430 I2C 寫數(shù)據(jù) 09-23調(diào)試通過-*/   /*-功能描述:申請(qǐng)總線:進(jìn)行I2C總線的初始化發(fā)送起始信號(hào)-子程序狀況: 09-23調(diào)試通過-*/void I2C_Send(unsigned char ndatNum)   

32、;                         / 注意:通訊結(jié)束,I2CMST 自動(dòng)清零,再次通訊必須重新置位    P3OUT = 0x00;                 / clear P3 output register     &#

33、160; P3SEL = 0x0A;                 / P3.1=SDA, P3.3=SCL,Select I2C pins, Setup I2C module           U0CTL |= (I2C + SYNC);           / select I2C mode;XA=0,7bit_addresing

34、;    U0CTL &= I2CEN;              / i2c功能使能無效    / I2CTCTL = I2CRM + I2CSSEL_2;  / x(x>256)字節(jié)模式 ,new start測(cè)試使用        /  選擇方式 I2CRM=0,最終用戶使用    I2CTCTL =  I2CSSEL_

35、2;     I2CNDAT = 2 + ndatNum;         / 最終用戶使用,2byte地址 + 128byte數(shù)據(jù)         I2CPSC = 2;                    / set scl    I2CIFG = 0;    I2CSA = 0x50;

36、60;                / Slave address of At24c512       U0CTL |= I2CEN;               / enable I2C module, 7 bit addr,  master mode   08-26    

37、   U0CTL |= MST;            while (I2CBUSY & I2CDCTL);              / I2C ready? 在空閑狀態(tài):0,空閑;1:忙    I2CTCTL |= I2CTRX + I2CSTT + I2CSTP ;   / I2CRM =0,啟動(dòng)總線,發(fā)送從器件地址    while(I2CIFG &a

38、mp; NACKIFG) = 0x02);      /  ack 為低電平,等待地址應(yīng)答位 ,判斷  無應(yīng)答NACKIFG = 1        /*-子程標(biāo)號(hào)      :I2cWrSlaSubAddr                        

39、60;                 -子程功能      :主機(jī)發(fā)送從機(jī)的子地址                         -入口參數(shù)      :unsigned char sla,unsigned int suba  

40、0;                 -參數(shù)說明      :子地址                                          

41、0;                                               -子程序狀況    :09-23調(diào)試通過               &

42、#160;                                 -說明          :完成地址信息的定位,先確定順序讀寫的起始地址                     

43、              -*/                     unsigned char I2cSendSubAddr(unsigned int suba,unsigned char ndatNum)    unsigned char Hi_suba,Lo_suba;    I2C_Send(ndatNu

44、m);                / 啟動(dòng)總線,等待地址應(yīng)答位        Hi_suba = ( unsigned char )( suba >> 8 );    Lo_suba = ( unsigned char )( suba & 0x00ff );    I2cBusSendByte( Hi_suba );         

45、    /發(fā)送器件子地址    while(I2CIFG  & 0x02) = NACKIFG )    / 等待數(shù)據(jù)的應(yīng)答                I2CTCTL |= I2CSTP;                 / 無應(yīng)答,結(jié)束總線   

46、     return(0);               I2cBusSendByte( Lo_suba );             /發(fā)送器件子地址         while(I2CIFG  & 0x02 )=0x02 )    / 等待數(shù)據(jù)的

47、應(yīng)答                I2CTCTL |= I2CSTP;                 / 無應(yīng)答,結(jié)束總線        return(0);              retur

48、n(1);/*-子程標(biāo)號(hào)      :I2cWriteStr     (用戶函數(shù))                            -子程功能      :向I2C從器件寫入數(shù)據(jù)             

49、                     -入口參數(shù)      :unsigned char *ps,unsigned char num                                 

50、0;       -參數(shù)說明      :寫入數(shù)據(jù)的地址指針,數(shù)據(jù)個(gè)數(shù)                                     -子程序狀況    : 09-23調(diào)試通過       

51、                                 -說明          :I2C讀取數(shù)據(jù)                         

52、          -*/unsigned char I2cSendStr(const unsigned char * ps,unsigned char num)  /  unsigned char i;    unsigned char tempnum;    tempnum = num-1;    for(numi=0;numi<tempnum;numi+)      

53、0;         I2cBusSendByte(*ps);        while(I2CIFG  & 0x02) = NACKIFG)   / 等待數(shù)據(jù)的應(yīng)答                        I2CTCTL |= I2CSTP; 

54、                / 無應(yīng)答,結(jié)束總線            return(0);                      ps+;          /

55、  I2CTCTL |= I2CSTP;    /I2CRM =1模式中,在發(fā)送最后一個(gè)數(shù)據(jù)之前將停止位置位,*特別注意,必須    I2cBusSendByte(*ps);    while(I2CIFG  & 0x02) = NACKIFG)   / 等待數(shù)據(jù)的應(yīng)答                I2CTCTL |= I2CSTP; &

56、#160;/ 無應(yīng)答,結(jié)束總線        return(0);              return(1);/-寫at24c512-void I2cWrAt24c512(void)    unsigned int j=0;    unsigned char m,n;    unsigned int tempAddr;      fo

57、r (j = 0;j <462;j+)            / page write                 tempAddr = 128*j;              while (I2CBUSY & I2CDCTL);      

58、      / I2C ready?        I2cSendSubAddr(tempAddr,0x80);        I2cSendStr(FPGACfg+tempAddr,0x80);            P4OUT = 0x80;            for (

59、m=0;m<125;m+) for (n=0;n<110;n+);        P4OUT = 0x80;                         tempAddr = 128*j;    while (I2CBUSY & I2CDCTL);          

60、;  / I2C ready?    I2cSendSubAddr(tempAddr,0x4f);    I2cSendStr(FPGACfg+tempAddr,0x4f);        P4OUT = 0x80;        for (m=0;m<125;m+) for (n=0;n<110;n+);    P4OUT = 0x80;            &

61、#160;               /*- MSP430 I2C 讀取數(shù)據(jù)-*/*-子程標(biāo)號(hào)      :I2cSlaSubAddr                                     

62、     -子程功能      :主器件發(fā)送從機(jī)器件地址和子地址                         -入口參數(shù)      :unsigned int suba                  &

63、#160; -參數(shù)說明      :子地址                                         -子程調(diào)用      :I2cBusSendByte      &

64、#160;                                -子程序狀況    :Y                               

65、                       -說明          :完成地址信息的定位,先確定順序讀寫的起始地址                               

66、    -*/void I2cReceSubAddr(unsigned int suba)    / test 09-25 讀之前先寫地址    unsigned char Hi_suba,Lo_suba;    P3OUT = 0x00;                 / clear P3 output register       P3SEL

67、 = 0x0A;                 / P3.1=SDA, P3.3=SCL,Select I2C pins, Setup I2C module           U0CTL |= I2C + SYNC;           / select I2C mode;XA=0,7bit_addresing;  

68、0; U0CTL &= I2CEN;              / i2c功能使能無效     / I2CTCTL =  I2CRM + I2CSSEL_2;  /  I2CRM = 1,自己設(shè)定字節(jié)個(gè)數(shù)    I2CTCTL =  I2CSSEL_2;        / I2CRM = 0,  &#

69、160; I2CNDAT = 2;                 / I2CRM = 0,2byte地址 + 128byte數(shù)據(jù),固定字節(jié)    I2CIFG = 0;    I2CPSC = 1;                  / set scl/    I2CSCLH = 0x02;

70、60;             / High period of SCL  /  I2CSCLL = 0x02;              / Low period of SCL    I2CSA = 0x50;                / S

71、lave address of At24c512       U0CTL |= I2CEN;              / enable I2C module, 7 bit addr,  master mode   08-26     U0CTL |= MST;       Hi_suba = ( unsigned char )( suba >>

72、 8 );    Lo_suba = ( unsigned char )( suba & 0x00ff );        while (I2CBUSY & I2CDCTL);    / I2C ready? 在空閑狀態(tài):0,空閑;1:忙    I2CTCTL |= I2CTRX + I2CSTT + I2CSTP ;  / I2CRM =0,啟動(dòng)總線,發(fā)送從器件地址    while(I2CIFG & NACKIFG) = 0x0

73、2)   / ack 為低電平,等待地址應(yīng)答位 ,判斷 無應(yīng)答NACKIFG = 1                     I2CTCTL |= I2CSTP;    / 結(jié)束總線                            

74、I2cBusSendByte( Hi_suba );          /發(fā)送器件子地址      while(I2CIFG & NACKIFG) = 0x02)   / ack 為低電平,等待地址應(yīng)答位 ,判斷 無應(yīng)答NACKIFG = 1                   I2CTCTL |= I2CSTP;    / 結(jié)束

75、總線              I2cBusSendByte( Lo_suba );        /發(fā)送器件子地址    while(I2CIFG & NACKIFG) = 0x02)   / ack 為低電平,等待地址應(yīng)答位 ,判斷 無應(yīng)答NACKIFG = 1               

76、60;   I2CTCTL |= I2CSTP;    / 結(jié)束總線               DelayTime10us(250);    DelayTime10us(250);    DelayTime10us(250);    DelayTime10us(250);/*-子程標(biāo)號(hào)      :I2cSlaSubAddr   

77、60;                                      -子程功能      :主器件接收初始化                     

78、60; -入口參數(shù)      :無                                                           

79、0;                                   -子程序狀況    :                            

80、;                         -說明          :                                 -*

81、/void InitI2cRece(unsigned char num)    P3OUT = 0x00;                 / clear P3 output register       P3SEL = 0x0A;                 / P3.1=SDA, P3.3=SCL,Select I2C pins, Setup I2C module        

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論