日韩av色在线_av不卡在线观看_亚洲国产精品第一页_在线看日本不卡_色成人综合网_国产丝袜在线视频_国产精成人品localhost_国产91富婆露脸刺激对白_韩国视频一区_国产精品人成电影

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > STM32F030 Nucleo-多樣的SPI通信之Master標準模式-SPIFlash讀寫

STM32F030 Nucleo-多樣的SPI通信之Master標準模式-SPIFlash讀寫 時間:2018-08-16      來源:未知

我個人認為,學習單片機,在硬件上和驅動上,我們無非學習這么幾個東西:

1.能靈活的操作GPIO端口

2.理解單片機各個引腳的功能和作用和外圍小系統的設計

3.各種通信協議比如:并口協議(LCD1602等),UART/USART協議,IIC協議,485通信協議,SPI通信協議,IIS音頻流傳輸協議,CAN通信協議,單總線通信協議(DS18B20等),三總線協議(DS1302等)等等通信協議。

4.ADC/DAC 模數/數模轉換

5.單片機內部提供的一些運輸協議或者特殊功能,比如DMA,RTC,定時器Timer等,這些功能的操作有單片機本身確定,經過協議相同目標相同,但是操作等可能各家單片機不盡相同;咱只需要理解它完成的是什么功能/任務就好。

通過學習各種協議、一些基本的操作和所使用的這款單片機的內核功能或者特殊功能(與內核和廠商設計相關),就基本上能利用單片機與外設或者其他MCU或CPU實現通信交流了,都交流上了!那自然就是有關系了!哈哈哈!那至于想搞什么關系(男女關系還是朋友關系<開玩笑>)那就自己想嘍!哈哈哈哈!

關系都搞通了!那么借錢(讀取)或者還錢(寫入)就有機會啦!!!

那么其實問題就來了!有人會疑問,不是還有算法啊!數據結構等等這些嗎??其實這是一個顯而易見的問題:

建議:

1.在我們寫代碼的時候,好將我們的代碼封裝起來,分成與硬件相關的代碼(層)和與硬件無關的層。

2.與硬件無關的層可能有繼續劃分,比如分一些總線層或者書中間調度層等等,這些層和我們的產品功能實現可能沒有太大關系,但是卻為我們的功能進行調度或者作為基礎,是的我們的代碼的可移植性更高。

3.當然,萬事沒有絕對,在RAM和ROM/Flash緊缺的情況下,用上面1和2點的方法顯然是不合適的,因為咱的ROM/Flash一不小心就裝不了咱的代碼了,那就沒得玩了,何況還有RAM的情況也是這樣,所以這時候咱就盡量的減少代碼,優化代碼,這樣可能就會使得與硬件相關的代碼和功能代碼混合在一起了,這樣的代碼的可移植性是非常低的,但是沒辦法嘛!這是一種解決方案!哈哈!

4.基于上面三點的建議,做一下總結。首先說明一下實際的情況,絕大部分的初學者管你內存多大,他們的代碼都采用的是第3種方法,這可以說是一種不好的習慣,建議還是盡量的模仿使用1和2中方法學習,當然也不是那么簡單的,這需要一個長久的學習和閱讀一些好的開源項目代碼,比如一些實時操作系統源碼(UCosII、FreeRTOS,小型用于SD卡或者SPIFlash等的文件系統源碼等等),這樣理解開源項目的架構,才能自己慢慢學習構建架構的,這是一個比較漫長的過程,需要有心人在學習的過程中慢慢的關注。

OK!廢話了半天!言歸正傳!這里咱要學習的是SPI通信,身邊剛好有SPIFlash,咋就用咱的STM32F030 Nucleo板卡作為主機與它通信吧。

首先呢,有必要先介紹一下SPI通信協議。

SPI通信總線協議開始是由Motorola(摩托羅拉)提出或者發明的。她提供了三線制全雙工同步串行外圍接口,采用主從模式架構。在一同一個通信系統中,支持多從機單一主機。也就是說,每一個SPI總線通信上只存在一個主機。

它的通信方式是:通信時鐘CLK有主機控制,數據在時鐘脈沖下按位傳輸,先傳高位再傳低位。()這一點非常重要!在單片機不支持硬件SPI通信時,與具有SPI通信接口的外設傳感器等通信就必須使用MCU的I/O口模擬SPI時序與之進行數據通信,從而實現功能。

