亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 滾動碼應用原程序.txt

?? mcu眾多的開發(fā)實例
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
RLF KEY5,F
RLF KEY6,F
RLF KEY7,F 

DECFSZ CNT0,F ; INNER LOOP 48 TIMES
GOTO DECRYPT_INNER ; INNER LOOP 48 TIMES

DECFSZ CNT1,F ; OUTER LOOP 12 TIMES (11 + 1 TO RESTORE KEY)
GOTO DECRYPT_OUTER ; OUTER LOOP 12 TIMES (11 + 1 TO RESTORE KEY)

RETLW 0 ; RETURN 

;------------------------------------------------------------------------------
;
; FUNCTION : LOAD_CNT_VALS() 
;
; DESCRIPTION : LOAD COUNTERS INTO WRITE BUFFERS
;
; NOTE : THIS ROUTINE MUST BE IN THE LOWER HALF OF THE PAGE
;
;------------------------------------------------------------------------------

LOAD_CNT_VALS
MOVFW CNTR_HI ; LOAD MSB OF COUNTER
MOVWF TMP1
MOVFW CNTR_LW ; LOAD LSB OF COUNTER
MOVWF TMP2
RETLW 0

;------------------------------------------------------------------------------
;
; FUNCTION : RECEIVE() 
;
; DESCRIPTION : RECEPTION ROUTINE FOR PWM TRANSMISSIONS
;
; NOTE : THIS ROUTINE MUST BE IN THE LOWER HALF OF THE PAGE
;
;------------------------------------------------------------------------------

RECEIVE

;******** WAIT FOR HEADER AND CALIBRATE *******************

BTFSS PORTA,RFIN ; INPUT LOW?
GOTO RMT_0 ; YES; RECEIVE ERROR

MOVLW 10 ; 10 ms TIMER
MOVWF CNT1
RCV0
MOVLW 200
MOVWF CNT0
RCV1
BTFSS PORTA,RFIN ; [2] INPUT HIGH?
GOTO RCV2 ; [0] NO, JUMP OUT OF LOOP
DECFSZ CNT0,1 ; [1] YES, CONTINUE WITH TIMING LOOP
GOTO RCV1 ; [2] 5 us X CNT0
DECFSZ CNT1,1 ; [0] DO 1 ms LOOP CNT1 TIMES
GOTO RCV0 ; [0]

RCV2
CLRF CNT0 ; [1] CLEAR CALIB COUNTER LOW BYTE
CLRF CNT1 ; [1] CLEAR CALIB COUNTER HIGH BYTE

;*************************************************************************
; 2.5 IS AVERAGE FOR DETECTING FALLING EDGE IN RCV1
; 2 INSTRUCTIONS FOR JUMP OUT RCV1 TO RCV2
; 2 INSTRUCTIONS FOR RCV2 - CLEAR CALIBRATION COUNTER
; TOTAL 6.5 INSTRUCTIONS < 1 CALIBRATION LOOP SO DISCARD
;*************************************************************************

RCV3
BTFSC PORTA,RFIN ; [2][2] INPUT HIGH?
GOTO RCV6 ; [0][0] YES--END CALIBRATION
INCF CNT0,1 ; [1] INCREMENT 16BIT COUNTER 
SKPNZ ; [2]
INCF CNT1,1 ; [0]
CLRWDT ; [1] RESET WATCH DOG TIMER
NOP ; [1]
BTFSS CNT1,3 ; [1]
GOTO RCV3 ; [2]
GOTO RMT_0 ; [0]
; TOTAL = 10

RCV6
CLRC ; [1] DIVIDE CNT1:CNT0 BY 8 (600/8=75)
RRF CNT1,1 ; [1]
RRF CNT0,1 ; [1]
RRF CNT1,1 ; [1]
RRF CNT0,1 ; [1]
RRF CNT1,1 ; [1]
RRF CNT0,1 ; [1] 

MOVLW MIN/80 ; [1]
SUBWF CNT0,W ; [1]
BTFSS STATUS,C ; [2] NEGATIVE?
GOTO RMT_0 ; [0] YES--HEADER SHORTER THAN MIN.
; TOTAL = 11
; ************* VALID HEADER RECEIVED *********************
RCV7
MOVLW NBITS ; [1] VALID START MARKER WAS RECEIVED
MOVWF CNT1 ; [1]
MOVF CNT0,W ; [1]
MOVWF CNT2 ; [1] CNT2 = CNT0
MOVLW 6H ; [1] SEE NOTE BELOW
SUBWF CNT2,1 ; [1]
GOTO DL1 ; [2] COMPENSATE FOR FIRST BIT
; TOTAL = 8

