久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1637|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

python 智能小車源碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:425676 發(fā)表于 2018-11-13 14:43 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

#coding:utf-8   #設(shè)置中文編碼
import RPi.GPIO as GPIO #導(dǎo)入樹(shù)莓派GPIO模塊
import sys,time     #導(dǎo)入時(shí)間模塊
from threading import * #導(dǎo)入thread模塊所有函數(shù)

dc = 0      #速度
mmd = 'r'   #上一次的行駛狀態(tài)
num = 1     #尋跡狀態(tài)標(biāo)志
thread_num = 0  #尋跡線程個(gè)數(shù)
thread_bi = 0   #避障線程個(gè)數(shù)
num_bi = 1  #避障狀態(tài)標(biāo)志

#定義控制馬達(dá)的兩個(gè)引腳
m1 = 23
m2 = 22
m3 = 24
m4 = 27
m5 = 19
m6 = 13
m7 = 20
m8 = 16
GPIO.setwarnings(False) #設(shè)置屏蔽警告信息
GPIO.setmode(GPIO.BCM)  #設(shè)置引腳為BCM編碼模式
GPIO.setup(m1,GPIO.OUT) #設(shè)置m1方向?yàn)檩敵?/font>
GPIO.setup(m2,GPIO.OUT) #設(shè)置m2方向?yàn)檩敵?/font>
GPIO.setup(m3,GPIO.OUT)
GPIO.setup(m4,GPIO.OUT)
GPIO.setup(m5,GPIO.OUT)
GPIO.setup(m6,GPIO.OUT)
GPIO.setup(m7,GPIO.OUT)
GPIO.setup(m8,GPIO.OUT)
'''
#定義燈的引腳
g1 = 5
g2 = 6
g3 = 21
g4 = 12
#左邊
GPIO.setup(g1,GPIO.OUT) #紅色
GPIO.setup(g2,GPIO.OUT) #綠色
#右邊
GPIO.setup(g3,GPIO.OUT) #紅色
GPIO.setup(g4,GPIO.OUT) #綠色
'''
#定義尋跡引腳
LineR = 26
LineL = 17
LineM1 = 25
LineM2 = 18
GPIO.setup(LineR,GPIO.IN,GPIO.PUD_UP)   #設(shè)置引腳為輸入
GPIO.setup(LineL,GPIO.IN,GPIO.PUD_UP)   #設(shè)置引腳為輸入
GPIO.setup(LineM1,GPIO.IN,GPIO.PUD_UP)  #設(shè)置引腳為輸入
GPIO.setup(LineM2,GPIO.IN,GPIO.PUD_UP)  #設(shè)置引腳為輸入

#加減速
PW1 = GPIO.PWM(m1,500)  #設(shè)置PWM脈沖頻率
PW2 = GPIO.PWM(m2,500)
PW3 = GPIO.PWM(m3,500)
PW4 = GPIO.PWM(m4,500)
PW5 = GPIO.PWM(m5,500)
PW6 = GPIO.PWM(m6,500)
PW7 = GPIO.PWM(m7,500)
PW8 = GPIO.PWM(m8,500)
PW1.start(0)
PW2.start(0)
PW3.start(0)
PW4.start(0)
PW5.start(0)
PW6.start(0)
PW7.start(0)
PW8.start(0)

PW1.ChangeDutyCycle(dc) #設(shè)置PW1停止
PW2.ChangeDutyCycle(dc)
PW3.ChangeDutyCycle(dc)
PW4.ChangeDutyCycle(dc)
PW5.ChangeDutyCycle(dc)
PW6.ChangeDutyCycle(dc)
PW7.ChangeDutyCycle(dc)
PW8.ChangeDutyCycle(dc)

def thread_xunji():     #子線程實(shí)現(xiàn)函數(shù)
    sum = 0
    global num  #聲明全局變量
    global thread_num   #聲明全局變量
    while num:
        if(GPIO.input(LineL)==0 and GPIO.input(LineR)==0 and
        GPIO.input(LineM1)==0 and GPIO.input(LineM2)==0):
            sum = sum + 1
            print "地板"
            if(sum > 100):
                                    
                PW1.ChangeDutyCycle(0)  
                PW2.ChangeDutyCycle(0)
                PW3.ChangeDutyCycle(0)
                PW4.ChangeDutyCycle(0)                  
                PW5.ChangeDutyCycle(0)  
                PW6.ChangeDutyCycle(0)
                PW7.ChangeDutyCycle(0)
                PW8.ChangeDutyCycle(0)
               
        elif(GPIO.input(LineL)==1 and GPIO.input(LineR)==1 and
        GPIO.input(LineM1)==1 and GPIO.input(LineM2)==1):
            print "懸空"
                                                            
            PW1.ChangeDutyCycle(0)
            PW2.ChangeDutyCycle(0)
            PW3.ChangeDutyCycle(0)
            PW4.ChangeDutyCycle(0)                  
            PW5.ChangeDutyCycle(0)  
            PW6.ChangeDutyCycle(0)
            PW7.ChangeDutyCycle(0)
            PW8.ChangeDutyCycle(0)
                        