還有一個非常好的好處就是,通信速率能達到幾M到十幾M,哈!好快。

好!基本上幾句話就知道SPI的基本信息了!那么,干啥呢??當然是。。。。。。。。分析分析通信過程了哇!哈哈!

硬件通信接口:

CLK-------CLOCK Signal;時鐘線

MISO-----Master Input Slave Output;主機輸入從機輸出數據線

MOSI-----Master Output Slave Input;主機輸出從機輸入數據線

NSS-------Slave Select pin;從設備使能線

咦!咋覺得不太對呢?上面明明說是三線制啊!咋的這里有四根線呢(CLK時鐘線、MISO數據線,MOSI數據線和NSS片選線)?

其實是這樣的,前面介紹SPI的時候,說是三線制,主要是說數據通信所需要的線,即CLK、MISO、MOSI這三根線是SPI通信的基礎,而NSS片選線有時候在特定情況下是不必要的(這個下一篇文章中我會詳細介紹),所以,問題就這樣愉快的解決了。哈哈!這種感覺是不是很爽!!嘿嘿。

當然,這其實只是SPI通信硬件接口的一部分,而且是基礎的部分。那么現在就STM32F030的硬件SPI資源進行講解。打開參考手冊《STM32F030x468C and STM32F070x6B advanced ARM®-based 32-bit MCUs.pdf》

打開到SPI通信的講解章節,如下:

這就是SPI的簡介了!哈哈!好!不廢話了!繼續往下:

這里就說明了這款芯片的SPI的特點和功能,再往下:

注意紅線框出的部分,這就是我們這款單片機擁有的SPI外設資源和支持的功能資源。非常重要!!!

講到資源,那我們還必須要牢記這款芯片的資源對應的單片機引腳。這個要從Datasheet來看了。如下:

哈!看見沒!這就是這款芯片的資源了,特別關注紅框標注的地方,而且還要注意哪些復用是我們的STM32F030 Nucleo板卡的主控MCU STM32F030R8T8才有的,這一點非常重要!別寫半天引腳的配置都不對。這是一件很悲催很丟臉的事。

OK!咱來看看我們的單片機的SPI內臟,如下:

有必要先說明一下:FIFO:First Input First Output,即先進先出隊列!哈哈!還記得在學習數據結構是的隊列嗎??就是這個了!嘿嘿!

發送數據:當不使用Tx FIFO緩沖區時,直接就是將1Byte數據從MOSI上傳移位寄存器,然后移位寄存器自己根據時鐘CLK的邊沿將數據按位移動到IO口,然后傳送出去;當使用Tx FIFO的時候,咱們就直接將一堆數據放在Tx FIFO中,然后使能傳輸,它就自己講數按照SPI協議發送出去了(如紅色線)。

接收數據:當不使用Rx FIFO緩沖區的時候,MCU根據時鐘CLK的邊沿對MISO引腳進行數據采集,然后放在移位寄存器上,當采集滿8bit了,時鐘就好停下來啦!然后就是讀取數據出來啦!哈哈!當使用Rx FIFO時,就將數據放大Rx FIFO中,然后當FIFO滿的時候,產生標志或者中斷,然后就將數據搬到內存中就好嘍!嘿嘿!(如藍色線)。

對于時鐘線和NSS,當然是分別作為產生數據傳輸是所需要的時鐘脈沖和片選了哈!

那么其實在這個SPI“內臟”中,還包含了CRC校驗控制器和同學控制器,顧名思義肯定是用來校驗和控制SPI通了的拉!嘿嘿!

那么粉色框是啥意思呢??下面那個一看就知道這是波特率了!嘿嘿!就是控制速度的拉!兩個設備要通信,肯定是要站在同一個水平上交流嘛!如果一個快一個慢,那就沒法交流了!嘿嘿!那上面的粉色框是啥呢??RXONLY就是只讀嘍!但是其實參考手冊上都有表述,先不糾結這個。咱要關注的應該是:CPOL和CPHA。這兩東西到底是啥呢??其實呢CPOL表示SPI通信的時鐘極性,即表示時鐘線在空閑時的電平狀態;CPHA表示SPI通信的時鐘相位,即表示在時鐘線脈沖的什么時候對數據進行捕捉和輸出。可以配置出兩種SPI通信協議(它對SPI通信影響極大)。

CPOL和CPHA的配置表述:

CPOL:CPOL= 0;時鐘線空閑狀態時為低電平;CPOL=1;時鐘線空閑狀態時為高電平。

