色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

樹莓派Pico上使用SSD1306 OLED屏幕

jf_zGNBEhbi ? 來源:趣無盡 ? 2023-11-21 14:17 ? 次閱讀

SSD1306 OLED 屏幕模塊配備 0.9 英寸迷你單色屏,128×32 分辨率,白光像素點。擁有極高的對比度,顯示清晰極易辨識。OLED 僅使用樹莓派I2C電源引腳,無需獨立供電,即插即用。

接線

屏幕模塊的 VCC 接樹莓派 Pico 的 3V3 引腳
屏幕模塊的 GND 接樹莓派 Pico 的 GND 引腳
屏幕模塊的 SDA 引腳接樹莓派 Pico 的 GP14 引腳
屏幕模塊的 SCL 引腳接樹莓派 Pico 的 SCL 引腳

代碼

這里使用開源的MicroPython ssd1306 庫。將下面的代碼保存在 Pico 上,命名為 ssd1306.py。

# MicroPython SSD1306 OLED driver, I2C and SPI interfaces
 
from micropython import const
import framebuf
 
# register definitions
SET_CONTRAST = const(0x81)
SET_ENTIRE_ON = const(0xA4)
SET_NORM_INV = const(0xA6)
SET_DISP = const(0xAE)
SET_MEM_ADDR = const(0x20)
SET_COL_ADDR = const(0x21)
SET_PAGE_ADDR = const(0x22)
SET_DISP_START_LINE = const(0x40)
SET_SEG_REMAP = const(0xA0)
SET_MUX_RATIO = const(0xA8)
SET_IREF_SELECT = const(0xAD)
SET_COM_OUT_DIR = const(0xC0)
SET_DISP_OFFSET = const(0xD3)
SET_COM_PIN_CFG = const(0xDA)
SET_DISP_CLK_DIV = const(0xD5)
SET_PRECHARGE = const(0xD9)
SET_VCOM_DESEL = const(0xDB)
SET_CHARGE_PUMP = const(0x8D)
 
# Subclassing FrameBuffer provides support for graphics primitives
# http://docs.micropython.org/en/latest/pyboard/library/framebuf.html
class SSD1306(framebuf.FrameBuffer):
    def __init__(self, width, height, external_vcc):
        self.width = width
        self.height = height
        self.external_vcc = external_vcc
        self.pages = self.height // 8
        self.buffer = bytearray(self.pages * self.width)
        super().__init__(self.buffer, self.width, self.height, framebuf.MONO_VLSB)
        self.init_display()
 
    def init_display(self):
        for cmd in (
            SET_DISP,  # display off
            # address setting
            SET_MEM_ADDR,
            0x00,  # horizontal
            # resolution and layout
            SET_DISP_START_LINE,  # start at line 0
            SET_SEG_REMAP | 0x01,  # column addr 127 mapped to SEG0
            SET_MUX_RATIO,
            self.height - 1,
            SET_COM_OUT_DIR | 0x08,  # scan from COM[N] to COM0
            SET_DISP_OFFSET,
            0x00,
            SET_COM_PIN_CFG,
            0x02 if self.width > 2 * self.height else 0x12,
            # timing and driving scheme
            SET_DISP_CLK_DIV,
            0x80,
            SET_PRECHARGE,
            0x22 if self.external_vcc else 0xF1,
            SET_VCOM_DESEL,
            0x30,  # 0.83*Vcc
            # display
            SET_CONTRAST,
            0xFF,  # maximum
            SET_ENTIRE_ON,  # output follows RAM contents
            SET_NORM_INV,  # not inverted
            SET_IREF_SELECT,
            0x30,  # enable internal IREF during display on
            # charge pump
            SET_CHARGE_PUMP,
            0x10 if self.external_vcc else 0x14,
            SET_DISP | 0x01,  # display on
        ):  # on
            self.write_cmd(cmd)
        self.fill(0)
        self.show()
 
    def poweroff(self):
        self.write_cmd(SET_DISP)
 
    def poweron(self):
        self.write_cmd(SET_DISP | 0x01)
 
    def contrast(self, contrast):
        self.write_cmd(SET_CONTRAST)
        self.write_cmd(contrast)
 
    def invert(self, invert):
        self.write_cmd(SET_NORM_INV | (invert & 1))
 
    def rotate(self, rotate):
        self.write_cmd(SET_COM_OUT_DIR | ((rotate & 1) << 3))
        self.write_cmd(SET_SEG_REMAP | (rotate & 1))
 
    def show(self):
        x0 = 0
        x1 = self.width - 1
        if self.width != 128:
            # narrow displays use centred columns
            col_offset = (128 - self.width) // 2
            x0 += col_offset
            x1 += col_offset
        self.write_cmd(SET_COL_ADDR)
        self.write_cmd(x0)
        self.write_cmd(x1)
        self.write_cmd(SET_PAGE_ADDR)
        self.write_cmd(0)
        self.write_cmd(self.pages - 1)
        self.write_data(self.buffer)
 