;**********************************************************************************
; 2.5 IS AVERAGE PLAY BETWEEN RISING EDGE AND JUMP OUT OF CALIBRATION LOOP.
; 2 FOR JUMP OUT OF RCV3 TO RCV6
; 11 INSTRUCTIONS FOR RVC6 - CAIBRATION COUNTER DIVIDE
; 8 INSTRUCTIONS FOR RCV7 - COMPENSATE FOR POST CALIBRATION CALCUATIONS
; TOTAL 22.5 INSTRUCTIONS BETWEEN RISING EDGE AND ENTERING DL1
; THEREFORE SUBTRACT 22.5/4 = 5.625 TO COMPENSATE FOR POST CALCULATION ON 1ST BIT
;**********************************************************************************

RCV8 
MOVLW 4H ; [1] WAIT A MAXIMUM OF 4 Te
MOVWF TMP_CNT ; [1] SET TEMP LOOP COUNTER

RCV10A
MOVFW CNT0 ; [1] and CSR processing
MOVWF CNT2 ; [1] Refer to explanation above

RCV10B
BTFSC PORTA,RFIN ; [2] Wait for rising edge
GOTO RCV11 ; [0] Edge found--Process
CLRWDT ; [1] Clear watchdog Timer
BTFSC PORTA,RFIN ; [2] Wait for Next rising edge
GOTO RCV11 ; [0] Edge found--Process
DECFSZ CNT2,1 ; [1] Decrement Timeout counter
GOTO RCV10B ; [2] Loop Back
; TOTAL = 8, RFIN CHECKED EVERY 4uS ON AVERAGE

DECFSZ TMP_CNT,1 ; [1] ALL Te PERIODS
GOTO RCV10A ; [2] ... NO, THEN WAIT FOR NEXT ONE
GOTO RMT01 ; [0] ... YES, [0] TIMEOUT--no edge found

RCV11
MOVLW 3H ; [1] SEE NOTE BELOW
SUBWF CNT0,W ; [1]
MOVWF CNT2 ; [1]

;*************************************************************************
; 2 SETUP OF TEMP LOOP COUNTER ( ONLY ONCE )
; 2 SETUP TE LOOP COUNTER ( MAX 4 )
; 3 DECREMENT TEMP LOOP COUNTER ( MAX 4 )
; 4 IS THE AVERAGE PLAY BETWEEN EDGE AND EDJE BEING DETECTED IN RCV9
; 2 JUMP OUT OF RCV10B TO RCV11
; 3 FOR RCV11
; TOTAL 10 INSTRUCTIONS BETWEEN EDGE AND ENTERING DL1
; THEREFORE SUBTRACT 10/4 = 2.5 => 3 DL1 LOOPS TO COMPENSATE FOR 
;*************************************************************************

DL1
CLRWDT ; [1] RESET WATCHDOG TIMER
DECFSZ CNT2,1 ; [1] [2, IF SKIP]
GOTO DL1 ; [2] CNT0 X 4 us

SAMPLE1
BTFSS PORTA,RFIN ; [2] INPUT HIGH? FIRST SAMPLE
GOTO RMT01 ; [0] NO--ERROR

MOVF CNT0,W ; [1] CALIBRATION COUNTER
MOVWF CNT2 ; [1] (NOMINALLY 75 FOR 300 us PULSE)
DECF CNT2,1 ; [1] SUBTRACT 2 FROM FINAL CALIB COUNTER TO COMPENATE FOR THIS
GOTO $+1 ; [2]
NOP ; [1]
; TOTAL = 8 => 1 LOOP COUNTER
DL2
CLRWDT ; [1] RESET WATCHDOG TIMER
GOTO $+1 ; [2] WASTE TIME
GOTO $+1 ; [2] WASTE TIME
DECFSZ CNT2,1 ; [1]
GOTO DL2 ; [2] CNT0 X 8 us [ CNT0 x Te ]