#左邊碰到黑帶左轉(zhuǎn)
        elif(GPIO.input(LineL)==1 and GPIO.input(LineR)==0 and
        GPIO.input(LineM1)==0 and GPIO.input(LineM2)==0):
            print "左轉(zhuǎn)"
            sum = 0
                                
            PW1.ChangeDutyCycle(0)  
            PW2.ChangeDutyCycle(0)
            PW3.ChangeDutyCycle(0)
            PW4.ChangeDutyCycle(0)                  
            PW5.ChangeDutyCycle(0)  
            PW6.ChangeDutyCycle(0)
            PW7.ChangeDutyCycle(0)
            PW8.ChangeDutyCycle(0)
                                
            PW3.ChangeDutyCycle(60)
            PW7.ChangeDutyCycle(60)
                           
        elif(GPIO.input(LineL)==0 and GPIO.input(LineR)==1 and
        GPIO.input(LineM1)==0 and GPIO.input(LineM2)==0):
            print "右轉(zhuǎn)"
            sum = 0
                                
            PW1.ChangeDutyCycle(0)  
            PW2.ChangeDutyCycle(0)
            PW3.ChangeDutyCycle(0)
            PW4.ChangeDutyCycle(0)                  
            PW5.ChangeDutyCycle(0)  
            PW6.ChangeDutyCycle(0)
            PW7.ChangeDutyCycle(0)
            PW8.ChangeDutyCycle(0)
                                
            PW1.ChangeDutyCycle(60)
            PW5.ChangeDutyCycle(60)
                                
        elif(GPIO.input(LineL)==0 and GPIO.input(LineR)==0 and
        GPIO.input(LineM1)==1 or GPIO.input(LineM2)==1):
            print "前進(jìn)"
            sum = 0
                                
            PW1.ChangeDutyCycle(0)  
            PW2.ChangeDutyCycle(0)
            PW3.ChangeDutyCycle(0)
            PW4.ChangeDutyCycle(0)                  
            PW5.ChangeDutyCycle(0)  
            PW6.ChangeDutyCycle(0)
            PW7.ChangeDutyCycle(0)
            PW8.ChangeDutyCycle(0)
                                
            #前進(jìn)全綠
            PW1.ChangeDutyCycle(60) #加速
            PW3.ChangeDutyCycle(60) #加速
            PW5.ChangeDutyCycle(60) #加速
            PW7.ChangeDutyCycle(60) #加速
        time.sleep(0.01)
    print "children I daied!"
    num = 1
    thread_num = 0
    print 'thread_num = ',thread_num

from socket import *    #導(dǎo)入模塊中所有函數(shù),可以直接使用函數(shù)名,不需要帶模塊名
#第一步:創(chuàng)建套接字
server = socket()   #創(chuàng)建一個(gè)套接字 TCP,IPV4
print server
#第二步:綁定IP地址和端口號(hào)
server.bind(('172.27.35.3', 9996))  #綁定本地IP地址,端口號(hào)為8989
#第三步:監(jiān)聽(tīng)
server.listen(5)    #監(jiān)聽(tīng)客戶端鏈接,隊(duì)列長(zhǎng)度為5
#第四步:接收客戶端鏈接

try:    #捕捉while中是否有ctrl + C按下
    while 1 :
        print 'accept...'
        client,addr = server.accept()   #接受鏈接到服務(wù)器的客戶端,得到客戶端元組
        print client,addr
        client.send('welcome...')
        while 1:
            cmd = client.recv(100)  #從客戶端接收100個(gè)數(shù)據(jù)存放到服務(wù)器buff
            print '客戶端發(fā)來(lái)消息:',cmd
        
            print "正在運(yùn)行"
