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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

RT-Thread uart串口设备驱动代码结构剖析

發布時間:2024/1/23 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RT-Thread uart串口设备驱动代码结构剖析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

硬件測試平臺:正點原子潘多拉STM32L4開發板
OS內核版本:4.0.0

注意:下面的示例代碼是從原子提供的例程中摘錄,因此可能與最新的RT-Thread源碼有出入(因為RT-Thread源碼在不斷的開發維護中)
下面摘錄的例程中,關鍵位置我給出了注釋

下面開始正文:

RT-Thread的Finsh串口控制臺有個標志性的開頭打印信息如下:

\ | / - RT - Thread Operating System/ | \ 4.0.0 build Dec 18 20182006 - 2018 Copyright by rt-thread team

在components.c中找到rtthread_startup()函數

int rtthread_startup(void) {rt_hw_interrupt_disable();/* board level initialization* NOTE: please initialize heap inside board initialization.*/rt_hw_board_init();/* show RT-Thread version */rt_show_version();

rt_show_version();就是打印這段開頭信息的。

/*** This function will show the version of rt-thread rtos*/ void rt_show_version(void) {rt_kprintf("\n \\ | /\n");rt_kprintf("- RT - Thread Operating System\n");rt_kprintf(" / | \\ %d.%d.%d build %s\n",RT_VERSION, RT_SUBVERSION, RT_REVISION, __DATE__);rt_kprintf(" 2006 - 2018 Copyright by rt-thread team\n"); } RTM_EXPORT(rt_show_version);

顯然,既然能串口打印了,那么必然在這之前已經初始化了該串口,那么rt_show_version()之前的rt_hw_board_init()函數里一定初始化了串口。

void rt_hw_board_init() { //...略/* Second initialize the serial port, so we can use rt_kprintf right away */ #ifdef RT_USING_SERIALstm32_hw_usart_init(); #endif#ifdef RT_USING_CONSOLErt_console_set_device(RT_CONSOLE_DEVICE_NAME); #endif //...略 } int stm32_hw_usart_init(void) {struct stm32_uart* uarts[] ={ #ifdef BSP_USING_UART1&uart1, #endif#ifdef BSP_USING_UART2&uart2, #endif#ifdef BSP_USING_UART3&uart3, #endif#ifdef BSP_USING_LPUART1&lpuart1, #endif};int i;for (i = 0; i < sizeof(uarts) / sizeof(uarts[0]); i++){struct stm32_uart *uart = uarts[i];rt_err_t result;/* register UART device */result = rt_hw_serial_register(&uart->serial,uart->uart_name, #ifdef BSP_UART_USING_DMA_RXRT_DEVICE_FLAG_DMA_RX | #endifRT_DEVICE_FLAG_RDWR | RT_DEVICE_FLAG_INT_RX,uart);RT_ASSERT(result == RT_EOK);(void)result;}return 0; }

stm32_hw_usart_init()這個函數注冊了使用到的串口設備到設備框架層,注冊完就可以直接使用內核通用接口函數操作設備了,比如開啟設備,讀設備,寫設備,通過BSP_USING_UART1這類宏控來控制將要使用哪幾個串口。注意,這里只是注冊,并沒完成真正的底層硬件初始化。真正的完成底層硬件初始化在rt_console_set_device(RT_CONSOLE_DEVICE_NAME);這里面。即調用了打開設備才是完成了串口硬件初始化串口才能正常使用。

/* UART1 device driver structure */ static struct stm32_uart uart1 = {{USART1}, // UART_HandleTypeDef UartHandle;USART1_IRQn, // IRQn_Type irq;#ifdef BSP_UART_USING_DMA_RXUSART1_RX_DMA_IRQN, // IRQn_Type dma_irq;0, // rt_size_t last_index;// DMA_HandleTypeDef hdma_rx;{USART1_RX_DMA_CHANNEL, {USART1_RX_DMA_REUQEST}}, #endif"uart1", // char * uart_name;// struct rt_serial_device serial;{{0}, &stm32_uart_ops, RT_SERIAL_CONFIG_DEFAULT} };

stm32_uart類型如下:

/* STM32 uart driver */ struct stm32_uart {UART_HandleTypeDef UartHandle;IRQn_Type irq;#ifdef BSP_UART_USING_DMA_RXIRQn_Type dma_irq;rt_size_t last_index;DMA_HandleTypeDef hdma_rx; #endifchar * uart_name;struct rt_serial_device serial; };

struct rt_serial_device 類型如下:

struct rt_serial_device {struct rt_device parent;const struct rt_uart_ops *ops;struct serial_configure config;void *serial_rx;void *serial_tx; }; typedef struct rt_serial_device rt_serial_t;

&stm32_uart_ops 對應 const struct rt_uart_ops *ops;
RT_SERIAL_CONFIG_DEFAULT 對應 struct serial_configure config;

stm32_uart_ops這個結構體實現接口層和底層的連接。
RT_SERIAL_CONFIG_DEFAULT 這個是串口默認配置。

/* Default config for serial_configure structure */ #define RT_SERIAL_CONFIG_DEFAULT \ { \BAUD_RATE_115200, /* 115200 bits/s */ \DATA_BITS_8, /* 8 databits */ \STOP_BITS_1, /* 1 stopbit */ \PARITY_NONE, /* No parity */ \BIT_ORDER_LSB, /* LSB first sent */ \NRZ_NORMAL, /* Normal mode */ \RT_SERIAL_RB_BUFSZ, /* Buffer size */ \0 \ } //一一對應關系如下 struct serial_configure {rt_uint32_t baud_rate; /* 波特率 */rt_uint32_t data_bits :4; /* 數據位 */rt_uint32_t stop_bits :2; /* 停止位 */rt_uint32_t parity :2; /* 奇偶校驗位 */rt_uint32_t bit_order :1; /* 高位在前或者低位在前 */rt_uint32_t invert :1; /* 模式 */rt_uint32_t bufsz :16; /* 接收數據緩沖區大小 */rt_uint32_t reserved :6; /* 保留位 */ };

再看stm32_uart_ops

static const struct rt_uart_ops stm32_uart_ops = {stm32_configure,stm32_control,stm32_putc,stm32_getc, };

這里的stm32_configure函數就實現了STM32串口的底層初始化流程,包含HAL_UART_Init函數調用。
stm32_control函數是開啟和清楚接收中斷的,以及串口DMA配置。
限于篇幅這幾個函數不放在這里了。

void USART1_IRQHandler(void) {/* enter interrupt */rt_interrupt_enter();uart_isr(&uart1.serial);/* leave interrupt */rt_interrupt_leave(); }void USART1_RX_DMA_IRQHandler(void) {/* enter interrupt */rt_interrupt_enter();HAL_DMA_IRQHandler(uart1.UartHandle.hdmarx);/* leave interrupt */rt_interrupt_leave(); }

串口中斷和串口接收DMA中斷也在drv_usart.c文件里
uart_isr(&uart1.serial);主要是清除中斷標志位

用過HAL庫的都知道,外設的GPIO初始化,外設時鐘使能,NVIC配置 都在HAL_UART_MspInit函數中完成,HAL_UART_MspInit函數也在drv_usart.c文件里

void HAL_UART_MspInit(UART_HandleTypeDef *huart)

同時將由于不同的GPIO可能導致的不同的端口配置和復用通道,DMA通道都用宏封裝

#ifdef BSP_USING_UART1#define USART1_RX_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE()#define USART1_TX_GPIO_CLK_ENABLE() __HAL_RCC_GPIOA_CLK_ENABLE()/* Definition for USART1 Pins */#define USART1_TX_PIN GPIO_PIN_9#define USART1_TX_GPIO_PORT GPIOA#define USART1_TX_AF GPIO_AF7_USART1#define USART1_RX_PIN GPIO_PIN_10#define USART1_RX_GPIO_PORT GPIOA#define USART1_RX_AF GPIO_AF7_USART1#define USART1_RX_DMA_CHANNEL DMA1_Channel5#define USART1_RX_DMA_REUQEST DMA_REQUEST_2#define USART1_RX_DMA_IRQN DMA1_Channel5_IRQn#define USART1_RX_DMA_IRQHandler DMA1_Channel5_IRQHandler #endif

上面的串口1使用的是默認配置RT_SERIAL_CONFIG_DEFAULT,
如果要開其他串口或是要改配置比如改波特率,可以仿照RT_SERIAL_CONFIG_DEFAULT這個宏再封裝一個出來改對應的項,賦值到對應串口的設備結構體中去,如static struct stm32_uart uart1

上面提到,實際打開串口完成硬件初始化配置是在rt_console_set_device函數中

#ifdef RT_USING_CONSOLErt_console_set_device(RT_CONSOLE_DEVICE_NAME); #endifrt_device_t rt_console_set_device(const char *name) {rt_device_t new, old;/* save old device */old = _console_device;/* find new console device */new = rt_device_find(name);if (new != RT_NULL){if (_console_device != RT_NULL){/* close old console device */rt_device_close(_console_device);}/* set new console device */rt_device_open(new, RT_DEVICE_OFLAG_RDWR | RT_DEVICE_FLAG_STREAM);_console_device = new;}return old; }

#define RT_CONSOLE_DEVICE_NAME “uart1”
這個宏定義在rtconfig.h中,定義了使用哪個串口作為控制臺的端口。這里使用的是串口1,可以根據需要進行修改

在rt_console_set_device函數中,完成了打開串口設備的動作 rt_device_open(new, RT_DEVICE_OFLAG_RDWR | RT_DEVICE_FLAG_STREAM);
rt_device_open函數中調用了device_init和device_open,
#define device_init (dev->init)
#define device_open (dev->open)
實際上是 (dev->init)和(dev->open)

在rt_hw_serial_register函數中device->init = rt_serial_init;
在rt_serial_init函數中看到了serial->ops->configure(serial, &serial->config); 前面說了,configure這個函數指針指向了stm32_configure,這個里面調用了HAL_UART_Init函數完成串口初始化配置。

rt_err_t rt_hw_serial_register(struct rt_serial_device *serial,const char *name,rt_uint32_t flag,void *data) {rt_err_t ret;struct rt_device *device;RT_ASSERT(serial != RT_NULL);device = &(serial->parent);device->type = RT_Device_Class_Char;device->rx_indicate = RT_NULL;device->tx_complete = RT_NULL;#ifdef RT_USING_DEVICE_OPSdevice->ops = &serial_ops; #elsedevice->init = rt_serial_init;device->open = rt_serial_open;device->close = rt_serial_close;device->read = rt_serial_read;device->write = rt_serial_write;device->control = rt_serial_control; #endifdevice->user_data = data;/* register a character device */ret = rt_device_register(device, name, flag);#if defined(RT_USING_POSIX)/* set fops */device->fops = &_serial_fops; #endifreturn ret; } static rt_err_t rt_serial_init(struct rt_device *dev) {rt_err_t result = RT_EOK;struct rt_serial_device *serial;RT_ASSERT(dev != RT_NULL);serial = (struct rt_serial_device *)dev;/* initialize rx/tx */serial->serial_rx = RT_NULL;serial->serial_tx = RT_NULL;/* apply configuration */if (serial->ops->configure)result = serial->ops->configure(serial, &serial->config);return result; }

本文通篇講了用于控制臺的串口1如何注冊到系統中并完成了初始化,其余串口也是同理。
主要關注兩個問題,1是如何修改某個串口的波特率,2是如果增加串口。
如果底層驅動做好的情況下,實際上直接改宏控就能完成增加串口,env工具可以快速完成配置,也可以手動改rtconfig.h文件。

也可以先全部默認的參數,然后在任務中重新配置,比如:
如下步驟可以實現對應的配置,比如波特率115200改成9600

#define SAMPLE_UART_NAME "uart2" /* 串口設備名稱 */ static rt_device_t serial; /* 串口設備句柄 */ struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT; /* 初始化配置參數 *//* step1:查找串口設備 */ serial = rt_device_find(SAMPLE_UART_NAME);/* step2:修改串口配置參數 */ config.baud_rate = BAUD_RATE_9600; //修改波特率為 9600 config.data_bits = DATA_BITS_8; //數據位 8 config.stop_bits = STOP_BITS_1; //停止位 1 config.bufsz = 128; //修改緩沖區 buff size 為 128 config.parity = PARITY_NONE; //無奇偶校驗位/* step3:控制串口設備。通過控制接口傳入命令控制字,與控制參數 */ rt_device_control(serial, RT_DEVICE_CTRL_CONFIG, &config);/* step4:打開串口設備。以中斷接收及輪詢發送模式打開串口設備 */ rt_device_open(serial, RT_DEVICE_FLAG_INT_RX);

RT-Thread 官方串口配置文檔

總結

以上是生活随笔為你收集整理的RT-Thread uart串口设备驱动代码结构剖析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

婷久久 | 亚洲精品在线观看中文字幕 | 国产亚洲字幕 | 久久精品中文 | 99久久综合狠狠综合久久 | 国产精品久久久久久久久久不蜜月 | 99久久99精品 | 超碰人人草人人 | 中文字幕亚洲欧美日韩2019 | 一区二区亚洲精品 | 亚洲精品国精品久久99热 | 久久久久免费网站 | 午夜精品久久久久久久爽 | 免费福利片2019潦草影视午夜 | 久久久资源 | 麻豆精品在线 | 久久午夜精品影院一区 | 天天综合天天做 | 中文字幕一区二区三区在线视频 | 国产成人精品亚洲精品 | 丁香综合 | 九九久久久 | 在线欧美中文字幕 | 999久久a精品合区久久久 | 日日爽夜夜操 | 亚洲成人黄色在线观看 | 在线亚洲播放 | 91精品网站在线观看 | 国产精品久久久久久吹潮天美传媒 | 成年一级片 | 婷婷久久亚洲 | 久久天堂亚洲 | 91免费版成人 | 在线观看亚洲免费视频 | 亚洲精品天天 | 激情五月视频 | 日韩av视屏 | www.干| 日本三级大片 | 国产精品美女在线观看 | 欧美一级日韩三级 | 亚洲精品免费在线视频 | 在线国产日韩 | 在线免费av网| 久久亚洲综合色 | 国产一级片免费播放 | 亚洲闷骚少妇在线观看网站 | 不卡的av在线播放 | 免费在线观看av电影 | 香蕉网站在线观看 | 808电影 | 亚洲免费在线视频 | 婷婷在线五月 | 久久免费高清视频 | 精品国产一区二区三区噜噜噜 | 深夜福利视频在线观看 | 久久久精品国产免费观看一区二区 | 婷婷国产一区二区三区 | 欧美另类v | 国产成人一区二区三区久久精品 | 国产五月| 久久成人精品电影 | 日韩成人欧美 | 国产色在线,com | 久久免费片 | 涩涩在线| 久久情爱 | 久草在线资源免费 | 操操综合网 | 国产美女精品人人做人人爽 | 黄网站大全 | 欧产日产国产69 | 伊人亚洲综合网 | 亚洲欧美日本一区二区三区 | 国产精品 中文在线 | 五月婷婷综合在线 | 久久xx视频 | 日韩久久精品一区二区 | 国产精品久久久久久一二三四五 | 亚洲aⅴ在线 | 日韩在线播放欧美字幕 | 五月天婷婷在线播放 | 一区二区三区免费在线观看视频 | 亚洲欧洲国产视频 | 亚洲精品小视频 | 99久久激情 | 久久综合九色综合欧美就去吻 | 婷婷亚洲最大 | 天堂av在线| 欧美视频日韩 | 久久人人97超碰国产公开结果 | 国产精品久久久久影院 | 精品国产免费观看 | 久久免费观看视频 | 91精品系列 | 久久经典国产 | 国产精品第一页在线 | 婷婷视频| 丁香激情五月 | 手机在线日韩视频 | av 一区二区三区四区 | 激情五月婷婷综合 | 狠狠综合久久av | 一区二区精品视频 | 狠狠色丁香婷综合久久 | 久色网| 久久国产精品一区二区三区四区 | 国产精品麻豆视频 | 2019中文最近的2019中文在线 | 亚洲综合视频在线 | 免费在线一区二区三区 | 午夜精品视频免费在线观看 | 成人午夜av电影 | 国内一区二区视频 | 国产成人精品久久久 | 91精品国产电影 | 狠狠色噜噜狠狠 | 亚洲人在线视频 | 国产中文字幕免费 | 亚洲国产精品99久久久久久久久 | 私人av | 亚洲精品男人天堂 | 久草精品在线观看 | 成人毛片久久 | 国产亚洲高清视频 | 久久久久久久久久久久久久免费看 | 在线免费性生活片 | 亚洲一区二区视频在线播放 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 91漂亮少妇露脸在线播放 | 色综合久久久久久中文网 | 在线看黄色的网站 | 久久成人国产 | 日韩中文字幕在线看 | 天天综合区 | 久久国产美女视频 | 美女网站色免费 | 亚洲视频资源在线 | 黄色小说网站在线 | 日韩在线观看网站 | 久久艹在线 | 麻花豆传媒mv在线观看网站 | 超碰人人在线 | 欧美成人性网 | 国产精品va在线观看入 | 在线成人看片 | 高清日韩一区二区 | 成全在线视频免费观看 | 国内精品久久久久久久影视简单 | 欧美另类巨大 | 国产精品嫩草影视久久久 | 四虎在线观看网址 | 欧美日韩精品国产 | 国产精品久久艹 | 又黄又刺激又爽的视频 | 在线观看视频你懂得 | 欧美日韩在线第一页 | 免费在线播放黄色 | 日韩美女免费线视频 | 亚洲精品视频在线播放 | 日韩欧美在线视频一区二区 | 国产午夜精品一区二区三区欧美 | 国产成人av免费在线观看 | 日b视频国产| 久草视频视频在线播放 | 天天草网站 | 色婷婷一区| 五月天激情视频在线观看 | 色综合久 | 亚洲视频分类 | 亚洲视频一区二区三区在线观看 | 91天天视频 | 五月婷婷丁香网 | 黄污视频网站 | 国产男女无遮挡猛进猛出在线观看 | 久久久精品在线观看 | 成人黄色小说在线观看 | 国产亚洲精品无 | 波多野结衣视频一区二区 | 国产精品免费麻豆入口 | 国产亚洲精品中文字幕 | 97在线观视频免费观看 | 久久综合亚洲鲁鲁五月久久 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 五月婷亚洲 | 天堂av免费 | 国产中年夫妇高潮精品视频 | 黄a在线观看 | 久久久久久电影 | 久精品视频| 激情久久影院 | 欧美一区成人 | 久久精品视频日本 | av黄色在线| 国产精品99久久免费观看 | 一区二区三区免费在线 | 国产成人综合在线观看 | 国产视频二区三区 | 国产高清视频免费在线观看 | 九九九在线观看 | 成人av播放 | 国产精品九色 | 日韩毛片一区 | 六月婷婷久香在线视频 | 色综合久久88色综合天天人守婷 | 免费视频久久久久 | 亚洲一区二区高潮无套美女 | 91精品国自产在线 | 日韩在线免费播放 | 久久高清毛片 | 国产精品久久久久久久午夜 | 一区二区影院 | 中文字幕 婷婷 | 日韩av一区二区三区 | 成人一级影视 | www国产精品com | 久久精品91视频 | 看片的网址 | 在线黄色毛片 | 在线免费性生活片 | 日日干,天天干 | 人人看人人做人人澡 | 国产一区网 | 久免费| a在线播放| 国产精品麻豆果冻传媒在线播放 | 国产高清在线a视频大全 | 黄色成人影视 | 狠狠色噜噜狠狠狠合久 | 国产麻豆精品95视频 | 色99色| 免费黄色网止 | 九色琪琪久久综合网天天 | 国产一区麻豆 | 久久中文视频 | 正在播放国产一区二区 | 日韩欧美99 | 久久久香蕉视频 | 在线观看第一页 | 91中文字幕在线播放 | 亚洲欧美视频一区二区三区 | 日韩精品高清视频 | 亚洲一区二区91 | 免费看特级毛片 | 午夜久久久久久久久 | 成人午夜免费剧场 | 国产精品va最新国产精品视频 | 久久免费国产精品 | 91观看视频 | 天天操天天干天天操天天干 | 99久久999久久久精玫瑰 | 人人干人人搞 | 91网站观看 | 色悠悠久久综合 | 欧美亚洲成人xxx | 成人久久毛片 | 96超碰在线 | 在线观看国产日韩 | 97视频在线播放 | 免费激情在线电影 | 中文国产成人精品久久一 | 91精品网站在线观看 | 亚洲一区二区三区miaa149 | 色婷av| 日韩av看片| 欧美欧美 | 国产高潮久久 | 天堂视频一区 | 免费视频在线观看网站 | 麻豆一精品传二传媒短视频 | 手机av电影在线 | 欧洲色综合 | 中文在线免费观看 | 97超碰人人澡| 免费欧美| 91av在线电影| 狠狠干.com | 日本在线观看一区二区三区 | 日韩精品一区二区三区免费观看 | 色香天天 | 中文字幕一区二区三区在线观看 | 国产一区二三区好的 | 日本中文字幕电影在线免费观看 | 久久九九久久九九 | 久久欧美精品 | 在线精品播放 | 精品欧美一区二区精品久久 | 久久免费影院 | 色综合久久88色综合天天6 | 人人爱人人做人人爽 | 婷婷视频在线观看 | 中文字幕成人在线观看 | 97成人在线视频 | 精品你懂的 | 欧美精品一级视频 | 四虎国产精品免费 | 久草视频免费 | 国产一级在线免费观看 | 中文字幕在线乱 | 瑞典xxxx性hd极品 | 久久不射网站 | 国产成人在线综合 | 99精品在线视频播放 | 日韩欧美有码在线 | 日韩电影中文,亚洲精品乱码 | 色综合亚洲精品激情狠狠 | 人人澡超碰碰97碰碰碰软件 | 99r在线播放 | 天天色综合久久 | 日韩中文字幕网站 | 中文字幕色婷婷在线视频 | 亚洲 欧洲 国产 精品 | 特级黄色一级 | 伊人中文在线 | 久久久久国产精品厨房 | 又爽又黄在线观看 | 人人爽人人 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 4438全国亚洲精品在线观看视频 | 久久亚洲专区 | 亚洲国产97在线精品一区 | 免费高清看电视网站 | 国产精品午夜在线 | 亚洲精品国产精品国自产 | 91精品国产高清自在线观看 | 成年人在线观看视频免费 | 精品视频中文字幕 | 日韩在线视频一区二区三区 | 久久一级片 | 日韩在线免费视频 | 激情久久小说 | www.日本色| 久久九九久久 | av久久久 | 欧美日本在线视频 | 久久成人高清 | 精品久久一级片 | 激情欧美一区二区三区 | 日韩综合在线观看 | 日本成址在线观看 | 日日夜夜操操操操 | 亚洲午夜不卡 | 在线播放国产一区二区三区 | 欧美综合久久久 | 在线免费观看涩涩 | 国产成人久 | 成人黄色av网站 | 开心色停停 | 国产又粗又硬又长又爽的视频 | 在线观看视频一区二区三区 | 97偷拍视频 | 特级毛片在线观看 | 在线v| 91在线porny国产在线看 | 五月激情六月丁香 | 欧美日韩一区二区三区不卡 | 欧美精品乱码久久久久久按摩 | 亚洲黄色一级大片 | 日日麻批40分钟视频免费观看 | 91精品国产92久久久久 | 亚洲丝袜一区 | 色香网| 丁香婷婷综合五月 | 日韩一区二区免费播放 | av中文字幕在线观看网站 | 国产破处视频在线播放 | 国产日本三级 | 91精品色 | 欧美极度另类 | 色偷偷88欧美精品久久久 | 成人免费视频网址 | 国产亚洲视频系列 | 国产精品扒开做爽爽的视频 | 精品视频在线免费观看 | 久久线视频 | 欧美性大战久久久久 | 免费三级在线 | 国产精品网在线观看 | 免费成人av在线看 | 国产精品永久久久久久久久久 | 国产精品久久久久久爽爽爽 | 国产91精品一区二区麻豆亚洲 | 中文字幕色网站 | 五月婷婷黄色网 | 国产精品专区在线观看 | 午夜久久久精品 | 亚洲人毛片 | 久久999久久 | 中文字幕区 | 69国产盗摄一区二区三区五区 | 久日精品 | 国产福利av在线 | 在线观看岛国av | 婷婷综合久久 | 成人免费观看视频大全 | 亚洲九九爱 | 久久精品国产免费看久久精品 | 手机av在线免费观看 | 国产精品自产拍在线观看网站 | 国产成人一区二区三区电影 | 九九视频精品在线 | 中文字幕在线看视频国产中文版 | 国产日韩欧美在线观看 | 又大又硬又黄又爽视频在线观看 | 国产91勾搭技师精品 | 91精品国产一区 | www·22com天天操| 美国av片在线观看 | 国产精品九九视频 | 国产视频久久久久 | 国产精品视频不卡 | 五月婷久久 | 亚洲国产精品成人va在线观看 | 中文在线字幕观看电影 | 精品国产一区二区三区在线观看 | 国产精品岛国久久久久久久久红粉 | 久久艹在线 | 日日夜夜综合网 | 国产亚洲精品久久19p | 久久精品国产久精国产 | 国产精品18久久久久久久久 | 免费91麻豆精品国产自产在线观看 | www.色在线| 最新的av网站 | 天天爽人人爽 | 久久久久久黄 | 欧美日韩xxx| 二区在线播放 | 伊人国产在线播放 | 久草视频在线播放 | 在线视频欧美日韩 | 免费av网站在线 | 精品视频在线观看 | 99欧美精品 | 国产一区免费视频 | 在线免费观看黄色 | 一区二区三区四区五区六区 | 天天色天天搞 | 字幕网资源站中文字幕 | 在线免费黄网站 | 久久综合婷婷综合 | 99热手机在线观看 | 中文字幕美女免费在线 | 久久久九九| 国产一区二区不卡视频 | 久久国产精品一区二区 | 午夜私人影院 | 色噜噜噜| 成人久久久久久久久久 | 国产少妇在线观看 | 日本黄色免费在线 | 日本精品一二区 | 在线a人片免费观看视频 | 久草在线视频首页 | 麻豆 free xxxx movies hd | 午夜精品久久久久久久99热影院 | 国产电影黄色av | 国产香蕉久久 | 美女久久 | 国产福利a | 久久久久久高潮国产精品视 | 久久国内免费视频 | 免费高清在线观看成人 | 天天操天天干天天 | 久久精品视频2 | 欧美日韩在线视频免费 | 探花视频在线观看免费 | 国产精品网在线观看 | 人人澡人人添人人爽一区二区 | 久久这里| 国产偷在线 | 五月天中文字幕mv在线 | 天天摸天天操天天爽 | 亚洲精品网站在线 | 国产精品毛片久久久久久久久久99999999 | 麻豆视频免费在线 | 日本久久久久久久久久久 | 高清国产午夜精品久久久久久 | 一级免费黄视频 | 国产精品岛国久久久久久久久红粉 | 国产一级电影网 | 久久免费a | 久久男人中文字幕资源站 | 九九热免费视频在线观看 | 久久精品4| 亚洲视频中文 | 一二三区视频在线 | 激情av一区二区 | 日韩成人精品一区二区三区 | 美女视频久久黄 | 国产91亚洲 | 狠狠色狠狠色合久久伊人 | 国产情侣一区 | 808电影| 91在线免费视频 | 亚洲 欧美 综合 在线 精品 | 午夜精品久久久久久久99热影院 | 国产精品一区在线观看你懂的 | 国产尤物视频在线 | 一区二区不卡视频在线观看 | 久久久久久久久久久久电影 | 国产精品久久久久久爽爽爽 | 欧美日韩亚洲第一 | 中文字幕日本在线 | 人人澡人人模 | 天天做天天爱天天综合网 | 欧美极品xxxx| 成人三级网站在线观看 | jizz999| 色综合婷婷 | 国内精品久久久久久久影视麻豆 | 国产精品久久电影观看 | 国产精品999久久久 久产久精国产品 | 91精品系列 | 69国产成人综合久久精品欧美 | 国产在线观看午夜 | 最新av电影网址 | 久久国产网站 | 中文字幕在线有码 | 国产婷婷精品 | 免费看的黄色录像 | 99re在线视频观看 | 91av免费在线观看 | 国产婷婷视频在线 | 午夜久久久久久久久久久 | 免费在线激情视频 | 天堂av网址 | 视频在线观看亚洲 | 2023年中文无字幕文字 | 91在线看视频 | 九九在线视频免费观看 | 激情网站网址 | 国产精品色婷婷视频 | 97免费公开视频 | 欧美日韩一区二区久久 | 欧美激情视频一区 | 国色天香av| 亚洲视频电影在线 | 一级a毛片高清视频 | 国产精品2区 | 日韩精选在线观看 | 精品国产自在精品国产精野外直播 | 久久艹在线 | 亚洲一区精品人人爽人人躁 | 亚洲免费在线观看视频 | 摸bbb搡bbb搡bbbb | 91污污 | 日本久久久久久久久久 | 精品av网站 | 欧美性色综合网站 | 中中文字幕av在线 | 很黄很色很污的网站 | 日韩电影精品一区 | 男女视频久久久 | 欧美精品亚洲精品日韩精品 | a√资源在线 | 99国内精品 | 又长又大又黑又粗欧美 | 国产视频久久 | 国产亚洲精品综合一区91 | 亚洲午夜久久久久 | 亚洲激情在线视频 | 夜夜视频欧洲 | 在线看一级片 | 超碰97免费在线 | 欧美激情xxxx性bbbb | 欧美日本国产在线观看 | 中国一级片在线 | 天天射天天爱天天干 | 天天拍天天草 | 日韩黄色免费电影 | 亚洲精品一区二区18漫画 | 成片免费观看视频大全 | 精品国模一区二区三区 | 中文字幕一区2区3区 | 四虎5151久久欧美毛片 | 久久久精品小视频 | 一区二区国产精品 | 日韩欧美在线观看一区 | 天天草夜夜 | 日韩av免费在线电影 | 成人黄色资源 | 99资源网| 黄色av电影一级片 | 香蕉影院在线观看 | 欧美激情精品久久久久久 | 美女一二三区 | 国产高清不卡av | 天堂av免费| 亚洲精品456在线播放乱码 | 亚洲小视频在线观看 | 9ⅰ精品久久久久久久久中文字幕 | 00av视频 | av电影在线播放 | 亚洲综合网 | 欧美一级在线观看视频 | 天天看天天干天天操 | 免费人成在线观看网站 | 看黄色.com| 一区二区精品久久 | 日韩免费中文 | 亚洲日韩中文字幕在线播放 | 黄色三级免费网址 | 亚洲日本一区二区在线 | 91精品一区在线观看 | 国产精品久久久久久高潮 | 日日婷婷夜日日天干 | 天天插视频 | 久久少妇| 久久黄色免费 | 亚洲a网 | 亚洲五月综合 | 日本中出在线观看 | 美女黄久久 | 久久在线视频精品 | 久久理论电影网 | 中文字幕在线日 | 欧美成人精品欧美一级乱黄 | 337p西西人体大胆瓣开下部 | 亚洲 av网站| av在线网站免费观看 | 免费看一及片 | 狠狠色狠狠色综合日日92 | 91在线看免费 | av电影 一区二区 | 天天干天天摸天天操 | 午夜av剧场 | 国产成人免费观看久久久 | 男女日麻批 | 麻豆国产精品视频 | 久久五月天综合 | 中文在线a∨在线 | 国产在线精品观看 | 狠狠色综合网站久久久久久久 | 久在线观看视频 | 国产一级视频在线观看 | 国产一区国产二区在线观看 | 狠狠色噜噜狠狠狠狠2022 | 久青草视频在线观看 | 亚洲3级 | 超碰在线网 | 天天操月月操 | 日操操| 免费福利在线播放 | 欧美激情第一区 | 五月天久久综合网 | 亚洲成av人影院 | 久久色视频| av不卡免费看 | 在线视频观看你懂的 | 久久久在线观看 | 99精品视频中文字幕 | 欧美日韩免费网站 | 六月久久婷婷 | 亚洲欧美精品一区 | 樱空桃av| 国产午夜三级一区二区三桃花影视 | 国产一区 在线播放 | 欧美日韩高清在线观看 | 天天操天天操天天操天天操 | 国产一区二区高清 | 久久九九影视 | 欧美日韩不卡在线 | 国产一区二区免费在线观看 | 国产在线观看免费观看 | 91精品国产99久久久久久红楼 | 国产四虎影院 | 日韩精品电影在线播放 | 亚洲精品videossex少妇 | 狠狠色丁香婷婷综合久久片 | 美女久久久久久久久久久 | 黄色一级片视频 | 国产精品美女视频 | 黄色av网站在线观看免费 | 波多野结衣综合网 | 日韩av成人在线观看 | 天天插一插 | 国产成人久久久久 | 99久久久久久久 | 国产精品一区二区久久精品爱微奶 | 国产精品视频线看 | 欧美日韩国产mv | 国产成人一区在线 | 免费能看的黄色片 | 精品国产精品久久一区免费式 | 国产原创在线 | 亚洲国产精品久久久 | 在线精品国产 | 99操视频| 欧美日韩视频在线一区 | www欧美色| 亚洲另类久久 | 国产91影院 | 久久久99精品免费观看乱色 | 六月色丁香 | 在线观看视频你懂的 | 国产不卡在线 | 日本精品一区二区在线观看 | 中国一区二区视频 | 久久蜜桃av | 天天操天天干天天摸 | 天天操天天射天天 | 日韩免费在线观看视频 | 亚洲三级国产 | 91精品视频在线观看免费 | 97在线视频免费播放 | 国产精品欧美久久久久无广告 | 欧美一区在线观看视频 | 国产香蕉久久 | 在线免费观看麻豆视频 | 久久国产精品一国产精品 | 在线精品国产 | 天无日天天操天天干 | 97偷拍视频 | 国产一区二区三区高清播放 | 欧美日韩免费在线观看视频 | 婷婷九月丁香 | 一区二三国产 | 久一久久| www国产亚洲精品久久网站 | 日韩在线观看一区 | 中文字幕在线资源 | 日日干日日操 | 蜜臀久久99精品久久久久久网站 | 国产黄色免费 | 久久免费看毛片 | 四虎永久免费在线观看 | 国产在线播放一区 | 在线观看中文字幕av | 日韩av一区二区三区 | 精品久久一区二区 | 免费视频网 | 婷婷视频| 亚洲乱码国产乱码精品天美传媒 | 精品一区二区三区久久 | 成人三级网站在线观看 | 三级黄色大片在线观看 | 欧美日韩1区 | 四虎永久免费 | 特级西西www44高清大胆图片 | 国产中文字幕视频在线观看 | 成人激情开心网 | 九九久久在线看 | 日韩av免费一区二区 | 天天操天天干天天干 | 久久99爱视频 | 精品久久久久久久久久久久久久久久 | 中文字幕在线色 | 黄a在线| 在线日韩亚洲 | 99久久999久久久精玫瑰 | 亚洲精品国产综合久久 | 亚洲黄色在线观看 | 99视频偷窥在线精品国自产拍 | 久久av观看 | 欧美 亚洲 另类 激情 另类 | 激情欧美一区二区三区免费看 | 久久婷婷色综合 | 国产日韩视频在线观看 | 视频91在线 | 伊人伊成久久人综合网站 | 在线一区电影 | 欧美日高清视频 | 99久久精品国产一区二区成人 | 夜夜夜夜夜夜操 | 五月开心六月伊人色婷婷 | www.久草.com| 91女神的呻吟细腰翘臀美女 | 美女视频一区二区 | 亚洲日韩中文字幕 | 国产精品高清一区二区三区 | 亚洲区色 | 99久久日韩精品免费热麻豆美女 | 国产成人久久77777精品 | 亚洲日本精品视频 | 久草网站 | 国产精品一区二区久久精品爱微奶 | 国语精品久久 | 免费观看第二部31集 | 国产无区一区二区三麻豆 | 玖玖玖在线| 国产久草在线 | 亚洲成av人片在线观看香蕉 | 欧美精品亚洲二区 | 国产精品二区三区 | 超碰在线亚洲 | 国产精品青草综合久久久久99 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 久草观看 | 成年人在线观看 | 偷拍区另类综合在线 | 亚洲电影影音先锋 | 肉色欧美久久久久久久免费看 | 国产福利小视频在线 | 亚洲人成网站精品片在线观看 | 国产精品免费久久久久影院仙踪林 | 中文字幕在线观看日本 | 国产福利av在线 | 天天插天天干天天操 | 日韩av手机在线观看 | 色婷婷导航 | 在线欧美小视频 | 久久99精品热在线观看 | 麻豆传媒一区二区 | 二区三区毛片 | 午夜久操 | 国产黄色av网站 | 亚洲一区二区三区在线看 | 久久99国产视频 | 日韩av影片在线观看 | 天天操天天摸天天爽 | 色婷婷五 | 国产99免费视频 | 久久久久久毛片精品免费不卡 | 国产精品综合久久久久久 | 黄色福利视频网站 | 日日夜夜天天干 | 少妇bbb搡bbbb搡bbbb′ | 色婷婷在线视频 | 中文字幕超清在线免费 | 一级免费黄视频 | 天天色综合三 | 日韩在线观看免费 | 91色偷偷 | 久久手机免费观看 | 91成人在线观看喷潮 | 99精品国产99久久久久久97 | 四虎国产精品成人免费影视 | 中文字幕一区二区三区四区视频 | 日韩av一区二区三区在线观看 | 超碰97人人干 | 一区二区中文字幕在线观看 | 久久精品1区 | 狠狠干综合 | 日韩av不卡在线观看 | 一区国产精品 | 一级黄色网址 | 久久露脸国产精品 | 国产免费观看久久 | 国色天香永久免费 | 91免费国产在线观看 | 综合网av| 亚洲视频99 | 日韩中文在线观看 | 亚洲国产福利视频 | 日韩在线观看第一页 | 欧美一级在线观看视频 | 日韩中文字幕视频在线观看 | 亚洲精选99 | 91亚色视频 | 久久人人爽人人爽人人 | 免费在线精品视频 | 欧美成人xxxxxxxx| 亚洲精品国产精品国自产观看 | 国产精品一区二区久久精品 | 日韩毛片在线一区二区毛片 | 久草在线在线视频 | 国产精品综合久久久 | 亚洲精品三级 | 玖玖在线观看视频 | 亚洲一区二区麻豆 | 肉色欧美久久久久久久免费看 | 久久久久久综合网天天 | 丁香婷婷在线观看 | 制服丝袜亚洲 | 97国产精品视频 | 探花系列在线 | 天天操天天干天天 | 玖玖国产精品视频 | 久久久久久久久综合 | 97电院网手机版 | 欧美精品一区二区三区一线天视频 | 九九交易行官网 | 亚洲黄色区 | 免费看黄在线看 | 日韩二区三区在线观看 | 黄色免费网站 | 欧洲不卡av | 日韩综合在线观看 | 婷婷久月 | www.天天干 | 亚洲精品中文字幕视频 | 国产欧美精品在线观看 | 久久精品九色 | 日日干干 | 一区二区三区高清 | 521色香蕉网站在线观看 | 色婷婷国产在线 | 亚洲精品字幕在线观看 | 久久久久久久久久久网 | 国产精品久久久亚洲 | 玖玖色在线观看 | 深爱综合网 | 婷久久 | 中文字幕乱码电影 | 九九热在线视频 | 欧美日韩大片在线观看 | 国产美女精品人人做人人爽 | 在线看毛片网站 | 免费视频资源 | 久久午夜剧场 | 91自拍视频在线 | 国产精品91一区 | 成年人电影免费看 | 91在线产啪 | 中文字幕乱码一区二区 | 五月丁色 | 中文字幕一区二区三区视频 | 国产精品女同一区二区三区久久夜 | 天堂在线视频免费观看 | 在线观看色网站 | 日韩在线不卡视频 | 免费三级黄色 | 九九热精品视频在线播放 | 国产在线精品福利 | 国产手机精品视频 | 丁香六月天婷婷 | 天天干天天干天天干天天干天天干天天干 | 日本高清中文字幕有码在线 | 在线观看av的网站 | 美女福利视频在线 | 日批视频在线播放 | 色吧av色av| 狠狠狠色丁香婷婷综合激情 | 在线小视频 | 精品国内自产拍在线观看视频 | 91夫妻视频 | 婷婷色九月 | 日韩精品一区二区三区中文字幕 | 黄色h在线观看 | 国产视频在线免费观看 | 夜夜躁日日躁狠狠久久av | 伊甸园永久入口www 99热 精品在线 | 天天干夜夜爱 | 成人va在线观看 | 国产精品毛片一区二区在线看 | 日本精品久久久一区二区三区 | 在线 高清 中文字幕 | 欧美色插 | 婷婷六月色 | 91香蕉视频黄 | 99re中文字幕 | 久草视频免费在线观看 | 最新av免费在线观看 | 国产第一福利 | 欧美在线视频a | 99久久激情 | 日精品 | 99久久久精品 | 奇米影音四色 | 中文字幕资源网在线观看 | av成人在线观看 | 一区 二区 精品 | 91xav| 91在线产啪| 成人午夜电影网站 | 九九热有精品 | 国产精品刺激对白麻豆99 | 久久久久久久久久伊人 | 精品在线视频一区 | 性色大片在线观看 | 中文字幕在线观看视频网站 | 日韩高清在线观看 | 五月激情姐姐 | 综合色影院| 在线视频久久 | 2022久久国产露脸精品国产 | 免费福利片2019潦草影视午夜 | www.色午夜| 天天操夜| 久久新 | 97视频在线播放 | 日韩美女免费线视频 | 中文字幕国产视频 | 日本不卡一区二区 | 91麻豆精品国产91久久久更新时间 | 成人av一区二区兰花在线播放 | 一本到视频在线观看 | 97超碰人人澡人人爱学生 | 久久99精品国产99久久 | 亚洲国产精品久久久久 | 欧美日本在线观看视频 | av中文字幕网址 | 午夜久久久久久久久久影院 | 99精品视频在线观看免费 | 日本精品久久久久影院 | 亚洲综合欧美精品电影 | 久久福利影视 | 精品国产aⅴ一区二区三区 在线直播av | 欧美男女爱爱视频 | 午夜色影院 | 人人搞人人爽 | 97热久久免费频精品99 | 在线观看的a站 | 久久久久二区 | 日日操操 | 亚洲欧洲美洲av | 久久久久久久影视 |