SAMPLE2
BCF FLAGS,BITIN ; [1] CLEAR BIT POSITION
BTFSS PORTA,RFIN ; [1.5] LEAVE 0 IF LINE HIGH
BSF FLAGS,BITIN ; [0.5] MAKE 1 IF LINE LOW
; SUB TOTAL = 3 CYCLES

CALL ROT_SHIFT ; [11]+[2] CSR SHIFT + CALL
BCF CSR7,7 ; [1]
BTFSC FLAGS,BITIN ; [1.5]
BSF CSR7,7 ; [0.5]
; SUB TOTAL = 16 CYCLES


MOVF CNT0,W ; [1] CALIBRATION COUNTER
MOVWF CNT2 ; [1] (NOMINALLY 75 FOR 300 us PULSE)
MOVLW 3 ; [1] SEE CALCULATION BELOW
SUBWF CNT2,1 ; [1]
NOP ; [1]
; SUB TOTAL = 5 CYCLE
; TOTAL = 24 => 24/8 = 3 LOOP COUNTERS

;*************************************************************************
; TOTAL = 24 INSTRUCTIONS
; SUBTRACT 24/8 = 3 TO COMPESATE FOR UPDATEING CSR AND OTHER PROCESSING 
; AFTER DATA SAMPLE IS TAKEN.
;*************************************************************************

DL3
GOTO $+1 ; [2] WASTE TIME
GOTO $+1 ; [2] WASTE TIME
CLRWDT ; [1] RESET WATCHDOG TIMER
DECFSZ CNT2,1 ; [1]
GOTO DL3 ; [2] CNT0 X 8 us [ CNT0 X Te ]

SAMPLE3
BTFSC PORTA,RFIN ; [2] INPUT LOW? THIRD SAMPLE
GOTO RMT0 ; [0] NO--RECEIVE ERROR

CALL TST_RTCC ; [11] CHECK RTCC

DECFSZ CNT1,1 ; [1] LAST BIT?
GOTO RCV8 ; [2] ... NO, GET NEXT BIT
GOTO RMT1 ; TOTAL = 14 CYCLES


RMT_0
RMT0 
RMT01 BSF STATUS,C ; INVALID TRANSMISSION
RETLW 1 ; RETURN

RMT1 BSF PORTA,LED ; VALID TRANSMISSION FORMAT, LED ON
MOVLW 0FH ; FORCE OPEN BUTTON CODES TO ZERO
ANDWF SER_0,1
CLRC ; VALID SERIAL NUMBER => VALID TX
RETLW 0 ; RETURN 

;------------------------------------------------------------------------------
;
; FUNCTION : M_LOOP () 
;
; DESCRIPTION : MAIN PROGRAM ROUTINE
;
;------------------------------------------------------------------------------

M_LOOP BCF PORTA,LED 
BTFSS PORTA,LRN 
GOTO LEARN ; TEST & HANDLE LEARN BUTTON
CALL TST_RTCC ; UPDATE TIMER 
CALL TST_TIMER ; HANDLE TIMER - UPDATE OUTPUTS
CALL RECEIVE ; RECEIVE TRANSMISSION 
BC M_LOOP ; CHECK IF TRANSMISSION VALID

M_SEARCH
CLRF TXNUM ; TEST FIRST POSITION
; ******* COMPARE LOWER WORD OF SERIAL NUMBER ********
M_SERIAL
CALL TX_LOOKUP ; GET TX BASE ADDRESS
BSF ADDRESS,1 ; ADD 2 TO BASE ADDRESS
CALL EEREAD ; READ LOWER 16-BITS OF SER# FROM EEPROM

MOVFW TMP1 ; COMPARE RX AND EEPROM VALUES
XORWF SER_2,W
BNZ M_NEXT ; IF NOT EQUAL CHECK NEXT
MOVFW TMP2 ; COMPARE RX AND EEPROM VALUES
XORWF SER_3,W
BNZ M_NEXT ; IF NOT EQUAL CHECK NEXT

; ******* COMPARE UPPER WORD OF SERIAL NUMBER ********
M_SERIAL2
INCF ADDRESS,F ; POINT TO NEXT ENTRY 
CALL EEREAD ; READ UPPER 16-BITS OF SER# FROM EEPROM