CPHA:CPHA=0;在時鐘線的第一個跳變沿(上升沿/下降沿)數據被采集;CPHA=1;在時鐘線的第二個跳變沿(上升沿/下降沿)數據被采集。

注:在進行SPI通信時,通過一總線上的所有設備必須保證CPOL和CPHA的一致性;這是非常重要的,反正意思就是在同一水平上進行交流。

得到以上消息之后,咱組合一下就有如下情況了,其實就是2的2次方等于4種SPI通信模式,如下:

(1)SPI0:CPOL=0,CPHA=0

(2)SPI1:CPOL=0,CPHA=1

(3)SPI2:CPOL=1,CPHA=0

(4)SPI3:CPOL=1,CPHA=1

嘿嘿!以上就是SPI通信的四種模式了!也可以理解成SPI通信的四種協議!還有就是至于SPI0~SPI3到底表示的是啥就不要糾結了(有些人不知道咋的,就是要糾結這東西,然后然后連自己都分不清楚這到底是啥)!咱至于記住CPOL和CPHA分別在不同狀態下表示的是啥就夠了!然后組合!哈哈哈哈!你懂的。

OK!對于SPI總線通信的基本說明就到這了!當然了,還有時序的說明,但是呢,這個比較長!就不一個個分析了,看看SPI通信協議更靠譜!嘿嘿!我會附上我認為比較好的SPI協議文檔進行參考。

下面咱要繼續挖SPI了!

SPI主機-從機全雙工通信:

看見了沒!現在知道為毛是三線了吧?上面已經表示出了主機和從機之間的接口連接方式,有時候只需要一直講NSS處于一個低電平狀態,就可以一直正常通信了。至于發送數據那就是CLK,NISO,MOSI的事了。

SPI主機-從機半雙工通信:

看見了沒有??這樣也是可以的!這就有點像IIC了,但是,但是協議是不一樣的!主機的MOSI與從機的MISO接口相連!既然是半雙工,那么就意味著它不能同時發送和接收數據了,所以,主機應該是先發完數據,然后再讀取數據,呵呵!!!這樣的通信方式,到目前為止,俺遇到的傳感器等等設備也是沒用過哇。不過不管它!既然支持,那么有機會就要使用它!嘿嘿!

SPI主機-從機單工通信:

在參考手冊中有如下圖的一段話:

講述了SPI可以工作在單工模式下雨設備通信!和它的配置!那么說明時候用到這種配置的通信呢??不知道各位有木有用過74HC595,74HC573等等這些鎖存器呢或者是SPILCD/OLED呢?沒錯!對于這些設備或者芯片,單片機沒有什么數據要從他們那里讀取的!只需要向他們寫數據就好!所以在這種情況下就需要單工SPI通信了!哈哈!

看下圖:

接口就如上了!嘿嘿!但是!但是一定要看下面的標注1、2、3和Note啊,別傻乎乎的出問題了。

SPI主機-多從機通信:

看見上圖沒?知道NSS是干啥的了吧?SPI的多機通信就是這樣了!特別注意粉色框的NSS的接法和用法!很重要哦!其他的一切都是按照SPI標準協議來通信的!就不多廢話了。嘿嘿!

OK!SPI的基本的協議!就是這樣了!哈哈!在參考手冊上還分別對CLK、NSS、RxFIFO/TxFIFO、DMA等等的用法!這個就自己去看了!基本的協議將清楚了!那就應該做做實驗,謝謝代碼了。嘿嘿!

還有一點解釋就是,為毛不講解寄存器呢??嘿嘿!我將反問道,為毛樣講寄存器呢?難道我會將的有手冊的好,有手冊的權威??這是不可能的!而且,學到了這一步,對怎么看寄存器資料介紹和操作寄存器應該是沒問題了的!嘿嘿!

我剛好有64M的SPIFlash,嘿嘿!這個可不能浪費嘍!哈哈!那咱就先玩Flash吧!用它來體驗一下SPI通信!嘿嘿!

Flash型號:W25Q64 華邦公司的產品嘍!

Flash大小:64M Bit == 8M Byte,空間可是好大哦!有8M Byte

主控MCU:STM32F030R8T6

咱就通過MCU的硬件SPI資源與SPIFlash進行通信,實現數據的存儲和讀取。

要干下面這么幾件事:

1.查閱W25Q64 數據手冊Datasheet,獲取其SPI的時鐘相位和極性。這可是通信的關鍵哦!

看見沒!SPIFlash支持兩種SPI標準通信模式,分別是

SPI0:CPOL=0,CPHA=0

SPI3:CPOL=1,CPHA=1

OK!想要的信息得到了!

2.選擇和配置MCU SPI資源,在這里咱就用SPI1了!如下圖:

有的選擇!這是好事啊!意味著有備胎哇!哈哈哈!那么我們到底該用哪一組呢?查看了一下Nucleo板卡的原理圖,得知PA5引腳是用來驅動發光二極管LD2的,那就意味著如果咱選用第1組,那么LD2就沒得玩了!這樣就不好玩了!所以咋還是選擇第二組吧!嘿嘿!記住資源選擇的思路哦!!!一切都要考慮到!

咦!是不是感覺有哪里不對??第二組為毛沒有硬件NSS資源呢??這個咋玩啊??嘿嘿!其實那,在這里咱是和SPIFlash通信,那么就是以為著STM32F030是作為主機Master來使用的,所以,嘿嘿!NSS任意選擇一個GPIO口即可。哈哈!在這里咱根據Nucleo板卡的布局和考慮到功能的復用等等,選擇了GPIOA10口作為NSS了。

3.硬件連接,如下圖:

下面就該貼程序了!嘿嘿!

SPI的初始化配置:

解釋:

1.打開SPI1的時鐘嘍!不理解為毛是APB2的話,沒關系,兩種方法(1)看時鐘樹(2)查看stm32f10x_rcc.c文件!找到RCC_APB2Periph_SPI1即可!嘿嘿!

2.打開GPIO端口的復用功能,這個從函數源碼來講應該是很好理解的!函數源碼參數說明如下:

問題就來了!你咋知道我們所用的資源對應的到時是哪一個GPIO_AF_x?比日說SPI1從函數說明來說可能是GPIO_AF_0也可能是GPIO_AF_1,這個咋玩呢??還是一句話,在參考手冊或者數據手冊Datasheet上找,肯定能找到。沒錯,就是在Datasheet上找到了!如下圖:

看見了沒??對應的是AF0啊啊啊啊啊啊!所以就是GPIO_AF_0。嘿嘿!多么簡單的領悟哇!

3.就是硬件SPI的基本配置了,嘿嘿!不管他!反正,咱只要配置成:全雙工通信(主要參數宏的2Lines(兩線)是指兩根數據線)、數據長度8Bit、CPOL=1,CPHA=1(用模式3)、NSS由軟件控制、波特率預分頻值為4分頻(關于速率也要參看SPIFlash手冊,這樣才能正確通信)、指定數據傳輸從MSB位開始(這個一定要參看參考手冊)、指定CRC多項式計算因子為7(這個在參考手冊中也有詳細說明)、后指定SPI為Master主模式。這樣就完成配置了!嘿嘿!

4.啟動NSS為軟件管理模式,配置FIFO的接收閥值為事件生成的1/4,后就使能SPI1控制器了。

哈哈!配置過程就這樣完了!

既然配置完成了!咱就發送和接收數據嘍!這才是終的目標嘛!哈哈!那就往下看嘍!

上面就是讀寫函數了!四句話解決!是不是很簡潔?嘿嘿!肯定是下班等待發送標志空閑,然后再SPI_SendData8()發送數據啦!因為是全雙工的嘛,所以每發送出去1bit數據,MCU也會接收到1bit的數據,只是這些事咱不用考慮,因為MCU的SPI控制器已經給咱們干了。哈哈!所以發送了之后,就要該讀取了!但是總得等待接收標志位空閑吧!然后讀取就返回了!所以,對于SPI的通信,發送數據和讀取數據就是同一個函數實現嘍!但是,有一點要注意哦,SPI通信接收的數據是上一次的數據,啥意思呢??比如,咱發送一個命令(0x08),spi_data = SPI_SendData8(SPI1,0x08);這是返回的spi_data不是命令0x08所返回的結果數據,所以想要獲取命令0x08的返回數據,就要緊接著spi_data = SPI_SendData8(SPI1,0xff);這次才是命令0x08所返回的數據,這一點尤其要注意。

OK!既然配置好了!也可以發送和接收數據了!那SPI的講解也就完了!嘿嘿!至于其他部分的關于SPIFlash的代碼,這就沒什么好說的了!見我附的例程吧!具體的實現就要參考SPIFlash的datasheet了。