class SSD1306_I2C(SSD1306):
    def __init__(self, width, height, i2c, addr=0x3C, external_vcc=False):
        self.i2c = i2c
        self.addr = addr
        self.temp = bytearray(2)
        self.write_list = [b"x40", None]  # Co=0, D/C#=1
        super().__init__(width, height, external_vcc)
 
    def write_cmd(self, cmd):
        self.temp[0] = 0x80  # Co=1, D/C#=0
        self.temp[1] = cmd
        self.i2c.writeto(self.addr, self.temp)
 
    def write_data(self, buf):
        self.write_list[1] = buf
        self.i2c.writevto(self.addr, self.write_list)
 
 
class SSD1306_SPI(SSD1306):
    def __init__(self, width, height, spi, dc, res, cs, external_vcc=False):
        self.rate = 10 * 1024 * 1024
        dc.init(dc.OUT, value=0)
        res.init(res.OUT, value=0)
        cs.init(cs.OUT, value=1)
        self.spi = spi
        self.dc = dc
        self.res = res
        self.cs = cs
        import time
 
        self.res(1)
        time.sleep_ms(1)
        self.res(0)
        time.sleep_ms(10)
        self.res(1)
        super().__init__(width, height, external_vcc)
 
    def write_cmd(self, cmd):
        self.spi.init(baudrate=self.rate, polarity=0, phase=0)
        self.cs(1)
        self.dc(0)
        self.cs(0)
        self.spi.write(bytearray([cmd]))
        self.cs(1)
 
    def write_data(self, buf):
        self.spi.init(baudrate=self.rate, polarity=0, phase=0)
        self.cs(1)
        self.dc(1)
        self.cs(0)
        self.spi.write(buf)
        self.cs(1)

該庫使用了 MicroPython 的framebuf 庫。關于 framebuf 庫的用法可以參考文檔,也可以通過這篇文章快速了解一下「MicroPython 幀緩沖區庫 framebuf 的使用方法」。

下面是示例代碼,在屏幕上輸出指定的信息,將代碼保存在 Pico 上,命名為 main.py。

import machine
import ssd1306
 
i2c = machine.I2C(1, sda=machine.Pin(14), scl=machine.Pin(15), freq=400_000)
print("I2C device: " + str(i2c.scan()[0]))
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
 
oled.text("PICO LAB", 0, 0)
oled.hline(0, 10, 128, 1)
oled.text("Hello World!", 0, 26)
oled.hline(0, 48, 128, 1)
oled.text("PICO.NXEZ.COM", 0, 52)
oled.show()

顯示效果如圖。

78396938-8834-11ee-939d-92fbcf53809c.jpg

下面的示例代碼來畫一個樹莓派 Logo 并顯示在屏幕上。將代碼保存在 Pico 上,命名為 main.py。

import ssd1306
import framebuf
 
i2c = machine.I2C(1, sda=machine.Pin(14), scl=machine.Pin(15), freq=400_000)
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
 