MOVFW TMP1 ; COMPARE RX AND EEPROM VALUES
XORWF SER_0,W
BNZ M_NEXT ; IF NOT EQUAL CHECK NEXT

MOVFW TMP2 ; COMPARE RX AND EEPROM VALUES
XORWF SER_1,W
BNZ M_NEXT ; IF NOT EQUAL CHECK NEXT

BTFSS FLAGS,LRNF ; LEARN MODE
GOTO M_HOP ; FOUND TRANSMITTER - DECRYPT

BSF FLAGS,RELEARN ; SET RELEARN FLAG
GOTO LEARN_F ; FOUND TRANSMITTER - LEARN

; **** SEARCH NEXT POSITION FOR SERIAL NUMBER *****
M_NEXT INCF TXNUM,F ; POINT TO NEXT TRANSMITTER POSITION
MOVLW MAX_USERS ; TEST FOR LAST POSITION
SUBWF TXNUM,W 
BTFSS STATUS,C ; NOT FOUND IN MAP
GOTO M_SERIAL ; TRY NEXT POSITION
M_NF
BTFSS FLAGS,LRNF ; LEARN MODE
GOTO M_LOOP ; NO... INVALID SERIAL NUMBER 
GOTO LEARN_NF ; NEW TRANSMITTER - USE POINTER FOR LEARN

; ********** DECRYPT HOPCODE *********************
M_HOP 
CALL DECRYPT ; DECRYPT HOPCODE 

; ********* TEST DICRIMINATION VALUE *************
M_DIS MOVFW SER_3 ; SERIAL NUBER LSB MUST BE EQUAL
XORWF DISC,W ; TO DISCRIMINATION VALUE
BNZ M_LOOP

; *************** CHECK COUNTERS VALID ************
BCF FLAGS,SEC_CNT ; CHECK FIRST COUNTER
M_CNT CALL TX_LOOKUP ; POINT LOWER 16 BIT COUNTER
BTFSC FLAGS,SEC_CNT ; IF SECOND COUNTER IS USED
INCF ADDRESS,F ; INCREMENT ADDRESS
CALL EEREAD ; READ LOWER 16 BIT COUNTER FROM EEPROM

; ************ CHECK COUNTER WINDOWS ***********
M_SUB
MOVFW TMP2 ; 16 BIT COUNTER SUBSTRACTION
SUBWF CNTR_LW,W
MOVWF TMP2 
SKPC ; SKIP IF NO BORROW
INCF TMP1,F ; ... ELSE INCR HI BYTE
MOVFW TMP1
SUBWF CNTR_HI,W
MOVWF TMP1

BCF TMP1,0 ; MAKE ACCEPTED WINDOW 512

M_CHECK0
MOVFW TMP1 ; TEST IF IN WINDOW ( UPPER BYTE )
BTFSC STATUS,Z
GOTO M_CHECK2 ; GO AND CHECK LOWER BYTE

BTFSC FLAGS,SEC_CNT ; IF SECOND COUNTER
GOTO M_LOOP ; ERROR - GOTO MAIN LOOP 

BSF FLAGS,SEC_CNT ; SET FLAG FOR SECOND COUNTER CHECK
GOTO M_CNT ; AND CHECK IT

M_CHECK2
MOVFW TMP2 ; CHECK LOWER BYTE
BZ M_TZERO ; IF REPEAT - RESET TIMEOUT COUNTER

; ************ UPDATE EEPROM COUNTER ***********
M_UPDATE
CALL TX_LOOKUP ; GET CURRENT TX BASE ADDRESS
CALL LOAD_CNT_VALS ; LOAD COUNTER VALUES
CALL EEWRITE ; UPDATE FIRST COUNTER
CALL LOAD_CNT_VALS ; LOAD COUNTER VALUES 
CALL EEWRITE ; UPDATE SECOND COUNTER

; ******** UPDATE OUTPUT WITH CURRENT BUTTON CODE ********

M_OUTPUT 
MOVLW 0F0H ; MASK ONLY BUTTON CODES
ANDWF FUNC,1
SWAPF FUNC,1 ; GET BUTTON CODE FROM FUNC BYTE

BTFSC FUNC,0 ; CHANGE BUTTON TO S-OUTPUT FORMAT
BSF FUNC,4 ; [ S2 S1 S0 S3 ]
CLRC 
RRF FUNC,W 