#前進(jìn)         
            if cmd == 'w':
                print "mmd = ",mmd
                if mmd == 'w':
                    #維持現(xiàn)狀
                    pass
                elif mmd == 'r':
                    
                    #設(shè)置PW腳脈沖為0
                    PW2.ChangeDutyCycle(0)  
                    PW4.ChangeDutyCycle(0)
                    PW6.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    #dc = 60
                    #啟動(dòng)時(shí)60碼
                    for dc in range(0, 100, 50):
                        PW1.ChangeDutyCycle(dc) #加速
                        PW3.ChangeDutyCycle(dc) #加速
                        PW5.ChangeDutyCycle(dc) #加速
                        PW7.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                        
                elif mmd == 's':
                    #先減速
                    #設(shè)置PW腳脈沖為0
                    PW1.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    for ac in range(dc, 0, -50):
                        PW2.ChangeDutyCycle(ac) #減速
                        PW4.ChangeDutyCycle(ac) #減速
                        PW6.ChangeDutyCycle(ac) #減速
                        PW8.ChangeDutyCycle(ac) #減速
                        time.sleep(1)
                    #再加速
                    #設(shè)置PW腳脈沖為0
                    PW2.ChangeDutyCycle(0)  
                    PW4.ChangeDutyCycle(0)
                    PW6.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    #dc = 60
                    #啟動(dòng)時(shí)60碼
                    for dc in range(0, 100, 50):
                        PW1.ChangeDutyCycle(dc) #加速
                        PW3.ChangeDutyCycle(dc) #加速
                        PW5.ChangeDutyCycle(dc) #加速
                        PW7.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                    
                else:
                    #先暫停
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                    
                    #設(shè)置PW腳脈沖為0
                    PW2.ChangeDutyCycle(0)  
                    PW4.ChangeDutyCycle(0)
                    PW6.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    #dc = 60
                    #啟動(dòng)時(shí)60碼
                    for dc in range(0, 100, 50):
                        PW1.ChangeDutyCycle(dc) #加速
                        PW3.ChangeDutyCycle(dc) #加速
                        PW5.ChangeDutyCycle(dc) #加速
                        PW7.ChangeDutyCycle(dc) #加速
                        time.sleep(0.5)
                #記錄狀態(tài)
                mmd = 'w'
#后退                 
            elif cmd == 's':
                print "mmd = ",mmd
                if mmd == 's':
                    #維持現(xiàn)狀
                    pass
                elif mmd == 'w':
                    #先減速
                    #設(shè)置PW腳脈沖為0
                    PW2.ChangeDutyCycle(0)  
                    PW4.ChangeDutyCycle(0)
                    PW6.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    for ac in range(dc, 0, -50):
                        PW1.ChangeDutyCycle(ac) #減速
                        PW3.ChangeDutyCycle(ac) #減速
                        PW5.ChangeDutyCycle(ac) #減速
                        PW7.ChangeDutyCycle(ac) #減速
                        time.sleep(1)
                    
                    #再加速
                    #設(shè)置PW腳脈沖為0
                    PW1.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    #dc = 60
                    #啟動(dòng)時(shí)60碼
                    for dc in range(0, 100, 50):
                        PW2.ChangeDutyCycle(dc) #加速
                        PW4.ChangeDutyCycle(dc) #加速
                        PW6.ChangeDutyCycle(dc) #加速
                        PW8.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                elif mmd == 'r':
                    
                    #加速
                    #設(shè)置PW腳脈沖為0
                    PW1.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    #啟動(dòng)時(shí)60碼
                    for dc in range(0, 100, 50):
                        PW2.ChangeDutyCycle(dc) #加速
                        PW4.ChangeDutyCycle(dc) #加速
                        PW6.ChangeDutyCycle(dc) #加速
                        PW8.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                else:
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                    #加速
                    #設(shè)置PW腳脈沖為0
                    PW1.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    #dc = 60
                    #啟動(dòng)時(shí)60碼
                    for dc in range(0, 100, 50):
                        PW2.ChangeDutyCycle(dc) #加速
                        PW4.ChangeDutyCycle(dc) #加速
                        PW6.ChangeDutyCycle(dc) #加速
                        PW8.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                #記錄狀態(tài):后退
                mmd = 's'

#停止
            elif cmd == 'r':
                mmd = 'r'
                num = 0
                PW1.ChangeDutyCycle(0)  
                PW2.ChangeDutyCycle(0)
                PW3.ChangeDutyCycle(0)
                PW4.ChangeDutyCycle(0)
                PW5.ChangeDutyCycle(0)  
                PW6.ChangeDutyCycle(0)
                PW7.ChangeDutyCycle(0)
                PW8.ChangeDutyCycle(0)
               
#右轉(zhuǎn)
            elif cmd == 'e':
                print "mmd = ",mmd
                if mmd == 'w':
                    mmd = 'd'
                    #前進(jìn)右轉(zhuǎn)右綠
                    PW2.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)  
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)

                elif mmd == 's':
                    mmd = 'c'
                    #后退右轉(zhuǎn)右紅
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)  
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    
                elif mmd == 'r':
                    mmd = 'd'
                    #停車右轉(zhuǎn)右綠
                    PW2.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)  
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    for dc in range(0, 100, 50):
                        PW1.ChangeDutyCycle(dc) #加速
                        PW5.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                        
                elif mmd == 'd':
                    pass
                elif mmd == 'c':
                    pass
                elif mmd == 'a':
                    mmd = 'd'
                    #停止
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)                  
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                    #前進(jìn)右轉(zhuǎn)右綠
                    for dc in range(0, 100, 50):
                        PW1.ChangeDutyCycle(dc) #加速
                        PW5.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                elif mmd == 'z':
                    mmd = 'c'
                    #停止
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)                  
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                    #后退右轉(zhuǎn)右紅
                    for dc in range(0, 100, 50):
                        PW4.ChangeDutyCycle(dc) #加速
                        PW8.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