data = [0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
        0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x3E,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xE0,0x07,0x00,0x00,0x00,0x7F,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x80,0x03,0x80,0x00,0x01,0xF7,0xC0,0x00,0x00,0x00,
        0x00,0x00,0x00,0x00,0x01,0xFF,0x80,0x01,0xF8,0x00,0x0F,0x90,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xFF,0xE0,0x01,0xFF,0x00,0x0E,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x01,0xF8,0x01,0xFF,0xC0,0x3C,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3C,0x00,0xFF,0xFF,0xE1,0xE0,0x70,0x00,0x60,0x00,0x00,0x00,
        0x00,0x00,0x00,0x00,0x38,0x00,0xFF,0xFF,0xE0,0x70,0x70,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xFF,0xFF,0xF0,0x39,0xC0,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0xFF,0xDF,0xF0,0x1D,0xC0,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x01,0xFE,0x01,0xF8,0x0F,0x80,0x00,0x30,0x00,0x00,0x00,
        0x00,0x00,0x00,0x01,0xC0,0x01,0xF8,0x00,0x7C,0x0F,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x03,0xF8,0x00,0x3E,0x0F,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x07,0xF0,0x00,0x1F,0x06,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xC0,0x0F,0xE0,0x00,0x1F,0x86,0x00,0x20,0x30,0x00,0x00,0x00,
        0x00,0x00,0x00,0x07,0xC0,0x3F,0xE0,0x00,0x0F,0x86,0x00,0x20,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xC0,0x7F,0xE0,0x00,0x0F,0xC6,0x00,0x40,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xFF,0xFF,0xE0,0x00,0x0F,0xF7,0x00,0xC0,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xFF,0xFF,0xE0,0x00,0x0F,0xFF,0x00,0x80,0x60,0x00,0x00,0x00,
        0x00,0x00,0x00,0x3F,0xFF,0xFF,0xF0,0x00,0x0F,0xFF,0x01,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x39,0xFF,0x80,0xF0,0x00,0x0F,0x9F,0x83,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xFE,0x00,0x78,0x00,0x0F,0x0F,0xC6,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xFE,0x00,0x3C,0x00,0x0E,0x07,0xFC,0x00,0xC0,0x00,0x00,0x00,
        0x00,0x00,0x00,0xE0,0x7C,0x00,0x1E,0x00,0x1E,0x03,0xFC,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x78,0x00,0x1F,0x00,0x3C,0x03,0xFC,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x78,0x00,0x0F,0xE0,0xFC,0x03,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x78,0x00,0x0F,0xFF,0xFC,0x01,0xFF,0xFC,0x00,0x00,0x00,0x00,
        0x00,0x00,0x01,0xC0,0x78,0x00,0x0F,0xFF,0xFC,0x01,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x78,0x00,0x0F,0xFF,0xFC,0x03,0xFF,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x78,0x00,0x0F,0xFF,0xFC,0x03,0xFF,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x78,0x00,0x0F,0xE0,0xFC,0x03,0xFE,0x07,0x00,0x00,0x00,0x00,
        0x00,0x00,0x00,0xC0,0x78,0x00,0x0F,0x00,0x3C,0x03,0xFC,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x7C,0x00,0x1E,0x00,0x1E,0x07,0xF8,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x7E,0x00,0x3C,0x00,0x0E,0x07,0xFC,0x00,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0xFE,0x00,0x38,0x00,0x0F,0x0F,0xC6,0x00,0xE0,0x00,0x00,0x00,
        0x00,0x00,0x00,0x38,0xFF,0x80,0xF8,0x00,0x07,0x9F,0x83,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xFF,0xE3,0xF0,0x00,0x07,0xFF,0x01,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xFF,0xFF,0xF0,0x00,0x07,0xF7,0x00,0x80,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0xFF,0xF0,0x00,0x07,0xE7,0x00,0xC0,0x30,0x00,0x00,0x00,
        0x00,0x00,0x00,0x07,0xC0,0x3F,0xF0,0x00,0x0F,0x86,0x00,0x40,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xC0,0x0F,0xF0,0x00,0x0F,0x86,0x00,0x20,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x07,0xF0,0x00,0x1F,0x0E,0x00,0x20,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xC0,0x03,0xF0,0x00,0x3E,0x0E,0x00,0x10,0x30,0x00,0x00,0x00,
        0x00,0x00,0x00,0x01,0xC0,0x01,0xF8,0x00,0x7C,0x4F,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x00,0xFC,0x00,0xF8,0x1F,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0xFF,0x03,0xF8,0x1D,0x80,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x00,0x7F,0xFF,0xF0,0x39,0xC0,0x00,0x30,0x00,0x00,0x00,
        0x00,0x00,0x00,0x00,0x70,0x00,0x7F,0xFF,0xE0,0xF1,0xC0,0x00,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x7F,0xFF,0xE1,0xE0,0x70,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C,0x00,0x7F,0x00,0xFF,0xC0,0x70,0x00,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x01,0xF0,0x00,0xFF,0x00,0x3C,0x00,0x60,0x00,0x00,0x00,
        0x00,0x00,0x00,0x00,0x07,0xFF,0xC0,0x01,0xF8,0x00,0x0E,0x00,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xFF,0x80,0x03,0xC0,0x00,0x07,0x90,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0xE0,0x07,0x80,0x00,0x01,0xF7,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x1F,0x00,0x00,0x00,0x7F,0xC0,0x00,0x00,0x00,
        0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFC,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0xF8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00]
 