解釋:在這里雖然與SPIFlash通信,但是對SPIFlash的講解并不大!其實呢,對于SPIFlash的講解又是一大堆!而且我覺得沒必要!因為這與SPI通信無關了,而且SPIFlash的Datasheet將的非常權威了,我們只需要知道SPIFlash是存儲數據的存儲器,我們用它的目的就是為了存儲數據或者存放Demo。這就夠 ,至于它的指令,等等每一種SPIFlash都是不盡相同的!沒法講。

后:以上內容僅僅為個人理解,如果有錯誤或者不足,請聯系我,讓我也學習學習!謝謝!

QQ641251565 郵箱:641251565@qq.com

上一篇:STM32F030 Nucleo-開發調試的經驗USART的重要性

下一篇:STM32F030 Nucleo-做個準確的延時SysTick

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

9191在线播放| 日韩欧美一级二级三级久久久| 岛国精品一区二区| 三级久久三级久久| 免费大片黄在线| 巨骚激情综合| 日韩美女一级视频| 伦理片一区二区三区| 日韩a在线观看| 国产精品久久一区二区三区不卡 | 亚洲国产日韩综合一区| 美国av一区二区三区 | 国产精品久久久久久69| 亚洲一区二区天堂| 精品人妻久久久久一区二区三区| 国产 日韩 欧美 精品| 天天操天天射天天舔| 男女下面一进一出无遮挡| 最近2018年中文字幕在线 | 成人精品在线播放| 天天干天天操av| 影音先锋中文字幕影院| 欧美videos另类齐全| 国产极品视频| se在线视频| 97影视大全免费追剧大全在线观看| 粗大的内捧猛烈进出在线视频| 经典三级在线| 污影院在线观看| 欧美成人黑人| 9l视频自拍九色9l视频成人| 日韩精品社区| 在线精品视频在线观看高清| 欧美一级网站| 成人手机在线视频| 国产精品高潮久久久久无| 亚洲国产日韩一区二区| 欧美性色综合网| 亚洲成人久久电影| 久久精品91久久香蕉加勒比 | 成人高清电影网站| 激情丁香综合| 国产一区二区三区av电影 | 精品久久久久久中文字幕动漫| 视频一区二区在线观看| 国产二区视频在线| 亚洲国产日韩在线一区| 黄色99视频| 永久久久久久| 无码人妻精品一区二区三区66| 亚洲av午夜精品一区二区三区| 亚洲天堂av中文字幕| 九九热在线免费观看| www.狠狠干| 78国产伦精品一区二区三区| 免费在线黄网| 97超碰在线公开在线看免费| 四虎精品在线观看| 天天做天天爱天天综合网2021| 麻豆一区二区在线| 亚洲欧美日韩国产手机在线 | 日本在线成人| 欧美激情偷拍| 丁香婷婷综合网| 亚洲激情校园春色| 欧美一区二区三区视频在线观看| 日韩中文字幕在线观看| 91网站在线看| 青草网在线观看| 日韩免费黄色av| www.一区二区三区| 人妻少妇精品无码专区二区 | 色综合咪咪久久| 日韩国产高清污视频在线观看| 91成人福利在线| 亚洲高清视频一区| 亚洲欧美一区二区三区不卡| 五月天综合在线| 久久日.com| 小香蕉视频在线| 欧美色网在线| 国自产拍偷拍福利精品免费一| proumb性欧美在线观看| 精品1区2区3区| 久久久久久国产精品久久| 国模精品一区二区三区| 免费看国产黄色片| 欧美激情图片小说| 好男人中文字幕官网| 亚洲欧洲动漫| 久久伊人精品| 欧美日韩免费在线| 夜夜躁日日躁狠狠久久88av| 2018av男人天堂| 91动漫免费网站| 中文字幕制服诱惑| 人人在线视频| 国产精品69xx| 午夜av一区| 国产日韩欧美综合一区| 日韩西西人体444www| 国产精品99一区| 亚洲人精品午夜射精日韩| 日韩精品电影一区二区三区| av中文在线观看| 97影院理论| 欧美大胆成人| 奶水喷射视频一区| 亚洲免费av在线| 亚洲全黄一级网站| 欧美吻胸吃奶大尺度电影| 日韩在线观看免费高清完整版| 风间由美久久久| www.桃色.com| 中文字幕在线观看视频一区| ·天天天天操| 国产成人午夜性a一级毛片| 亚洲黄色天堂| 精品久久久久久久久久久| 欧美二区乱c黑人| 一区二区三区四区在线视频| 久久久久亚洲AV成人无在| 免费永久在线观看黄网| 色的视频在线免费看| 成人一级毛片| 亚洲女厕所小便bbb| 色老头一区二区三区在线观看| 欧洲亚洲一区| av永久免费观看| 日韩精品免费一区二区| 日韩激情美女| 久久免费高清| 欧美日韩高清影院| 92看片淫黄大片欧美看国产片 | 精品伦精品一区二区三区视频| 国产亚洲色婷婷久久| 国内精品国产成人国产三级| 在线观看入口黄最新永久免费国产| 一区二区三区亚洲视频| 91视频com| 免费无码毛片一区二区app| 免费xxxx性欧美18vr| 成人啪啪18免费游戏链接| 一区二区三区精品视频在线观看| 最新av电影网站| 久久久精品日韩欧美| 亚洲女同志亚洲女同女播放| 色婷婷综合久久久中文字幕| 777片理伦片在线观看| 精品少妇一区二区| 男女小视频在线观看| 国产精品igao视频| 国产黄在线观看| 欧美在线一区二区视频| 国内精品区一区二区三| 校花撩起jk露出白色内裤国产精品| 女人色极品影院| 91在线小视频| 啊v在线视频| 首页亚洲中字| 中文字幕一区二区三区四区| 久久久久亚洲精品成人网小说| 成年人免费在线播放| 一级黄色片免费| 日本亚洲精品| 视频一区视频二区中文| 日韩一区二区影院| 日韩欧美一区二区在线观看 | 中文字幕在线中文字幕二区| 欧美日韩性在线观看| 天天色天天爱天天射综合| 成人网在线免费观看| 黄色aaa视频| jizzjizzjizz美国| 久久av综合| 午夜不卡在线视频| 91精品黄色| 久久久久久视频| 91网页在线看| 午夜日韩电影| 精品日韩在线观看| 高清无码视频直接看| 国产激情久久久久久熟女老人av| 欧美色图天堂| 成人免费观看av| 欧美国产日本高清在线 | 精品黄色一级片| 日韩欧美在线观看视频| 精品一区国产| 91精品国产高清一区二区三密臀| jizz在线观看中文| 久久成人av少妇免费| 久久亚洲成人精品| 日批视频免费看 | 国产精品日韩精品欧美精品| 亚洲激情在线视频| 国产成人精品视频免费看| 日韩亚洲天堂| 偷窥自拍亚洲色图精选| 在线观看一区不卡| 国内自拍中文字幕| 日本男人天堂网| 91精品尤物| 日本精品一区二区三区高清| 亚洲视频sss| 色欲av伊人久久大香线蕉影院| 日韩午夜电影免费看| 亚洲一区二区三区影院| 女同一区二区| aaa一区二区| 久久av日韩| 亚洲区小说区图片区qvod按摩| 91电影在线观看| www.-级毛片线天内射视视| 国产 日韩 欧美 精品| 久久的色偷偷| 日本精品视频一区二区| 996这里只有精品| 欧美专区日韩| 精品国产一区二区三区久久久樱花| 欧美精品国产精品| 欧美韩国日本在线| 国产成人免费视频app| 久久国产精品亚洲人一区二区三区 | 日本久久成人网| 在线成人免费观看| 欧美精品第三页| 2021最新国产精品一区| 99视频精品全国免费| 亚洲精品一区二区三区不| 少妇愉情理伦片bd| 欧美成人明星100排名| 国产毛片一区二区| 国产中文字幕亚洲| 91视频在线视频| 九九热线视频只有这里最精品| 伊人色综合久久天天人手人婷| 欧美高清一区二区| 熟妇高潮一区二区高潮| 在线日韩一区| 亚洲高清福利视频| 中国特级黄色片| 少妇性bbb搡bbb爽爽爽欧美| av成人老司机| 精品欧美一区二区在线观看视频| 国产人妻精品一区二区三| 天堂va在线高清一区| 4438x亚洲最大成人网| 国内外成人免费在线视频| 日本一二区视频| 国产精品亚洲人在线观看| 999精品视频一区二区三区| 国产老妇伦国产熟女老妇视频| 99a精品视频在线观看| 精品国产乱码久久久久久牛牛| 久久久福利影院| 理论在线观看| 国产精品无码永久免费888| 亚洲视频电影| 看**视频a级毛片| 麻豆精品新av中文字幕| 成人福利视频在线观看| 精品国产999久久久免费| 视频精品在线观看| 中文字幕视频一区二区在线有码 | 久久久久久美女| 国产成人在线免费视频 | 欧美一区二区三区电影在线观看| 最近免费中文字幕大全免费第三页| 最新国产精品久久久| 国语自产精品视频在线看| 自拍偷拍18p| 一区二区美女| 久久视频在线看| 日干夜干天天干| 三级欧美日韩| 国产一区二区三区在线视频 | 成人羞羞国产免费| 国产香蕉在线观看| 欧美一区免费| 欧美性受xxxx白人性爽| 夜夜骚av一区二区三区| 小嫩嫩12欧美| 欧美国产激情18| 日本三级一区二区三区| 亚洲精品播放| 欧美大码xxxx| 亚洲天堂久久久久| 日韩电影免费在线观看| 久久久久国产精品www| 中文字幕第31页| 99久久婷婷这里只有精品| 日本欧美精品在线| 蜜桃av鲁一鲁一鲁一鲁俄罗斯的| 欧美日韩国产高清| 成人免费观看网址| 免费观看欧美成人禁片| 美腿丝袜在线亚洲一区| 欧洲一区二区在线| av五月婷婷| 最新久久zyz资源站| 成人中文字幕av| 日本不卡视频| 欧美日韩国产中文| 国产传媒视频在线| 99久热在线精品视频观看| 中文字幕成人在线| 中文人妻熟女乱又乱精品| 香蕉久久网站| 亚洲一区二区中文| 日本肉体xxxx裸体784大胆| 91在线国产观看| 激情网站五月天| 呦呦在线视频| 亚洲成人中文字幕| 久草手机在线视频| 99国产精品免费视频观看| 91久久精品视频| 爽爽影院免费观看视频| 久久久久久久久蜜桃| 欧美激情国产精品日韩| 欧美被日视频| 欧美xxx久久| 久久精品国产成人av| 婷婷综合伊人| 国产伦精品一区二区三区照片| av高清在线观看| 国产精品乱码人人做人人爱| 波多野结衣电影免费观看| 色婷婷综合久久久中字幕精品久久| 亚洲色图五月天| 精品国产一级片| 久久精品国产精品亚洲红杏| www婷婷av久久久影片| 亚洲精品久久久狠狠狠爱| 亚洲激情视频| 亚洲乱码一区二区三区| 中文视频在线| 欧美精品在线观看播放| 黄色一级片免费在线观看| 亚洲性人人天天夜夜摸| 日韩一区国产在线观看| 亚洲尤物在线视频| 欧美一区二区三区在线看| 天堂网中文字幕| 久久午夜电影| 人体内射精一区二区三区| 丁香花视频在线观看| 久久精品亚洲国产| 免费男女羞羞的视频网站中文子暮| 99久久精品免费看| aaaaaaaa毛片| 亚洲精品一区国产| 国产精品美女免费看| 免费黄色av| 色综合久久中文综合久久97| 久久精品一区二区三| 欧美女人交a| 热这里只有精品| 18av在线播放| 色诱女教师一区二区三区| 先锋资源一区| 中文字幕不卡的av| 一级片手机在线观看| 九九久久婷婷| 欧美视频1区| 欧美人xxx| 亚洲深夜福利网站| 三级小说一区| 一区在线播放视频| 波多野结衣喷潮| 欧美精品偷拍| h无码动漫在线观看| 国产另类xxxxhd高清| 2019中文字幕在线免费观看| 黄色的毛片免费| 欧美亚洲日本一区| 一级特黄aaa大片在线观看| 国产999精品久久| 免费观看污网站| 欧美综合在线视频观看| 日韩视频专区| 91九色国产在线播放| 97精品欧美一区二区三区| 5g影院5g电影天天爽快| 欧美色精品在线视频| 国产精品高潮呻吟av| 91免费国产在线| 四季av中文字幕| 国产精品一卡| 污污视频网站免费观看| 国产 日韩 欧美 综合 一区| 国产一区二区三区奇米久涩| 1769在线观看| 欧美激情亚洲激情| 国语对白在线视频| 亚洲精品一区在线观看| 亚洲精品7777xxxx青睐| 精品福利一区二区| 国产永久免费视频|