日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载)

發(fā)布時間:2023/12/10 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
版權聲明:本文為博主原創(chuàng)文章,允許轉(zhuǎn)載,但希望標注轉(zhuǎn)載來源。 https://blog.csdn.net/qq_38410730/article/details/80312357

IIC的基本介紹

IIC的簡介

IIC(Inter-Integrated Circuit)總線是一種由PHILIPS公司在80年代開發(fā)的兩線式串行總線,用于連接微控制器及其外圍設備。它是半雙工通信方式。

  • IIC總線最主要的優(yōu)點是其簡單性和有效性。由于接口直接在組件之上,因此IIC總線占用的空間非常小,減少了電路板的空間和芯片管腳的數(shù)量,降低了互聯(lián)成本。總線的長度可高達25英尺,并且能夠以10Kbps的最大傳輸速率支持40個組件。
  • IIC總線的另一個優(yōu)點是,它支持多主控(multimastering), 其中任何能夠進行發(fā)送和接收的設備都可以成為主總線。一個主控能夠控制信號的傳輸和時鐘頻率。當然,在任何時間點上只能有一個主控。

IIC串行總線一般有兩根信號線,一根是雙向的數(shù)據(jù)線SDA,另一根是時鐘線SCL,其時鐘信號是由主控器件產(chǎn)生。所有接到IIC總線設備上的串行數(shù)據(jù)SDA都接到總線的SDA上,各設備的時鐘線SCL接到總線的SCL上。對于并聯(lián)在一條總線上的每個IC都有唯一的地址。

一般情況下,數(shù)據(jù)線SDA和時鐘線SCL都是處于上拉電阻狀態(tài)。因為:在總線空閑狀態(tài)時,這兩根線一般被上面所接的上拉電阻拉高,保持著高電平。

STM32的IIC接口

目前絕大多數(shù)的MCU都附帶IIC總線接口,STM32也不例外。但是在本文中,我們不使用STM32的硬件IIC來讀取24C02,而是通過軟件的方式來模擬。

原因是因為:STM32的硬件IIC非常復雜,更重要的是它并不穩(wěn)定,故不推薦使用。

?

IIC協(xié)議

IIC總線在傳輸數(shù)據(jù)的過程中一共有三種類型信號,分別為:開始信號、結束信號和應答信號。這些信號中,起始信號是必需的,結束信號和應答信號,都可以不要。同時我們還要介紹其空閑狀態(tài)、數(shù)據(jù)的有效性、數(shù)據(jù)傳輸。

先來看一下IIC總線的時序圖:

這可能會比較復雜,可以先看一份簡化了的時序圖:

空閑狀態(tài)

當IIC總線的數(shù)據(jù)線SDA和時鐘線SCL兩條信號線同時處于高電平時,規(guī)定為總線的空閑狀態(tài)。此時各個器件的輸出級場效應管均處在截止狀態(tài),即釋放總線,由兩條信號線各自的上拉電阻把電平拉高。?

起始信號與停止信號

  • 起始信號:當時鐘線SCL為高期間,數(shù)據(jù)線SDA由高到低的跳變;啟動信號是一種電平跳變時序信號,而不是一個電平信號;
  • 停止信號:當時鐘線SCL為高期間,數(shù)據(jù)線SDA由低到高的跳變;停止信號也是一種電平跳變時序信號,而不是一個電平信號。

應答信號

發(fā)送器每發(fā)送一個字節(jié)(8個bit),就在時鐘脈沖9期間釋放數(shù)據(jù)線,由接收器反饋一個應答信號。?

  • 應答信號為低電平時,規(guī)定為有效應答位(ACK,簡稱應答位),表示接收器已經(jīng)成功地接收了該字節(jié);
  • 應答信號為高電平時,規(guī)定為非應答位(NACK),一般表示接收器接收該字節(jié)沒有成功。?

對于反饋有效應答位ACK的要求是:接收器在第9個時鐘脈沖之前的低電平期間將數(shù)據(jù)線SDA拉低,并且確保在該時鐘的高電平期間為穩(wěn)定的低電平。?如果接收器是主控器,則在它收到最后一個字節(jié)后,發(fā)送一個NACK信號,以通知被控發(fā)送器結束數(shù)據(jù)發(fā)送,并釋放數(shù)據(jù)線SDA,以便主控接收器發(fā)送一個停止信號P。

數(shù)據(jù)有效性

IIC總線進行數(shù)據(jù)傳送時,時鐘信號為高電平期間,數(shù)據(jù)線上的數(shù)據(jù)必須保持穩(wěn)定;只有在時鐘線上的信號為低電平期間,數(shù)據(jù)線上的高電平或低電平狀態(tài)才允許變化。?

即:數(shù)據(jù)在時鐘線SCL的上升沿到來之前就需準備好。并在在下降沿到來之前必須穩(wěn)定。

數(shù)據(jù)的傳達

在IIC總線上傳送的每一位數(shù)據(jù)都有一個時鐘脈沖相對應(或同步控制),即在SCL串行時鐘的配合下,在SDA上逐位地串行傳送每一位數(shù)據(jù)。數(shù)據(jù)位的傳輸是邊沿觸發(fā)。

延時時間

?

IIC總線的數(shù)據(jù)傳送

IIC總線上的每一個設備都可以作為主設備或者從設備,而且每一個設備都會對應一個唯一的地址(地址通過物理接地或者拉高),主從設備之間就通過這個地址來確定與哪個器件進行通信,在通常的應用中,我們把CPU帶I2C總線接口的模塊作為主設備,把掛接在總線上的其他設備都作為從設備。

也就是說,主設備在傳輸有效數(shù)據(jù)之前要先指定從設備的地址,地址指定的過程和上面數(shù)據(jù)傳輸?shù)倪^程一樣,只不過大多數(shù)從設備的地址是7位的,然后協(xié)議規(guī)定再給地址添加一個最低位用來表示接下來數(shù)據(jù)傳輸?shù)姆较?#xff0c;0表示主設備向從設備寫數(shù)據(jù),1表示主設備向從設備讀數(shù)據(jù)。

  • 主設備往從設備中寫數(shù)據(jù)。數(shù)據(jù)傳輸格式如下:

淡藍色部分表示數(shù)據(jù)由主機向從機傳送,粉紅色部分則表示數(shù)據(jù)由從機向主機傳送。

寫用0來表示(低電平),讀用1來表示(高電平)。

  • 主設備從從設備中讀數(shù)據(jù)。數(shù)據(jù)傳輸格式如下:

在從機產(chǎn)生響應時,主機從發(fā)送變成接收,從機從接收變成發(fā)送。之后,數(shù)據(jù)由從機發(fā)送,主機接收,每個應答由主機產(chǎn)生,時鐘信號仍由主機產(chǎn)生。若主機要終止本次傳輸,則發(fā)送一個非應答信號,接著主機產(chǎn)生停止條件。

  • ?主設備往從設備中寫數(shù)據(jù),然后重啟起始條件,緊接著從從設備中讀取數(shù)據(jù);或者是主設備從從設備中讀數(shù)據(jù),然后重啟起始條件,緊接著主設備往從設備中寫數(shù)據(jù)。數(shù)據(jù)傳輸格式如下:

在多主的通信系統(tǒng)中,總線上有多個節(jié)點,它們都有自己的尋址地址,可以作為從節(jié)點被別的節(jié)點訪問,同時它們都可以作為主節(jié)點向其它的節(jié)點發(fā)送控制字節(jié)和傳送數(shù)據(jù)。但是如果有兩個或兩個以上的節(jié)點都向總線上發(fā)送啟動信號并開始傳送數(shù)據(jù),這樣就形成了沖突。要解決這種沖突,就要進行仲裁的判決,這就是I2C總線上的仲裁。

I2C總線上的仲裁分兩部分:SCL線的同步和SDA線的仲裁。

這部分就暫時不介紹了,想要了解:可以參考鏈接淺談I2C總線或I2C總線協(xié)議圖解。

?

IIC底層驅(qū)動程序分析

現(xiàn)擬采用PB6、PB7來模擬IIC時序,其中:PB6為時鐘線,PB7為數(shù)據(jù)線。

首先進行一些必要的宏定義:

  • //IO方向設置
  • #define SDA_IN() {GPIOB->CRL&=0X0FFFFFFF;GPIOB->CRL|=(u32)8<<28;}
  • #define SDA_OUT() {GPIOB->CRL&=0X0FFFFFFF;GPIOB->CRL|=(u32)3<<28;}
  • //IO操作函數(shù)
  • #define IIC_SCL PBout(6) //SCL
  • #define IIC_SDA PBout(7) //SDA
  • #define READ_SDA PBin(7) //輸入SDA
  • //IIC所有操作函數(shù)
  • void IIC_Init(void); //初始化IIC的IO口
  • void IIC_Start(void); //發(fā)送IIC開始信號
  • void IIC_Stop(void); //發(fā)送IIC停止信號
  • void IIC_Send_Byte(u8 txd); //IIC發(fā)送一個字節(jié)
  • u8 IIC_Read_Byte(unsigned char ack);//IIC讀取一個字節(jié)
  • u8 IIC_Wait_Ack(void); //IIC等待ACK信號
  • void IIC_Ack(void); //IIC發(fā)送ACK信號
  • void IIC_NAck(void); //IIC不發(fā)送ACK信號
  • 由于IIC是半雙工通信方式,因而數(shù)據(jù)線SDA可能會數(shù)據(jù)輸入,也可能是數(shù)據(jù)輸出,需要定義IIC_SDA來進行輸出、READ_SDA來進行輸入,與此同時就要對IO口進行模式配置:SDA_IN()和SDA_OUT()。

    而時鐘線SCL一直是輸出的,所以就沒有數(shù)據(jù)線SDA麻煩了。

  • //初始化IIC
  • void IIC_Init(void)
  • {
  • GPIO_InitTypeDef GPIO_InitStructure;
  • RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE ); //使能GPIOB時鐘
  • GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_7;
  • GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP ; //推挽輸出
  • GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  • GPIO_Init(GPIOB, &GPIO_InitStructure);
  • GPIO_SetBits(GPIOB,GPIO_Pin_6|GPIO_Pin_7); //PB6,PB7 輸出高,空閑狀態(tài)
  • }
  • //產(chǎn)生IIC起始信號
  • void IIC_Start(void)
  • {
  • SDA_OUT(); //sda線輸出
  • IIC_SDA=1;
  • IIC_SCL=1;
  • delay_us(4);
  • IIC_SDA=0;????//START:when CLK is high,DATA change form high to low
  • delay_us(4);
  • IIC_SCL=0;????//鉗住I2C總線,準備發(fā)送或接收數(shù)據(jù)
  • }
  • //產(chǎn)生IIC停止信號
  • void IIC_Stop(void)
  • {
  • SDA_OUT();????//sda線輸出
  • IIC_SCL=0;
  • IIC_SDA=0;????//STOP:when CLK is high DATA change form low to high
  • delay_us(4);
  • IIC_SCL=1;
  • IIC_SDA=1;????//發(fā)送I2C總線結束信號
  • delay_us(4);
  • }
  • //發(fā)送數(shù)據(jù)后,等待應答信號到來
  • //返回值:1,接收應答失敗,IIC直接退出
  • // 0,接收應答成功,什么都不做
  • u8 IIC_Wait_Ack(void)
  • {
  • u8 ucErrTime=0;
  • SDA_IN(); //SDA設置為輸入
  • IIC_SDA=1;delay_us(1);
  • IIC_SCL=1;delay_us(1);
  • while(READ_SDA)
  • {
  • ucErrTime++;
  • if(ucErrTime>250)
  • {
  • IIC_Stop();
  • return 1;
  • }
  • }
  • IIC_SCL=0;????//時鐘輸出0
  • return 0;
  • }
  • //產(chǎn)生ACK應答
  • void IIC_Ack(void)
  • {
  • IIC_SCL=0;
  • SDA_OUT();
  • IIC_SDA=0;
  • delay_us(2);
  • IIC_SCL=1;
  • delay_us(2);
  • IIC_SCL=0;
  • }
  • //不產(chǎn)生ACK應答
  • void IIC_NAck(void)
  • {
  • IIC_SCL=0;
  • SDA_OUT();
  • IIC_SDA=1;
  • delay_us(2);
  • IIC_SCL=1;
  • delay_us(2);
  • IIC_SCL=0;
  • }
  • //IIC發(fā)送一個字節(jié)
  • //返回從機有無應答
  • //1,有應答
  • //0,無應答
  • void IIC_Send_Byte(u8 txd)
  • {
  • u8 t;
  • SDA_OUT();
  • IIC_SCL=0;????????????//拉低時鐘開始數(shù)據(jù)傳輸
  • for(t=0;t<8;t++)
  • {
  • //IIC_SDA=(txd&0x80)>>7;
  • if((txd&0x80)>>7)
  • IIC_SDA=1;
  • else
  • IIC_SDA=0;
  • txd<<=1;
  • delay_us(2); ????//對TEA5767這三個延時都是必須的
  • IIC_SCL=1;
  • delay_us(2);
  • IIC_SCL=0;
  • delay_us(2);
  • }
  • }
  • //讀1個字節(jié),ack=1時,發(fā)送ACK,ack=0,發(fā)送nACK
  • u8 IIC_Read_Byte(unsigned char ack)
  • {
  • unsigned char i,receive=0;
  • SDA_IN();????????//SDA設置為輸入
  • for(i=0;i<8;i++ )
  • {
  • IIC_SCL=0;
  • delay_us(2);
  • IIC_SCL=1;
  • receive<<=1;
  • if(READ_SDA)receive++;
  • delay_us(1);
  • }
  • if (!ack)
  • IIC_NAck();????????//發(fā)送nACK
  • else
  • IIC_Ack(); ????????//發(fā)送ACK
  • return receive;
  • }
  • 這里是通過普通IO口(PB6、PB7)來模擬IIC時序的程序,其實本質(zhì)上都是嚴格按照IIC的時序圖進行的,認真讀,仔細對比,應該是沒有什么困難的。

    就提一下:IIC_Read_Byte()函數(shù),這個函數(shù)的參數(shù)表示讀取一個字節(jié)之后,需要給對方應答信號或非應答信號。

    ?

    普通IO口模擬IIC時序讀取24C02

    24C02芯片介紹

    EEPROM (Electrically Erasable Programmable read only memory),帶電可擦可編程只讀存儲器——一種掉電后數(shù)據(jù)不丟失的存儲芯片。?

    24Cxx芯片是EEPROM芯片的一種,它是基于IIC總線的存儲器件,遵循二線制協(xié)議,由于其具有接口方便,體積小,數(shù)據(jù)掉電不丟失等特點,在儀器儀表及工業(yè)自動化控制中得到大量的應用。24Cxx在電路的作用主要是在掉電的情況下保存數(shù)據(jù)。

    本文使用的是24C02芯片,總容量是2k個bit(256個字節(jié))。這里芯片名稱里的02代表著總容量。

    24C02芯片的引腳分布和具體的作用見下圖:

    ?

    24C02芯片的引腳說明
    引腳名稱說明
    A0-A2地址輸入線
    SDA數(shù)據(jù)線
    SCL時鐘線
    WP寫保護
    GND、VCC提供電源

    下圖是本文中24C02和STM32的引腳連接圖:

    從圖中可以看出:A0、A1、A2都為0。

    對于并聯(lián)在一條IIC總線上的每個IC都有唯一的地址。那么看一下從器件地址,可以看出對于不同大小的24Cxx,具有不同的從器件地址。由于24C02為2k容量,也就是說只需要參考圖中第一行的內(nèi)容:

    根據(jù)圖中的內(nèi)容:如果是寫24C02的時候,從器件地址為10100000(0xA0);讀24C02的時候,從器件地址為10100001(0xA1)。

    24C02芯片的時序圖

    這部分的內(nèi)容應結合上文:I2C總線的數(shù)據(jù)傳送的內(nèi)容一起理解。

    24C02字節(jié)寫時序

    對24C02芯片進行寫字節(jié)操作的時候,步驟如下:

  • 開始位,后面緊跟從器件地址位(0xA0),等待應答,這是為了在IIC總線上確定24C02的從地址位置;
  • 確定操作24C02的地址,等待應答,也就是將字節(jié)寫入到24C02中256個字節(jié)中的位置;
  • 確定需要寫入24C02芯片的字節(jié),等待應答,停止位。
  • 24C02字節(jié)讀時序

    對24C02芯片進行讀字節(jié)操作的時候,步驟如下:

  • 開始位,后面緊跟從器件地址位(0xA0),等待應答,這是為了在IIC總線上確定24C02的從地址位置;
  • 確定操作24C02的地址,等待應答,也就是從24C02中256個字節(jié)中讀取字節(jié)的位置;
  • 再次開始位,后面緊跟從器件地址位(0xA1),等待應答;
  • 獲取從24C02芯片中讀取的字節(jié),發(fā)出非應答信號,停止位。
  • 讀取24C02芯片程序

  • #define AT24C01 127
  • #define AT24C02 255
  • #define AT24C04 511
  • #define AT24C08 1023
  • #define AT24C16 2047
  • #define AT24C32 4095
  • #define AT24C64 8191
  • #define AT24C128 16383
  • #define AT24C256 32767
  • //Mini STM32開發(fā)板使用的是24c02,所以定義EE_TYPE為AT24C02
  • #define EE_TYPE AT24C02
  • //初始化IIC接口
  • void AT24CXX_Init(void)
  • {
  • IIC_Init();
  • }
  • //在AT24CXX指定地址讀出一個數(shù)據(jù)
  • //ReadAddr:開始讀數(shù)的地址
  • //返回值 :讀到的數(shù)據(jù)
  • u8 AT24CXX_ReadOneByte(u16 ReadAddr)
  • {
  • u8 temp=0;
  • IIC_Start();
  • if(EE_TYPE>AT24C16)????????????//為了兼容24Cxx中其他的版本
  • {
  • IIC_Send_Byte(0XA0); //發(fā)送寫命令
  • IIC_Wait_Ack();
  • IIC_Send_Byte(ReadAddr>>8);????//發(fā)送高地址
  • IIC_Wait_Ack();
  • }else ????IIC_Send_Byte(0XA0+((ReadAddr/256)<<1)); //發(fā)送器件地址0XA0,寫數(shù)據(jù)
  • IIC_Wait_Ack();
  • IIC_Send_Byte(ReadAddr%256); //發(fā)送低地址
  • IIC_Wait_Ack();
  • IIC_Start();
  • IIC_Send_Byte(0XA1); //進入接收模式
  • IIC_Wait_Ack();
  • temp=IIC_Read_Byte(0); ????//讀一個字節(jié),非應答信號信號
  • IIC_Stop();????????//產(chǎn)生一個停止條件
  • return temp;
  • }
  • //在AT24CXX指定地址寫入一個數(shù)據(jù)
  • //WriteAddr :寫入數(shù)據(jù)的目的地址
  • //DataToWrite:要寫入的數(shù)據(jù)
  • void AT24CXX_WriteOneByte(u16 WriteAddr,u8 DataToWrite)
  • {
  • IIC_Start();
  • if(EE_TYPE>AT24C16)
  • {
  • IIC_Send_Byte(0XA0); //發(fā)送寫命令
  • IIC_Wait_Ack();
  • IIC_Send_Byte(WriteAddr>>8);????//發(fā)送高地址
  • }else
  • {
  • IIC_Send_Byte(0XA0+((WriteAddr/256)<<1)); //發(fā)送器件地址0XA0,寫數(shù)據(jù)
  • }
  • IIC_Wait_Ack();
  • IIC_Send_Byte(WriteAddr%256); //發(fā)送低地址
  • IIC_Wait_Ack();
  • IIC_Send_Byte(DataToWrite); //發(fā)送字節(jié)
  • IIC_Wait_Ack();
  • IIC_Stop();????//產(chǎn)生一個停止條件
  • delay_ms(10);
  • }
  • //在AT24CXX里面的指定地址開始寫入長度為Len的數(shù)據(jù)
  • //該函數(shù)用于寫入16bit或者32bit的數(shù)據(jù).
  • //WriteAddr :開始寫入的地址
  • //DataToWrite:數(shù)據(jù)數(shù)組首地址
  • //Len :要寫入數(shù)據(jù)的長度2,4
  • void AT24CXX_WriteLenByte(u16 WriteAddr,u32 DataToWrite,u8 Len)
  • {
  • u8 t;
  • for(t=0;t<Len;t++)
  • {
  • AT24CXX_WriteOneByte(WriteAddr+t,(DataToWrite>>(8*t))&0xff);
  • }
  • }
  • //在AT24CXX里面的指定地址開始讀出長度為Len的數(shù)據(jù)
  • //該函數(shù)用于讀出16bit或者32bit的數(shù)據(jù).
  • //ReadAddr :開始讀出的地址
  • //返回值 :數(shù)據(jù)
  • //Len :要讀出數(shù)據(jù)的長度2,4
  • u32 AT24CXX_ReadLenByte(u16 ReadAddr,u8 Len)
  • {
  • u8 t;
  • u32 temp=0;
  • for(t=0;t<Len;t++)
  • {
  • temp<<=8;
  • temp+=AT24CXX_ReadOneByte(ReadAddr+Len-t-1);
  • }
  • return temp;
  • }
  • //檢查AT24CXX是否正常
  • //這里用了24XX的最后一個地址(255)來存儲標志字.
  • //如果用其他24C系列,這個地址要修改
  • //返回1:檢測失敗
  • //返回0:檢測成功
  • u8 AT24CXX_Check(void)
  • {
  • u8 temp;
  • temp=AT24CXX_ReadOneByte(255);//避免每次開機都寫AT24CXX
  • if(temp==0X55)return 0;
  • else//排除第一次初始化的情況
  • {
  • AT24CXX_WriteOneByte(255,0X55);
  • temp=AT24CXX_ReadOneByte(255);
  • if(temp==0X55)return 0;
  • }
  • return 1;
  • }
  • //在AT24CXX里面的指定地址開始讀出指定個數(shù)的數(shù)據(jù)
  • //ReadAddr :開始讀出的地址 對24c02為0~255
  • //pBuffer :數(shù)據(jù)數(shù)組首地址
  • //NumToRead:要讀出數(shù)據(jù)的個數(shù)
  • void AT24CXX_Read(u16 ReadAddr,u8 *pBuffer,u16 NumToRead)
  • {
  • while(NumToRead)
  • {
  • *pBuffer++=AT24CXX_ReadOneByte(ReadAddr++);
  • NumToRead--;
  • }
  • }
  • //在AT24CXX里面的指定地址開始寫入指定個數(shù)的數(shù)據(jù)
  • //WriteAddr :開始寫入的地址 對24c02為0~255
  • //pBuffer :數(shù)據(jù)數(shù)組首地址
  • //NumToWrite:要寫入數(shù)據(jù)的個數(shù)
  • void AT24CXX_Write(u16 WriteAddr,u8 *pBuffer,u16 NumToWrite)
  • {
  • while(NumToWrite--)
  • {
  • AT24CXX_WriteOneByte(WriteAddr,*pBuffer);
  • WriteAddr++;
  • pBuffer++;
  • }
  • }
  • //要寫入到24c02的字符串數(shù)組
  • const u8 TEXT_Buffer[]={"WarShipSTM32 IIC TEST"};
  • #define SIZE sizeof(TEXT_Buffer)
  • int main(void)
  • {
  • u8 key;
  • u16 i=0;
  • u8 datatemp[SIZE];
  • delay_init(); //延時函數(shù)初始化
  • NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置中斷優(yōu)先級分組為組2:2位搶占優(yōu)先級,2位響應優(yōu)先級
  • uart_init(115200); //串口初始化為115200
  • LED_Init(); //初始化與LED連接的硬件接口
  • LCD_Init(); //初始化LCD
  • KEY_Init(); //按鍵初始化
  • AT24CXX_Init(); //IIC初始化
  • POINT_COLOR=RED;//設置字體為紅色
  • LCD_ShowString(30,50,200,16,16,"WarShip STM32");
  • LCD_ShowString(30,70,200,16,16,"IIC TEST");
  • LCD_ShowString(30,90,200,16,16,"ATOM@ALIENTEK");
  • LCD_ShowString(30,110,200,16,16,"2015/1/15");
  • LCD_ShowString(30,130,200,16,16,"KEY1:Write KEY0:Read"); //顯示提示信息
  • while(AT24CXX_Check())//檢測不到24c02
  • {
  • LCD_ShowString(30,150,200,16,16,"24C02 Check Failed!");
  • delay_ms(500);
  • LCD_ShowString(30,150,200,16,16,"Please Check! ");
  • delay_ms(500);
  • LED0=!LED0;//DS0閃爍
  • }
  • LCD_ShowString(30,150,200,16,16,"24C02 Ready!");
  • POINT_COLOR=BLUE;//設置字體為藍色
  • while(1)
  • {
  • key=KEY_Scan(0);
  • if(key==KEY1_PRES)//KEY_UP按下,寫入24C02
  • {
  • LCD_Fill(0,170,239,319,WHITE);//清除半屏
  • LCD_ShowString(30,170,200,16,16,"Start Write 24C02....");
  • AT24CXX_Write(0,(u8*)TEXT_Buffer,SIZE);
  • LCD_ShowString(30,170,200,16,16,"24C02 Write Finished!");//提示傳送完成
  • }
  • if(key==KEY0_PRES)//KEY1按下,讀取字符串并顯示
  • {
  • LCD_ShowString(30,170,200,16,16,"Start Read 24C02.... ");
  • AT24CXX_Read(0,datatemp,SIZE);
  • LCD_ShowString(30,170,200,16,16,"The Data Readed Is: ");//提示傳送完成
  • LCD_ShowString(30,190,200,16,16,datatemp);//顯示讀到的字符串
  • }
  • i++;
  • delay_ms(10);
  • if(i==20)
  • {
  • LED0=!LED0;//提示系統(tǒng)正在運行
  • i=0;
  • }
  • }
  • }
  • ?

    IIC總結

  • 進行數(shù)據(jù)傳送時,在SCL為高電平期間,SDA線上電平必須保持穩(wěn)定,只有SCL為低時,才允許SDA線上電平改變狀態(tài)。并且每個字節(jié)傳送時都是高位在前;
  • 對于應答信號,ACK=0時為有效應答位,說明從機已經(jīng)成功接收到該字節(jié),若為1則說明接受不成功;
  • 如果從機需要延遲下一個數(shù)據(jù)字節(jié)開始傳送的時間,可以通過把SCL電平拉低并保持來強制主機進入等待狀態(tài);
  • 主機完成一次通信后還想繼續(xù)占用總線在進行一次通信,而又不釋放總線,就要利用重啟動信號。它既作為前一次數(shù)據(jù)傳輸?shù)慕Y束,又作為后一次傳輸?shù)拈_始;
  • 總線沖突時,按“低電平優(yōu)先”的仲裁原則,把總線判給在數(shù)據(jù)線上先發(fā)送低電平的主器件;
  • 在特殊情況下,若需禁止所有發(fā)生在I2C總線上的通信,可采用封鎖或關閉總線,具體操作為在總線上的任一器件將SCL鎖定在低電平即可;
  • SDA仲裁和SCL時鐘同步處理過程沒有先后關系,而是同時進行的。
  • ?

    轉(zhuǎn)載于:https://www.cnblogs.com/CodeWorkerLiMing/p/10830459.html

    總結

    以上是生活随笔為你收集整理的【STM32】IIC的基本原理(实例:普通IO口模拟IIC时序读取24C02)(转载)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    99精品视频网 | 国产精品免费久久久久久 | 97色在线观看免费视频 | 久久丁香| 草久中文字幕 | 91丨九色丨国产女 | 蜜桃视频在线观看一区 | 欧美日韩视频一区二区 | 免费av成人在线 | 成人免费视频网 | 精品视频在线免费观看 | 成年人免费看片 | 亚洲精品中文字幕在线 | 国产午夜免费视频 | 国产精品区一区 | 国产视频精品网 | 日韩午夜一级片 | 在线观看av片| 天天天干天天射天天天操 | 日韩免费看 | 99精品系列| 日韩四虎 | 亚洲最新av在线网址 | 综合久久婷婷 | 成人久久毛片 | 黄色av高清| 日韩免费电影网 | 成人黄色在线播放 | 国产精品 中文字幕 亚洲 欧美 | 99热9| 狠狠久久 | 午夜10000| 中文字幕久久亚洲 | 国产一区久久久 | 免费在线观看一区 | 在线观看av小说 | 国产在线免费观看 | 欧美日韩成人一区 | 久久久精品免费看 | av电影在线免费观看 | 国产精品乱看 | 97超碰在线资源 | 国产高清视频在线免费观看 | 亚洲涩涩涩涩涩涩 | 成人av高清在线观看 | 在线视频亚洲 | 欧美日韩1区 | 欧美日韩视频在线 | 人成在线免费视频 | 久久久久久久精 | 国产视频手机在线 | 97超在线| 国产91精品看黄网站在线观看动漫 | 日日干夜夜操视频 | 国产美女在线精品免费观看 | 国内精品久久久久久中文字幕 | www.日日操.com| 精品久久久精品 | 中文综合在线 | 成人黄色电影免费观看 | 久久国产乱 | 久久久久久亚洲精品 | 女人18精品一区二区三区 | 999亚洲国产996395 | 久久久久久在线观看 | 亚洲三级影院 | 欧美久久久久久久久久久久久 | 在线观看午夜 | 麻花豆传媒一二三产区 | 激情网五月天 | 9999免费视频 | 99麻豆久久久国产精品免费 | 天天干人人插 | 亚洲视频,欧洲视频 | 精品国产一区二区三区av性色 | 激情 婷婷 | 一级成人网 | 天天色综合天天 | 免费看一级片 | 91精品国产欧美一区二区 | 国产一区二区在线观看视频 | 免费看的毛片 | 国产第页 | 国产小视频在线免费观看视频 | 中文成人字幕 | 欧美综合在线视频 | 日韩一区二区三区高清在线观看 | a级国产乱理伦片在线观看 亚洲3级 | 久久综合五月天 | 欧美在线视频日韩 | 99视频久 | 日韩在线高清免费视频 | 久久天天躁狠狠躁夜夜不卡公司 | 高清精品视频 | 最新av电影网站 | 美女久久久| 不卡视频一区二区三区 | 久久精品超碰 | 欧美韩国日本在线 | 99热这里只有精品在线观看 | 97天天干 | 久久成人国产精品入口 | 久久免费在线观看视频 | 黄色三级免费观看 | 国产精品人成电影在线观看 | 日本99干网| 国产一区在线观看免费 | 免费色网 | 国产精品9999久久久久仙踪林 | 一区二区三区国产欧美 | 日韩在线视频线视频免费网站 | 久久久国产精品一区二区三区 | 中文字幕在线观看免费 | 丁香婷婷久久久综合精品国产 | 亚洲电影图片小说 | 视频在线观看入口黄最新永久免费国产 | 国产精品免费av | 欧美日韩国产网站 | 丁香资源影视免费观看 | 91高清免费在线观看 | 成人aⅴ视频 | 中文字幕资源在线观看 | 五月在线| 日韩一区二区三免费高清在线观看 | 91精品网站| 一级特黄aaa大片在线观看 | 亚洲精品66 | 国产精品 999| 99视 | 97热视频| 黄在线 | 久久久久久久久久久网站 | 欧美日韩国产一区二区三区 | 丁香网五月天 | 欧美视频日韩视频 | 最近2019好看的中文字幕免费 | 久久一区二区免费视频 | 欧美久久精品 | 久久综合色天天久久综合图片 | 亚洲专区一二三 | 亚洲最新av在线网站 | 在线看小早川怜子av | 欧美色综合 | 亚洲高清视频在线 | 久久免费影院 | 久久成人国产精品入口 | 国产五月婷婷 | 日韩三级在线观看 | 成年人免费观看在线视频 | 色中文字幕在线观看 | 日日干夜夜操视频 | 中文字幕av最新更新 | 亚洲成av人影片在线观看 | 国产精品va在线播放 | 欧美日韩另类在线 | 黄色亚洲免费 | 欧美成人在线免费观看 | 亚洲天堂在线观看完整版 | 久久美女高清视频 | 免费观看一级特黄欧美大片 | 日韩精品在线免费播放 | 亚洲第一区在线播放 | 久久精品99久久久久久2456 | 久精品视频在线观看 | 日韩三级不卡 | 中文在线a√在线 | 欧美午夜激情网 | 色婷婷www| 91精品国产91 | 精品视频免费播放 | 亚洲砖区区免费 | 成人全视频免费观看在线看 | www.天天操.com| 国产成人精品av在线观 | 黄色一级免费 | 中文字幕在线成人 | 瑞典xxxx性hd极品 | 五月婷婷毛片 | 日本激情中文字幕 | 中文字幕在线视频一区二区 | 六月丁香在线视频 | 国产91对白在线 | 欧美日韩二区在线 | 国产午夜精品免费一区二区三区视频 | 在线黄频 | 一区二区三区动漫 | 国产精品久久久久久久午夜 | 亚洲一区二区三区miaa149 | 亚洲日本韩国一区二区 | 婷婷色影院| 91免费视频国产 | 99国产精品一区二区 | 中文字幕中文字幕在线中文字幕三区 | 日韩精品大片 | 国产成人精品亚洲日本在线观看 | 蜜臀久久99精品久久久无需会员 | 最近中文字幕视频完整版 | 91精品一区二区在线观看 | 中文av字幕在线观看 | 成人av免费在线播放 | av中文在线 | 久久精品伊人 | av日韩在线网站 | 亚洲午夜小视频 | 久久人人97超碰国产公开结果 | 久久综合加勒比 | 国产成人精品三级 | 天天操综合网 | 色吊丝在线永久观看最新版本 | 天天综合天天综合 | 国产亚洲精品久久久久秋 | 久久久久成人精品亚洲国产 | 久久久综合| 国产中文字幕网 | 国产最新在线视频 | 激情视频综合网 | 国产精品视频资源 | 97av影院| 97久久精品午夜一区二区 | 国产粉嫩在线 | 综合激情网 | 亚洲精品乱码久久久一二三 | 伊人黄| 中文一区在线观看 | 日韩中文字幕亚洲一区二区va在线 | 在线观看亚洲国产精品 | 麻豆成人精品 | 在线看片91 | 久久成人精品电影 | 久久精品站 | 91九色蝌蚪视频在线 | 国产在线播放不卡 | 精品国产理论片 | 欧美日韩在线精品一区二区 | 国产一区二区三区免费视频 | 天天艹天天操 | 91九色蝌蚪在线 | 久久黄色网址 | 色欲综合视频天天天 | 精品在线观看一区二区三区 | 四虎亚洲精品 | 国产免费亚洲 | 日韩欧美一二三 | 亚洲精品久久久久999中文字幕 | 四虎影视成人精品国库在线观看 | 国产在线播放观看 | 特级西西人体444是什么意思 | 国产黄色免费观看 | 91亚洲精 | 五月天欧美精品 | 国产精品亚洲精品 | 国产亚洲高清视频 | 美女视频久久久 | 色九九在线 | 国产资源网 | 久久69av| 最近日本字幕mv免费观看在线 | a久久久久 | av国产网站 | 中文不卡视频在线 | 黄色三级视频片 | 久久精品免费电影 | 免费观看91视频大全 | av在线免费观看黄 | 久久精品欧美视频 | 亚洲电影av在线 | 91私密视频| 天天操夜夜想 | 免费看精品久久片 | 国产理伦在线 | av不卡在线看 | 中文网丁香综合网 | 最新在线你懂的 | 亚洲视频h | 亚洲成人高清在线 | 美女中文字幕 | 国产一区二区三区 在线 | 国产成人三级在线 | 四虎在线免费视频 | www免费视频com━ | 91精品国产成人观看 | 日韩精品在线一区 | 五月色婷 | 521色香蕉网站在线观看 | www..com毛片 | 日韩精品免费一线在线观看 | 观看免费av| 久久久久国产一区二区三区四区 | 欧美精品在线视频观看 | 91精品久久久久久综合乱菊 | 日韩欧美国产成人 | 亚洲精品国产精品乱码不99热 | 成人国产精品入口 | 天天干天天干天天干 | 日本在线视频网址 | 亚洲高清免费在线 | 在线观看精品一区 | 91亚洲欧美激情 | 亚洲福利精品 | 日韩丝袜视频 | 亚洲天堂网视频在线观看 | 日日操操操 | 久久99久久99精品免费看小说 | 亚洲另类视频在线 | 在线免费日韩 | 色瓜| jizz18欧美18| av资源免费观看 | av电影一区二区三区 | 日韩av在线免费播放 | 亚洲另类人人澡 | 韩日成人av| 黄色精品久久 | 欧美在线你懂的 | 亚洲国产中文字幕在线观看 | 国产91影视 | 婷婷中文字幕综合 | 亚洲精品777 | 91大神精品视频在线观看 | 国产精品久久亚洲 | 91九色在线 | 99热九九这里只有精品10 | 夜夜爽天天爽 | 国产色秀视频 | 91九色在线视频 | a视频在线观看免费 | 免费网站在线观看人 | 亚洲做受高潮欧美裸体 | 综合色狠狠 | 亚洲一区二区三区四区精品 | 午夜在线免费观看视频 | 国产视频91在线 | 成 人 黄 色 视频 免费观看 | www久久国产| 91av看片| 久久成人国产精品入口 | 91精品一区二区三区蜜桃 | 九九精品在线观看 | 黄色小视频在线观看免费 | 国产婷婷在线观看 | 在线看的毛片 | 国产精品久久久久久久电影 | 国产色网| 97人人超碰在线 | 97成人精品视频在线播放 | 99久久99久久精品免费 | 亚洲视频2| 一区 二区电影免费在线观看 | 天天做天天爱天天爽综合网 | 亚洲片在线资源 | 九九热精品国产 | 亚洲最新av在线网址 | 91在线视频网址 | 免费三级网 | 一区三区视频在线观看 | 99激情网| 91高清免费在线观看 | 99精品久久久久久久久久综合 | 中文字幕亚洲精品在线观看 | 国产无遮挡又黄又爽在线观看 | 成年人免费av | 久久手机精品视频 | 在线导航福利 | 日韩av黄 | 黄色片免费在线 | 探花视频网站 | 久久精品久久精品久久39 | 欧美三人交 | 91精品福利在线 | 国产亚洲精品久久久久5区 成人h电影在线观看 | 久久久精品小视频 | 最近2019中文免费高清视频观看www99 | 欧美a级片免费看 | 色丁香综合 | 四季av综合网站 | 香蕉视频在线观看免费 | 日韩高清一区二区 | 九九视频在线观看视频6 | 日韩午夜电影网 | 色吧久久| 国产精品网红直播 | 中文一区在线 | 园产精品久久久久久久7电影 | 日本性生活免费看 | 日本最新高清不卡中文字幕 | 99久久99久久精品 | 国产精品国产三级国产专区53 | 免费高清在线一区 | 麻豆av一区二区三区在线观看 | 久久一区二区三区超碰国产精品 | 亚洲午夜精品一区二区三区电影院 | 国产精品免费久久久 | 日韩电影在线观看一区二区三区 | 国产区免费在线 | 人人爱人人添 | av免费线看 | 天天色欧美 | 亚州国产精品久久久 | 最近乱久中文字幕 | 天天干天天摸 | 欧美激情视频免费看 | 日韩美在线 | 免费网站污 | 久久激五月天综合精品 | 久久人人97超碰国产公开结果 | av电影一区二区 | 久久久福利影院 | 久草在线中文视频 | 四虎在线永久免费观看 | 国产精品系列在线观看 | 五月婷婷亚洲 | 欧美午夜一区二区福利视频 | 五月婷婷视频在线 | 日韩精品在线观看视频 | 粉嫩av一区二区三区免费 | 人人爽人人澡 | 日韩精品免费在线观看视频 | 欧美激情综合五月色丁香 | 国产美女精品久久久 | 激情五月伊人 | 国产偷国产偷亚洲清高 | 伊人狠狠色丁香婷婷综合 | 久久国产福利 | 亚洲国产成人在线 | 成人九九视频 | 欧美精品久久久久久久久久白贞 | 国产成人一区二区三区久久精品 | 97超碰人人爱 | 久草精品视频在线观看 | 国产免费影院 | 天堂va在线高清一区 | 中文字幕人成一区 | 在线国产高清 | 色欧美视频 | 成人在线免费小视频 | 91免费国产在线观看 | 日本韩国在线不卡 | 亚洲激情 在线 | 免费看的黄网站软件 | 国产黄色特级片 | 国产中文字幕91 | 国产视频97 | 欧美一区二区三区在线看 | 五月婷婷激情五月 | 久久99亚洲精品久久 | 激情视频网页 | 毛片永久新网址首页 | 欧美人人爱 | 国产高清视频在线播放一区 | 国产高清永久免费 | 天天艹天天干天天 | 日韩欧美一区二区三区黑寡妇 | 亚洲欧美国产日韩在线观看 | 丰满少妇在线观看 | 国产综合91 | 夜夜婷婷| 97精品超碰一区二区三区 | 成年人在线免费看视频 | 日韩特级片 | 综合成人在线 | 精品天堂av | 日本高清免费中文字幕 | 狠狠色丁香婷婷综合橹88 | 69国产精品视频 | 91成人在线视频观看 | 99视频免费播放 | 国产高清在线观看 | 久久久高清视频 | 日韩影片在线观看 | 久久精品国产第一区二区三区 | 天天摸日日操 | 9999在线视频| 91精品国产综合久久久久久久 | 黄色毛片大全 | 免费黄色av | 成人av一二三区 | 国产日韩精品一区二区三区在线 | 久久综合色天天久久综合图片 | 精品欧美一区二区三区久久久 | 久久久久一区二区三区 | 色偷偷网站视频 | 国产中文字幕一区二区 | 天天干夜夜爱 | 欧洲一区二区三区精品 | 99精品国产兔费观看久久99 | 日日夜夜骑| 亚洲视频一级 | 久久99亚洲精品久久久久 | 亚洲成人黄色在线观看 | 99热这里| 中文字幕日韩精品有码视频 | 97国产情侣爱久久免费观看 | 亚洲国产精品电影 | 日本三级不卡 | 久久久精品国产一区二区 | 欧美日韩高清在线一区 | 国产高清免费视频 | 91九色综合| 免费看黄在线观看 | 久草资源免费 | 国产精品人人做人人爽人人添 | 亚洲尺码电影av久久 | 香蕉影视app | 精品欧美小视频在线观看 | 欧美性极品xxxx做受 | 丁香六月婷婷激情 | 国产视频二区三区 | 狠狠88综合久久久久综合网 | 日韩黄在线观看 | 精品播放 | 激情av网址| 色姑娘综合 | 日韩在线免费观看视频 | 日韩美在线观看 | 精品国产电影 | 天天综合天天做天天综合 | 久久在线免费观看视频 | 日韩一区在线播放 | 国产一级视频在线 | 色综合小说 | 亚洲伦理精品 | 日韩视频一二三区 | 日本一区二区三区视频在线播放 | 久草在线99 | 99在线免费视频观看 | 国产999精品视频 | 国产成人精品一区二区三区网站观看 | 91av视频| 蜜臀av网址 | 日韩高清av | 美女免费网视频 | 一本一道久久a久久综合蜜桃 | 狠狠色丁香婷婷综合久小说久 | 六月丁香婷 | 蜜臀av在线一区二区三区 | 中文字幕免费观看 | 香蕉手机在线 | 天天爱天天射天天干天天 | 99久久久久 | 国产精品一区二区免费在线观看 | 五月天色丁香 | 久久精品免费观看 | 久久久国产一区 | 久久tv | 日女人电影 | 一级片免费观看视频 | 久久精品一区二区三区中文字幕 | 中文字幕一区二区三区久久 | 久久久久中文字幕 | 国产精品久久久区三区天天噜 | 日韩有码中文字幕在线 | 国产成人久久av977小说 | 亚洲精品videossex少妇 | 中文字幕久久亚洲 | 深爱激情五月网 | 美女免费视频一区二区 | 久久久污| 色人久久 | 成年人天堂com | 日韩欧美亚州 | ww亚洲ww亚在线观看 | 天天色天 | 免费视频久久久久久久 | 天天草视频 | 麻豆影视网| 午夜电影久久久 | 啪啪午夜免费 | 亚洲最大在线视频 | 国产精品久久久久久久久久久久久 | 欧美一级片免费在线观看 | 97福利| 国产精品专区h在线观看 | 日韩在线欧美在线 | 国偷自产中文字幕亚洲手机在线 | 狠狠躁天天躁综合网 | 国产在线资源 | 国产无吗一区二区三区在线欢 | 国产成人精品一区二区三区福利 | 成人资源站 | 在线国产视频观看 | 欧美亚洲成人免费 | 亚洲高清视频在线观看 | 日日草夜夜操 | 久久丁香网 | 五月天激情电影 | 国产高清精品在线观看 | 黄污在线看 | 亚洲久在线 | 91看片淫黄大片一级在线观看 | 亚洲精品av在线 | 久久成年人网站 | 国产 色 | 日日操日日插 | 天天做天天射 | 久久网站av | 日韩中文字幕国产 | 久久久免费网站 | 国产不卡毛片 | 天堂资源在线观看视频 | 亚州av一区 | 国产成人精品av久久 | 国产99久久九九精品免费 | 天天爱天天操天天干 | 国产精品久久久av | 久久精品久久精品久久 | 青青河边草免费观看完整版高清 | 天天色天天综合网 | 色综合久久久久综合99 | 在线播放日韩av | 在线视频中文字幕一区 | 在线观看播放av | 日韩在线不卡 | 日韩欧美在线视频一区二区 | 日韩有码第一页 | 亚洲精品乱码久久久久久蜜桃91 | 99久久成人 | 人人干人人模 | 国产精品一区二区果冻传媒 | 国产亚洲成人网 | 91在线播放综合 | 黄色91在线观看 | 欧美xxxxx在线视频 | 91在线产啪 | 久久99九九99精品 | 亚洲激情p | 337p日本欧洲亚洲大胆裸体艺术 | 中文字幕在线观看视频网站 | 亚洲免费国产视频 | 日韩高清免费观看 | 亚洲精品看片 | 99久久久久久国产精品 | 精品久久福利 | 久草在线资源观看 | 日本99干网 | www好男人 | 91理论电影 | 精品国产免费观看 | 99精品一级欧美片免费播放 | 五月天六月婷 | 亚洲影院色| 婷婷综合久久 | 狠狠插狠狠操 | 欧美日韩免费一区二区三区 | 日韩xxx视频 | 亚洲人毛片 | 亚洲精品视频在线观看免费视频 | 精品一二三区 | 国产又粗又硬又爽的视频 | 手机成人免费视频 | 免费黄色激情视频 | 日韩精品一二三 | 国产一级片免费观看 | 久久99精品国产99久久 | 午夜视频欧美 | 热re99久久精品国产66热 | 黄色一级在线视频 | 九九精品在线观看 | 97在线视频免费播放 | 黄色av电影一级片 | 日p视频在线观看 | 日韩欧美电影在线 | 亚洲午夜av久久乱码 | 久操久 | 日韩精品免费在线观看视频 | 日韩免费一区 | 久九视频| 亚洲国产片色 | 久久精品一二三 | 中文字幕在线国产 | 九九在线精品视频 | 日韩特黄一级欧美毛片特黄 | 免费观看性生活大片3 | 亚洲影视九九影院在线观看 | 日韩精品免费在线观看视频 | 视频国产在线观看18 | 麻豆一区二区三区视频 | 国产精久久久久久久 | 日韩激情小视频 | 日本中文在线观看 | 亚洲综合激情网 | 特级西西444www高清大视频 | 九九热免费视频在线观看 | 天天射成人 | 毛片美女网站 | 中文字幕日本在线观看 | 天堂av在线网址 | 国产黄色一级大片 | 黄色三级久久 | 91av超碰| 九九九在线观看 | 96超碰在线 | 免费看的黄网站软件 | 国产免费小视频 | 成人av在线影视 | 久久久999免费视频 日韩网站在线 | 亚洲日本一区二区在线 | 国产精品嫩草69影院 | 久久五月婷婷丁香 | 久久看片 | 久久999精品 | 欧美一级片免费播放 | 天堂中文在线视频 | 夜夜骑天天操 | 天天色官网 | 欧美日韩国产免费视频 | 国产精品v a免费视频 | 91天堂影院 | 日韩中文字幕免费在线播放 | 欧美日本啪啪无遮挡网站 | 婷婷去俺也去六月色 | 亚洲视频第一页 | 久久午夜国产精品 | 国产 中文 日韩 欧美 | 在线看av的网址 | 日韩黄色免费电影 | 99精品视频免费看 | 亚洲女人av| 国产午夜三级一区二区三 | www.黄色 | 国产精品视频99 | 亚洲精品乱码久久久久久按摩 | 欧美人体xx| 免费热情视频 | 亚州日韩中文字幕 | 欧美福利视频 | 免费在线观看av网址 | 日韩美女av在线 | 色网站在线看 | 欧美久久久久久久 | 国产91对白在线播 | 在线观看亚洲精品 | 天天操天天干天天插 | 911久久 | 午夜电影久久 | 日本精品视频免费 | 四虎永久免费网站 | 视频国产在线观看18 | 亚洲热视频 | 国内精品在线观看视频 | 91视频在线国产 | 97免费视频在线 | 亚洲欧美日韩一级 | 色综合天天射 | 高清免费av在线 | 日本狠狠干| 国产又黄又爽无遮挡 | 久久国产电影 | 久久私人影院 | 玖玖在线播放 | 天天操天天操天天操天天操天天操天天操 | 97av在线| 中文字幕在线观 | 综合伊人av | 亚洲最大在线视频 | 天天性天天草 | 美女视频永久黄网站免费观看国产 | 久久久久久美女 | 国产系列 在线观看 | 青青久草在线视频 | 五月开心六月伊人色婷婷 | 成人永久免费 | 欧美aa一级 | 在线视频 区 | 日韩欧美国产激情在线播放 | 久久久精品福利视频 | 在线看污网站 | 国产精品久久久久久69 | 亚洲精品视频在线观看免费视频 | 国产精品一区免费看8c0m | 高清av免费一区中文字幕 | 亚洲国产欧美一区二区三区丁香婷 | 日韩影视在线观看 | 黄色大片av| 超碰在线97免费 | 久草在线中文888 | 日本性久久 | 天堂av中文字幕 | 一本一道久久a久久精品蜜桃 | 日韩大片在线观看 | 成人在线视频你懂的 | 久久久久国产免费免费 | 日韩a级黄色片 | aav在线| 久久99九九99精品 | 日韩免费在线一区 | 9色在线视频 | 天天久久综合 | 日韩欧美网址 | 国产一级黄色av | 久久人人爽人人爽 | 玖玖精品视频 | 亚洲国产一区二区精品专区 | 亚洲国产精久久久久久久 | 亚洲成年人免费网站 | 国产精品第2页 | 国产无吗一区二区三区在线欢 | 国产精品久久99精品毛片三a | 欧美一区二视频在线免费观看 | 国产精品99久久久久久宅男 | 国产成人亚洲在线观看 | 美女网站在线 | 99久久一区 | 国产精品自产拍在线观看网站 | 91视频观看免费 | 亚洲视频久久久 | 久久毛片网 | 美女视频黄色免费 | 成人在线视频网 | 91网站免费观看 | 国产综合香蕉五月婷在线 | 欧美日韩免费看 | 欧洲视频一区 | 在线亚洲播放 | 亚洲天堂精品视频在线观看 | 日韩 国产 | 99色精品视频 | 国产伦理一区 | 天天干中文字幕 | 国产精品福利午夜在线观看 | 久久国产精品一区二区三区 | 97超碰人人澡 | 91丨九色丨国产在线 | 亚洲开心色 | 人人要人人澡人人爽人人dvd | www婷婷| 99国产精品一区二区 | 国产精品一区二区三区免费看 | 国产视频日韩视频欧美视频 | 日韩精品综合在线 | 久久久久久久久久久免费 | 欧美91在线 | 在线观看你懂的网站 | 久久9精品 | 国产亚洲一区二区三区 | 在线国产99 | 中文字幕视频在线播放 | 日韩在线高清视频 | 国产中文字幕一区 | 91日韩在线专区 | 亚洲欧洲xxxx | 欧洲激情在线 | 在线中文字幕av观看 | 在线久热 | 波多野结衣在线中文字幕 | 国产馆在线播放 | 日本中文字幕在线免费观看 | 精品欧美一区二区精品久久 | 免费日韩一区二区三区 | 久久国产精品色婷婷 | 亚洲成人精品久久久 | 日韩丝袜视频 | 久久免费视频一区 | 亚洲乱码在线 | 亚洲第一av在线 | 久草新在线 | 久久精彩 | 国产精品高潮呻吟久久久久 | 久草在线视频免赞 | 国产专区欧美专区 | 国产啊v在线观看 | 2023国产精品自产拍在线观看 | 日韩免费专区 | 久久三级视频 | 久久久久久久久久久久亚洲 | 人人澡av| 国产精品美女久久久久久久久 | 久草在线在线视频 | 国产精品videossex国产高清 | 伊人狠狠 | 91麻豆网站 | 久久tv| 91香蕉视频黄色 | 日韩精品久久中文字幕 | 黄色a一级片 | 久久人操| 国产精品区免费视频 | 最近中文国产在线视频 | 亚洲每日更新 | 91cn国产在线 | 91精品导航 | 亚洲精品国产精品乱码在线观看 | 黄色a级片在线观看 | 日本不卡123| 97视频久久久 | 99久久久久免费精品国产 | 日韩有码欧美 | 日韩中文字幕一区 | 天堂网一区二区 | 伊人永久在线 | 久久不卡日韩美女 | 成人午夜免费福利 | 欧美精品国产精品 | 成人久久 | 十八岁以下禁止观看的1000个网站 | 久久久久久久久久久电影 | 国产精品6| 成人97视频 | 黄色免费在线视频 | 久久精品亚洲一区二区三区观看模式 | 丁香花五月 | 在线观看免费福利 | 亚洲精品国产精品国自产在线 | 欧美性大战 | 久久久久99999 | 99精品偷拍视频一区二区三区 | 伊人久久国产精品 | 探花国产在线 | 色在线中文字幕 | 国产日韩在线一区 | 免费v片 | 最新午夜电影 | 玖玖玖在线观看 | 五月天久久久久久 | 国产天天综合 | 久久免费精品视频 | 奇米先锋| 天天综合网入口 | 91久久国产自产拍夜夜嗨 | www.久久com| 日韩成片 | 日韩欧美91 | 日韩 精品 一区 国产 麻豆 | 婷婷在线免费观看 | 中国一级特黄毛片大片久久 | 天天综合网 天天综合色 | 五月天综合婷婷 | 极品嫩模被强到高潮呻吟91 | 日韩在线观看网址 | 国产精品淫片 | 不卡视频在线看 | 日韩精品久久中文字幕 | 欧美精品一区在线发布 | 国产中文字幕久久 | 久久久精品国产一区二区电影四季 | 久久久不卡影院 | 免费人成在线观看网站 | 国产99久久久欧美黑人 | 就操操久久 | 婷婷色网址 | 91精品免费在线 | 日日骑| 超碰在线日本 | 97精品电影院 | 久久久久国产精品视频 | 中文字幕在线字幕中文 | 欧美极度另类 | 五月天六月色 | 蜜臀aⅴ国产精品久久久国产 | 国产精品久久久一区二区 | 中文字幕最新精品 | 久久在线观看视频 | 夜夜骑日日 | 国产精品久久久久久久久久久久午 | 日本中文在线播放 | av大全在线观看 | 久久久视频在线 | 久久九九精品久久 | 黄色av一级片 | www.黄色在线 | 日韩精品在线免费播放 | 国产成人av片 | 99久久er热在这里只有精品66 | 欧美日韩综合在线观看 | 国产中文字幕在线免费观看 | 欧美日韩国产高清视频 | 婷婷五月色综合 | 国产精品一区二区无线 | 九九亚洲精品 | 久久久久久久久久久综合 | 精品视频中文字幕 | 亚洲婷婷丁香 | 国产精品免费观看久久 | 久久精品人 | 欧美日韩在线免费观看 | av免费观看高清 | 在线久久 | 美女av免费 | 国产精品人人做人人爽人人添 | 在线小视频你懂得 | 午夜日b视频 | 天天翘av| 91成人看片 | 丁香网五月天 | 一区二区视频网站 | 国产精品网红福利 | 免费看的黄色录像 | 欧美午夜久久 | www夜夜 | 国产 欧美 在线 | 国产精品av在线 | 成人a级网站 | 天天拍天天操 | 青青色影院 | 久久精品电影网 | 成人国产电影在线观看 | 日本女人逼 | 97精品国产一二三产区 | 中文视频在线播放 |