buf = framebuf.FrameBuffer(bytearray(data), 128, 64, framebuf.MONO_HLSB)
oled.blit(buf, 0, 0)
oled.show()

運行效果如圖。
7825eea8-8834-11ee-939d-92fbcf53809c.jpg

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • OLED
    +關注

    關注

    119

    文章

    6215

    瀏覽量

    224586
  • 屏幕
    +關注

    關注

    6

    文章

    1200

    瀏覽量

    55913
  • 引腳
    +關注

    關注

    16

    文章

    1216

    瀏覽量

    50770
  • 樹莓派
    +關注

    關注

    117

    文章

    1710

    瀏覽量

    105797

原文標題:樹莓派 Pico 上使用 SSD1306 OLED 屏幕

文章出處:【微信號:趣無盡,微信公眾號:趣無盡】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    SSD1306如何顯示字符測試結果

    文章目錄序言OLED簡介模塊介紹引腳定義SSD1306控制芯片驅動時序圖講解SSD1306常用命令命令設置SSD1306如何顯示字符測試結果資料下載 序言液晶屏通常作為嵌入式設備的顯示
    發表于 08-11 09:07

    SSD1306的相關資料分享

    SSD1306(OLED驅動芯片介紹)在介紹0.96寸 SSD1306之前先附上模塊鏈接:點擊購買SSD1306 OLED顯示模塊概述
    發表于 11-17 06:24

    SSD1306 OLED驅動芯片概述

    概述??SSD1306是一款泛用的OLED驅動芯片簡介??GDDRAM內部結構??三種內存地址模式??
    發表于 12-07 12:33

    SSD1306芯片介紹

    一、基礎認識及引腳介紹屏幕參數:尺寸:0.96英寸分辨率:128*64驅動芯片:SSD1306驅動接口協議:SPI引腳說明:二、SSD1306芯片介紹SSD1306是一款帶控制器的用于
    發表于 01-25 06:24

    OLEDSSD1306軟件包上電瞬間出現花屏如何解決

    OLEDSSD1306軟件包,初始化順序有誤,電瞬間顯存的數據是隨機的,所以會出現花屏,需要在OLED打開之前做一次顯存清除操作,如下所示PS:github太卡用不了,gitee只
    發表于 08-09 10:06

    【BPI-Pico-RP2040 開發板】SSD1306 OLED顯示

    本文主要使用BPI-Pico-RP2040開發板驅動SSD1306 OLED模塊。一、硬件(一)BPI-Pico-RP2040 開發板BPI-Pic
    發表于 03-26 22:52

    SSD1306數據表

    128*64 OLED的驅動芯片SSD1306的數據手冊0.96oled一般用ssd1306驅動,ssd1306的指令豐富,但是在平常顯示使
    發表于 09-27 07:59

    ssd1306 OLED花屏怎么解決?

    ssd1306用spi連接arduino,幾率花屏,但是在樹莓派上用就沒問題,請問各位大佬有什么好的建議嗎
    發表于 10-19 08:26

    內部SSD1306驅動芯片手冊

    OLED顯示屏控制芯片SSD1306,它的驅動芯片手冊
    發表于 11-26 15:10 ?894次下載

    基于SSD1306OLED開發模塊

    基于SSD1306OLED開發模塊,包含SSD1306-Revision-1.1.pdf和SSD1306命令.doc
    發表于 02-24 14:03 ?98次下載

    SSD1306(OLED驅動芯片介紹)

    SSD1306(OLED驅動芯片介紹)在介紹0.96寸 SSD1306之前先附上模塊鏈接:點擊購買SSD1306 OLED顯示模塊概述
    發表于 11-09 18:36 ?63次下載
    <b class='flag-5'>SSD1306</b>(<b class='flag-5'>OLED</b>驅動芯片介紹)

    SSD1306 OLED的ESP8266 NTP時鐘

    電子發燒友網站提供《SSD1306 OLED的ESP8266 NTP時鐘.zip》資料免費下載
    發表于 11-09 11:28 ?0次下載
    <b class='flag-5'>SSD1306</b> <b class='flag-5'>OLED</b><b class='flag-5'>上</b>的ESP8266 NTP時鐘

    基于樹莓SSD1306 OLED視頻播放器

    該項目使用 Raspberry Pi 在 Python 運行 OpenCV 以在 SSD1306 OLED 顯示器播放視頻/電影。
    發表于 12-08 09:43 ?2次下載

    SSD1306 OLED顯示屏的Arduino Flash文本

    電子發燒友網站提供《SSD1306 OLED顯示屏的Arduino Flash文本.zip》資料免費下載
    發表于 01-31 10:12 ?1次下載
    <b class='flag-5'>SSD1306</b> <b class='flag-5'>OLED</b>顯示屏<b class='flag-5'>上</b>的Arduino Flash文本

    Arduino在SSD1306 OLED顯示屏隨機移動文本

    電子發燒友網站提供《Arduino在SSD1306 OLED顯示屏隨機移動文本.zip》資料免費下載
    發表于 06-09 10:09 ?0次下載
    Arduino在<b class='flag-5'>SSD1306</b> <b class='flag-5'>OLED</b>顯示屏<b class='flag-5'>上</b>隨機移動文本
    主站蜘蛛池模板: 国产成人精品亚洲线观看| 国产传媒精品1区2区3区| 蜜桃狠狠色伊人亚洲综合网站 | 快插我我好湿啊公交车上做| 欧美亚洲国产手机在线有码| 最近的2019中文字幕国语| 国产一区2区| 亚洲精品午睡沙发系列| 精品日韩欧美一区二区三区| 伊人综合在线影院| 毛片无码免费无码播放| 99精品国产AV一区二区麻豆| 暖暖 免费 高清 日本视频大全| GAY2022空少被体育生暴菊| 国内精品久久久久久久999下| 亚洲AV久久久噜噜噜久久| H狠狠躁死你H| 日韩午夜影院| 午夜想想爱午夜剧场| 国产精品美女久久久网站动漫| 午夜影院和视费x看| 精品手机在线视频| 2019伊人查蕉在线观看| 人妻插B视频一区二区三区| 在线观看免费av网站| 伦理片午夜在线视频| jizz日本女人| 小寡妇好紧进去了好大看视频| 精品国产乱码久久久久乱码 | 国产精品ⅴ视频免费观看| 亚洲精品成人AV在线观看爽翻 | 成人免费视频在线| 久久精品美女久久| 99精品国产电影| 日韩内射美女人妻一区二区三区| 国产精品无码中文在线AV| 一本道无码字幕在线看| 强行撕开衣服捏胸黄文| 国产亚洲精品欧洲在线视频| 中文字幕人成乱码熟女APP| 色久悠悠无码偷拍自怕|