M_OUTPUT1
MOVWF PORTB ; UPDATE PORT WITH FUNCTION CODE

M_TZERO CLRF CNT_HI ; RESET RTCC CLOCK
CLRF CNT_LW 

M_END 
GOTO M_LOOP ; WAIT FOR NEXT TRANMISSION

;------------------------------------------------------------------------------
;
; FUNCTION : LEARN () 
;
; DESCRIPTION : LEARN ROUTINE
;
;------------------------------------------------------------------------------

LEARN
CLRF CNT_LW ; RESET TIMER
CLRF CNT_HI


LEARN1 BSF PORTA,LED ; LED ON
CALL TST_RTCC ; UPDATE TIMER
BTFSC PORTA,LRN ; TEST FOR BUTTON RELEASE 
GOTO LEARN2 ; ENTER LEARN MODE
BTFSS CNT_HI,0 ; TEST FOR ERASE ALL
GOTO LEARN1 ; LOOP BACK

; ******* EEPROM ERASE ALL ******************

BCF PORTA,LED
ERASE_ALL
CLRWDT ; CLEAR WATCHDOG TIMER
BTFSS PORTA,LRN ; WAIT FOR BUTTON RELEASE
GOTO ERASE_ALL ; LOOP BACK

MOVLW 30H ; ERASE ENABLE COMMAND
MOVWF OUTBYT 
CALL SENDC ; SEND COMMAND TO EEPROM
MOVLW 20H ; ERASE ALL COMMAND
MOVWF OUTBYT 
CALL SENDC ; SEND COMMAND TO EEPROM
CALL WAITACK ; WAIT FOR ERASE ACK
GOTO RESET ; START OVER

LEARN2
BCF PORTA,LED ; CLEAR LED
BSF FLAGS,LRNF ; SET LEARN FLAG

LEARN3
CALL TST_RTCC ; UPDATE TIMER
CALL TST_TIMER ; CHECK FOR LEARN TIMEOUT
CALL RECEIVE ; RECEIVE TRANSMISSION 
BC LEARN3 ; CHECK IF TRANSMISSION VALID
GOTO M_SEARCH ; CHECK IF SERIAL NUMBER IS IN MAP

LEARN_NF

; *** IF SERIAL NOT IN MAP READ SELFLEARN POINTER ***

MOVLW LRNPTR ; POINT TO LEARN POINTER
MOVWF ADDRESS
CALL EEREAD ; READ LEARN POINTER FROM EEPROM

MOVF TMP2,W ; CHECK LOWER BYTE
MOVLW 0H ; LOAD 0 DEFAULT
BTFSC STATUS,Z ; IF LOWER != 0 LEARN ON 0
MOVF TMP1,W ; ELSE LEARN ON TMP1 VALUE
MOVWF TXNUM ; LOAD TXNUM

LEARN_F
CALL TX_LOOKUP
BSF ADDRESS,1 ; ADD 2 TO BASE ADDRESS
MOVFW SER_2 ; GET LOWER 16 BIT OF SERIAL NUMBER
MOVWF TMP1
MOVFW SER_3
MOVWF TMP2
CALL EEWRITE ; ... AND WRITE TO EEPROM

MOVFW SER_0 ; GET UPPER 16 BIT OF SERIAL NUMBER
MOVWF TMP1
MOVFW SER_1
MOVWF TMP2
CALL EEWRITE ; ... AND WRITE TO EEPROM

; *** DECRYPT HOP CODE ***

LEARN_DEC
CALL DECRYPT ; DECRYPTION ROUTINE

; *** CHECK DISCRIMINATION VALUE ***

LEARN_CHK
MOVFW SER_3 ; CHECK LOWER BYTE OF SERIAL NUMBER
XORWF DISC,W ; AGAINST DISCRIMINATION VALUE
BZ LEARN_UP ; UPDATE LEARN POINTER
GOTO CANCEL_LEARN ; ERROR CANCEL LEARN MODE

; ********* UPDATE LEARN POINTER **********
LEARN_UP
CALL TX_LOOKUP ; GET CURRENT TX BASE ADDRESS
CALL LOAD_CNT_VALS
CALL EEWRITE ; WRITE LSB WORD OF COUNTER TO EEPROM