#左轉(zhuǎn)
            elif cmd == 'q':
                print "mmd = ",mmd
                if mmd == 'w':
                    mmd = 'a'
                    #前進(jìn)左轉(zhuǎn)左綠
                    PW1.ChangeDutyCycle(0)
                    PW2.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)
                    PW6.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                elif mmd == 's':
                    mmd = 'z'
                    #后退左轉(zhuǎn)左紅
                    PW1.ChangeDutyCycle(0)  
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)  
                    PW5.ChangeDutyCycle(0)  
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                elif mmd == 'r':
                    mmd = 'a'
                    #前進(jìn)左轉(zhuǎn)左綠
                    PW1.ChangeDutyCycle(0)
                    PW2.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)
                    PW5.ChangeDutyCycle(0)
                    PW6.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    for dc in range(0, 100, 50):
                        PW3.ChangeDutyCycle(dc) #加速
                        PW7.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                elif mmd == 'a':
                    pass

                elif mmd == 'z':
                    pass
               
                elif mmd == 'd':
                    mmd = 'a'
                    #停止
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)                  
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                    #前進(jìn)左轉(zhuǎn)左綠
                    for dc in range(0, 100, 50):
                        PW3.ChangeDutyCycle(dc) #加速
                        PW7.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
                elif mmd == 'c':
                    mmd = 'z'
                    #停止
                    PW1.ChangeDutyCycle(0)  
                    PW2.ChangeDutyCycle(0)
                    PW3.ChangeDutyCycle(0)
                    PW4.ChangeDutyCycle(0)                  
                    PW5.ChangeDutyCycle(0)  
                    PW6.ChangeDutyCycle(0)
                    PW7.ChangeDutyCycle(0)
                    PW8.ChangeDutyCycle(0)
                    
                    #后退左轉(zhuǎn)左紅
                    for dc in range(0, 100, 50):
                        PW2.ChangeDutyCycle(dc) #加速
                        PW6.ChangeDutyCycle(dc) #加速
                        time.sleep(1)
#尋跡
            elif cmd == 'xun':
                print "xun"
                if(thread_num == 0):
                    t = Thread(target = thread_xunji)
                    t.start()
                    thread_num = 1
                else:
                    print "thread"
                    client.send('Thread is working...')
                #t.join()
#避障
            elif cmd == 'bi':
                print "bi"
                if(thread_bi == 0):
                    t = Thread(target = thread_bizhang)
                    t.start()
                    thread_bi = 1
                else:
                    num_bi = 0
            elif cmd == 'end':
                break
        client.close()  #關(guān)閉對(duì)應(yīng)客戶端
#捕捉到ctrl + c后停止電機(jī)
except KeyboardInterrupt:
    PW1.ChangeDutyCycle(0)  
    PW2.ChangeDutyCycle(0)
    PW3.ChangeDutyCycle(0)
    PW4.ChangeDutyCycle(0)
    PW5.ChangeDutyCycle(0)  
    PW6.ChangeDutyCycle(0)
    PW7.ChangeDutyCycle(0)
    PW8.ChangeDutyCycle(0)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:428008 發(fā)表于 2018-11-18 02:27 | 只看該作者
喜歡,我機(jī)會(huì)我也搞臺(tái)來(lái)試試
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91视频网址 | 国产亚洲人成a在线v网站 | 九九综合 | 午夜精品在线 | 在线91 | 国产精品久久久久久久久久久久 | 国产毛片久久久久久久久春天 | 国产精品久久久久久久久久久久久久 | 国产视频不卡一区 | 99热这里都是精品 | 国产精品久久久久久久久久免费看 | 亚洲男人天堂av | 日韩国产在线 | 亚洲色图综合 | 日韩欧美三级 | 成人午夜看片 | 99久热在线精品视频观看 | 亚洲伦理自拍 | 精品视频一区在线 | 四虎永久免费地址 | 人妖videosex高潮另类 | av一区二区三区四区 | 久久精品视频在线免费观看 | 国产精品一二三区 | 欧美在线观看一区 | 久草在线视频中文 | 看片国产 | 国产欧美精品一区二区三区 | 欧美一级在线视频 | 精品国产三级 | 欧美激情一区二区三级高清视频 | 一区二区三区视频在线观看 | 一区中文字幕 | 啪一啪| 国产一区二区三区www | 欧美最猛性xxxxx亚洲精品 | 伊人久久国产 | 91精品久久久久久久久久 | 国产成人精品一区二区三区视频 | 久久久久无码国产精品一区 | 伊人性伊人情综合网 |