BTFSC FLAGS,RELEARN ; IF RELEARN
GOTO BYPASS_POINTER_WRITE ; DONT UPDATE POINTER

INCF TXNUM,F ; INCREMENT LEARN POINTER 
MOVLW MAX_USERS ; ALLOW 0 .. MAX_USERS - 1
SUBWF TXNUM,W 
MOVLW 0H ; IF MAX WRAP TO 0
BTFSS STATUS,C
MOVF TXNUM,W ; ELSE USE TXNUM
MOVWF TMP1 ; FOR WRITE OPERATION

CLRF TMP2 ; CLEAR LOWER BYTE

MOVLW LRNPTR ; POINT TO LEARN POINTER
MOVWF ADDRESS
CALL EEWRITE ; UPDATE LEARN POINTER IN EEPROM

BYPASS_POINTER_WRITE

BSF PORTA,LED ; LED ON TO INDICATE VALID LEARN

CLRF CNT_LW ; CLEAR COUNTER LOW BYTE

SUCCESS
CALL TST_RTCC ; INDICATE SUCCESSFUL LEARN
BTFSS CNT_LW,4 ; LED ON FOR 0.5 SEC
GOTO SUCCESS ; LOOP BACK

CANCEL_LEARN
BCF FLAGS,LRNF ; CLEAR LEARN FLAG
BCF FLAGS,RELEARN ; CLEAR RELEARN FLAG
GOTO M_LOOP ; RETURN TO MAIN LOOP - LED OFF

;------------------------------------------------------------------------------
; END OF FILE : SIMDEC10.ASM
;------------------------------------------------------------------------------

ORG 1FFH
GOTO RESET
END
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国内一区二区三区| 日产国产欧美视频一区精品| 在线看国产一区二区| 亚洲国产美国国产综合一区二区| 日韩一二三区不卡| 成人污污视频在线观看| 夜夜嗨av一区二区三区四季av| 337p亚洲精品色噜噜| 国产电影精品久久禁18| 亚洲地区一二三色| 国产人成亚洲第一网站在线播放| 日本国产一区二区| 韩国女主播一区二区三区| 亚洲欧美激情视频在线观看一区二区三区| 欧美疯狂做受xxxx富婆| 懂色一区二区三区免费观看| 午夜精品久久久久久久99水蜜桃| 久久久电影一区二区三区| 欧美午夜精品理论片a级按摩| 国产一区欧美日韩| 五月天欧美精品| 国产精品国产三级国产aⅴ原创 | 日韩福利视频网| 国产精品久久久久久久久图文区 | 成人黄色在线视频| 日本aⅴ精品一区二区三区| 一区视频在线播放| 26uuu精品一区二区在线观看| 欧美三区在线观看| av激情亚洲男人天堂| 99久久综合色| 激情欧美一区二区三区在线观看| 亚洲大片精品永久免费| 中文字幕一区日韩精品欧美| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美午夜片在线看| 色综合中文字幕| 国产不卡在线视频| 韩国三级在线一区| 久久精品国产久精国产| 亚洲成av人影院在线观看网| 亚洲色图欧美在线| 亚洲欧洲性图库| 国产精品污www在线观看| 亚洲精品在线电影| 日韩午夜在线观看| 4438亚洲最大| 欧美一区二区三区系列电影| 欧美亚洲综合在线| 在线视频一区二区三| 99久久精品免费观看| 成人精品国产免费网站| 国产一区二区三区国产| 国内精品久久久久影院薰衣草| 免费看欧美美女黄的网站| 日韩精品乱码免费| 视频一区二区三区入口| 亚洲成a天堂v人片| 午夜精品一区二区三区电影天堂| 午夜欧美电影在线观看| 日韩av在线播放中文字幕| 日韩电影免费在线看| 午夜精品久久久| 麻豆精品精品国产自在97香蕉| 日日噜噜夜夜狠狠视频欧美人| 亚洲一区二区中文在线| 亚洲3atv精品一区二区三区| 亚洲aaa精品| 麻豆视频一区二区| 国产一区二区主播在线| 国产成人99久久亚洲综合精品| 国产成人午夜视频| www.色综合.com| 色视频欧美一区二区三区| 欧美日韩国产色站一区二区三区| 欧美日韩国产成人在线免费| 日韩一级完整毛片| 久久嫩草精品久久久久| 国产精品人人做人人爽人人添 | 久久中文字幕电影| 国产女人18水真多18精品一级做| 国产精品欧美一区二区三区| 亚洲女与黑人做爰| 午夜一区二区三区在线观看| 免费看欧美美女黄的网站| 欧美日韩国产高清一区二区三区| 欧美巨大另类极品videosbest | 亚洲国产精品久久久男人的天堂| 三级欧美韩日大片在线看| 久久国产尿小便嘘嘘尿| 成人在线一区二区三区| 在线一区二区观看| 精品美女被调教视频大全网站| 久久久精品一品道一区| 亚洲欧美一区二区三区孕妇| 天天综合色天天| 高清国产午夜精品久久久久久| 日本电影欧美片| 日韩情涩欧美日韩视频| 中文字幕免费不卡在线| 亚洲国产日韩精品| 国内久久精品视频| 91在线免费播放| 日韩精品中文字幕在线不卡尤物| 国产精品久久久久久久久免费樱桃| 天天操天天色综合| 东方aⅴ免费观看久久av| 欧美日韩亚洲不卡| 国产色一区二区| 性做久久久久久免费观看欧美| 国产精一区二区三区| 欧美午夜不卡视频| 久久九九国产精品| 日韩黄色在线观看| 99久久精品免费| 欧美精品一区二| 婷婷亚洲久悠悠色悠在线播放| 成人国产亚洲欧美成人综合网| 这里是久久伊人| 亚洲欧洲av色图| 国产精品中文有码| 欧美一区二区三区在线观看视频 | 亚洲精品一区二区三区精华液 | 亚洲综合色视频| 国产精品白丝jk白祙喷水网站| 欧美美女网站色| 亚洲视频免费看| 国产一区二区在线观看免费| 欧美日韩精品三区| 亚洲日本电影在线| 国产凹凸在线观看一区二区| 日韩一区二区免费电影| 亚洲国产视频直播| 色综合一区二区三区| 亚洲国产精品精华液2区45| 久久黄色级2电影| 91精品国产高清一区二区三区蜜臀| 亚洲色图制服诱惑| 国产精品中文有码| 精品av久久707| 青青草国产精品97视觉盛宴| 精品国产一区二区三区四区四| 五月天激情综合| 欧美天堂亚洲电影院在线播放| 亚洲视频 欧洲视频| www.亚洲精品| 国产精品国产自产拍高清av王其 | 亚洲免费观看高清| 成人高清av在线| 国产精品久久久久7777按摩| 大美女一区二区三区| 久久久久久麻豆| 国产一区二区三区免费播放| 欧美不卡一区二区| 激情丁香综合五月| 久久天天做天天爱综合色| 久久精品国产精品亚洲红杏| 日韩美女在线视频| 激情综合网天天干| 久久网这里都是精品| 韩国在线一区二区| 国产精品水嫩水嫩| 波多野结衣亚洲| 亚洲天天做日日做天天谢日日欢| 91尤物视频在线观看| 亚洲精品综合在线| 欧美性感一区二区三区| 性做久久久久久免费观看| 欧美放荡的少妇| 美腿丝袜亚洲综合| 国产午夜亚洲精品理论片色戒 | 色视频成人在线观看免| 亚洲综合丁香婷婷六月香| 欧美色图在线观看| 蜜桃视频在线一区| 久久久久久久久97黄色工厂| 国产成人在线视频免费播放| 国产精品久久久久7777按摩| 色婷婷av一区二区| 水野朝阳av一区二区三区| 日韩欧美综合在线| 成人一区二区三区中文字幕| 一区二区三区视频在线观看| 欧美群妇大交群中文字幕| 麻豆精品久久精品色综合| 国产亚洲精品aa| 国产亚洲欧美激情| 高清久久久久久| 欧美在线高清视频| 日韩av网站在线观看| 精品国产乱码久久久久久1区2区| 国产美女在线观看一区| 亚洲欧洲av另类| 91精品在线免费| 国产精品白丝jk白祙喷水网站| 亚洲狠狠丁香婷婷综合久久久| 欧美一二三区在线| 成人一区二区视频| 丝袜美腿亚洲色图| 国产精品嫩草影院com|