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

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

?? uc-os應用的簡單剖析--電子門.htm

?? ucos的資料以及單片機dsp的經典移植程序
?? HTM
?? 第 1 頁 / 共 3 頁
字號:
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV>
      <DIV>&nbsp;</DIV></TD>
    <TD vAlign=top>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD><IMG height=50 alt="" src="uC-OS應用的簡單剖析--電子門.files/index_02.jpg" 
            width=752></TD></TR></TBODY></TABLE>
      <TABLE class=content2 cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD width="19%">&nbsp;</TD>
          <TD class=banner width="64%">
            <TABLE cellSpacing=0 cellPadding=0 width="80%" align=left 
              border=0><TBODY>
              <TR>
                <TD class=blog_name><SPAN id=blogname>MCU博客數據載入中, 
                請稍候...</SPAN></TD></TR></TBODY></TABLE></TD>
          <TD width="17%">&nbsp;</TD></TR></TBODY></TABLE>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD><IMG height=53 alt="" src="uC-OS應用的簡單剖析--電子門.files/index_05.jpg" 
            width=752></TD></TR></TBODY></TABLE>
      <TABLE class=content3 cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD width="3%">&nbsp;</TD>
          <TD vAlign=top>
            <DIV id=topMenu>
            <DIV id=subject_l>MCU博客數據載入中, 請稍候...</DIV>
            <SCRIPT type=text/javascript><!--
google_ad_client = "pub-0269824239044964";
google_ad_width = 468;
google_ad_height = 15;
google_ad_format = "468x15_0ads_al_s";
google_ad_channel = "";
//-->
</SCRIPT>

            <SCRIPT src="uC-OS應用的簡單剖析--電子門.files/show_ads.js" 
            type=text/javascript>
</SCRIPT>
            </DIV></TD>
          <TD width="3%">&nbsp;</TD></TR></TBODY>
        <SCRIPT type=text/javascript><!--
google_ad_client = "pub-0269824239044964";
google_ad_width = 468;
google_ad_height = 15;
google_ad_format = "468x15_0ads_al_s";
google_ad_channel = "";
//-->
</SCRIPT>

        <SCRIPT src="uC-OS應用的簡單剖析--電子門.files/show_ads.js" type=text/javascript>
</SCRIPT>
      </TABLE>
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR>
          <TD vAlign=top width=509>
            <DIV id=content>
            <TABLE height=13 cellSpacing=0 cellPadding=0 width=490 align=center 
            border=0>
              <TBODY>
              <TR>
                <TD>
                  <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
                    <TBODY>
                    <TR>
                      <TD>
                        <TABLE class=seyle4 cellSpacing=0 cellPadding=0 
                        width="100%" border=0>
                          <TBODY>
                          <TR>
                            <TD>&nbsp;</TD></TR>
                          <TR>
                            <TD class=content9 vAlign=center 
                              bgColor=#bbccde><STRONG>uC/OS應用的簡單剖析 <IMG 
                              src="uC-OS應用的簡單剖析--電子門.files/jhinfo.gif"></STRONG></TD></TR>
                          <TR>
                            <TD>
                              <DIV align=right><SPAN class=textbox-label>[ 
                              2006-4-27 22:08:51 | By: <SPAN 
                              class=style3>電子門</SPAN> 
                          ]</SPAN></DIV></TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD height=3>&nbsp;</TD></TR></TBODY></TABLE>
                        <TABLE style="TABLE-LAYOUT: fixed" cellSpacing=0 
                        cellPadding=0 width="100%" align=center border=0>
                          <TBODY>
                          <TR>
                            <TD><SPAN class=oblog_text><SPAN 
                              id=ob_logd10964></SPAN>
                              <P style="LINE-HEIGHT: 150%" align=left><B><FONT 
                              color=#000080 size=5>uC/OS應用的簡單剖析<A 
                              name=ucos></A></FONT></B></P>
                              <P style="LINE-HEIGHT: 150%" align=left> </P>
                              <BLOCKQUOTE>
                                <P style="LINE-HEIGHT: 150%" 
                                align=left><B>&nbsp;&nbsp; 
                                </B><I>這是小弟我一年前的研究成果,發出來大家交流一下。&nbsp;&nbsp;&nbsp;目前正在研究嵌入式實時軟件系統設計方法,有興趣的高手交流一下。</I><B><BR></B></P></BLOCKQUOTE>
                              <DIV align=center>
                              <CENTER>
                              <TABLE width="95%" border=0>
                                <TBODY>
                                <TR>
                                <TD width="100%">
                                <P 
                                style="LINE-HEIGHT: 150%">這里給大家簡單剖析一下uCOS吧,希望對大家能有所幫助。不足之處多多指教,有問題可以討論。<BR>&nbsp;&nbsp;&nbsp; 

                                <P 
                                style="LINE-HEIGHT: 150%">一.&nbsp;uC/OS-II的移植</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">移植uC/OS對目標處理器有一定要求,這個可以參照&lt;&lt;uc/OS-II源碼公開的實時嵌入式操作系統&gt;&gt;一書中第8章的內容.<BR>整個嵌入式系統分為兩大層:硬件層和軟件層.這里主要研究軟件層的架構.<BR>軟件層主要分為四個部分:實時操作系統內核,與處理器相關部分,與應用相關部分,用戶的應用系統.</P>
                                <P 
                                style="LINE-HEIGHT: 150%">l&nbsp;&nbsp;實時操作系統內核</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">實時操作系統對系統資源進行管理。主要包括任務分配和調度、系統時鐘服務、內存管理、消息機制、異常處理等等。uC/OS所有系統服務均由內核提供。內核將應用系統和底層硬件結合成一個完整的實時系統。<BR>移植的時候內核是不變的,開發者根據自己應用系統的需要來選擇實時操作系統內核,開發者不能對內核隨意訪問,只能使用內核提供的功能服務來開發自己的應用系統。內核確定,那么所提供的系統管理能力,系統服務也就得到了限定。開發者只能在規定的范圍內對系統作些改動.</P></BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">2&nbsp;&nbsp;與處理器相關的代碼</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">這是移植中最關鍵的部分.內核將應用系統和底層硬件有機的結合成一個實時系統,要使同一個內核能適用于不同的硬件體系,就需要在內核和硬件之間有一個中間層,這就是與處理器相關的代碼.處理器不同,這部分代碼也不同.<BR>&nbsp;&nbsp;&nbsp;&nbsp;我們在移植時需要自己處理這部分代碼,可以自己編寫,也可以直接使用已經成功移植的代碼.&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;在uC/OS中這一部分代碼分成三個文件:OS_CPU.H,&nbsp;OS_CPU_A.ASM,&nbsp;OS_CPU_C.C</P>
                                <P 
                                style="LINE-HEIGHT: 150%">1)&nbsp;&nbsp;&nbsp;OS_CPU.H</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">包括了用#define定義的與處理器相關的常量,宏和類型定義.<BR>具體來講有系統數據類型定義,棧增長方向定義,關中斷和開中斷定義,系統軟中斷的定義等等.</P></BLOCKQUOTE>
                                <P style="LINE-HEIGHT: 150%">2) 
                                &nbsp;&nbsp;OS_CPU_A.ASM</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">這部分需要對處理器的寄存器進行操作,所以必須用匯編語言來編寫.包括四個子函數:OSStartHighRdy(),OSCtxSw(),OSIntCtxSw(),OSTickISR().<BR>OSStartHighRdy()在多任務系統啟動函數OSStart()中調用.完成的功能是:設置系統運行標志位OSRunning&nbsp;=&nbsp;TRUE;將就緒表中最高優先級任務的棧指針Load到SP中,并強制中斷返回.這樣就緒的最高優先級任務就如同從中斷里返回到運行態一樣,使得整個系統得以運轉.<BR>OSCtxSw()在任務級任務切換函數中調用的.任務級切換是通過SWI或者TRAP人為制造的中斷來實現的.ISR的向量地址必須指向OSCtxSw().這一中斷完成的功能:保存任務的環境變量(主要是寄存器的值,通過入棧來實現),將當前SP存入任務TCB中,載入就緒最高優先級任務的SP,恢復就緒最高優先級任務的環境變量,中斷返回.這樣就完成了任務級的切換.<BR>OSIntCtxSw()在退出中斷服務函數OSIntExit()中調用,實現中斷級任務切換.由于是在中斷里調用,所以處理器的寄存器入棧工作已經做完,就不用作這部分工作了.具體完成的任務:調整棧指針(因為調用函數會使任務棧結構與系統任務切換時堆棧標準結構不一致),保存當前任務SP,載入就緒最高優先級任務的SP,恢復就緒最高優先級任務的環境變量,中斷返回.這樣就完成了中斷級任務切換.<BR>OSTickISR()系統時鐘節拍中斷服務函數,這是一個周期性中斷,為內核提供時鐘節拍.頻率越高系統負荷越重.其周期的大小決定了內核所能給應用系統提供的最小時間間隔服務.一般只限于ms級(跟MCU有關),對于要求更加苛刻的任務需要用戶自己建立中斷來解決.該函數具體內容:保存寄存器(如果硬件自動完成就可以省略),調用OSIntEnter(),調用OSTimeTick(),調用OSIntExit(),恢復寄存器,中斷返回.</P></BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">3)&nbsp;&nbsp;&nbsp;OS_CPU_C.C</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">UC/OS中共定義了6個函數在該文件中.但是最重要的是OSTaskStkInit().其他都是對系統內核的擴展時用的.<BR>OSTaskStkInit()是在用戶建立任務時系統內部自己調用的,對用戶任務的堆棧進行初始化.使建立好的進入就緒態任務的堆棧與系統發生中斷并且將環境變量保存完畢時的棧結構一致.這樣就可以用中斷返回指令使就緒的任務運行起來.<BR>具體的入棧方式要根據不同mcu而定.需要參考用戶使用的mcu說明書.同時還要考慮mcu的棧生成方式.這需要根據具體問題來分析,在此不做過多論述.</P></BLOCKQUOTE></BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%"><BR>3&nbsp;&nbsp;與應用相關的代碼</P>
                                <BLOCKQUOTE>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">這一部分是用戶根據自己的應用系統來定制合適的內核服務功能.包括兩個文件:OS_CFG.H,&nbsp;INCLUDES.H.<BR>OS_CFG.H來配置內核,用戶根據需要對內核進行定制,留下需要的部分,去掉不需要的部分,設置系統的基本情況.比如系統可提供的最大任務數量,是否定制郵箱服務,是否需要系統提供任務掛起功能,是否提供任務優先級動態改變功能等等.<BR>INCLUDES.H系統頭文件,整個實時系統程序所需要的文件,包括了內核和用戶的頭文件.</P></BLOCKQUOTE></BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%"><BR>4&nbsp;&nbsp;&nbsp;用戶應用系統</P>
                                <BLOCKQUOTE>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">這是整個實時系統的最高層,用戶通過利用實時操作系統提供的服務來開發自己的具體程序.</P></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%"><BR>二.&nbsp;用戶應用系統編寫的模式</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%"><BR>kernel提供給用戶一些功能函數,使得用戶的系統建立更加方便,但是kernel內部不會處理用戶的工作,對于整個系統的具體應用工作還得需要用戶自己去考慮,如何利用好這些功能服務函數就成為一個比較重要的問題.</P>
                                <P 
                                style="LINE-HEIGHT: 150%">1.&nbsp;&nbsp;main函數的結構</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">void&nbsp;main&nbsp;(void)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;初始化系統的硬件;<BR>&nbsp;&nbsp;&nbsp;&nbsp;OSInit();<BR>&nbsp;&nbsp;&nbsp;&nbsp;任務的建立,消息機制的建立;<BR>&nbsp;&nbsp;&nbsp;&nbsp;OSStart();<BR>}<BR>這里需要的是在OSStart()執行之前不得啟動中斷,硬件系統還不能工作.必須先讓軟件系統進入工作狀態后才行.</P></BLOCKQUOTE>
                                <P style="LINE-HEIGHT: 150%">2.&nbsp;中斷的結構</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">ISR:<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;保存處理器寄存器的值;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;調用OSIntEnter();</P>
                                <P 
                                style="LINE-HEIGHT: 150%">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;執行用戶的工作;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;調用OSIntExit();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;恢復處理器寄存器的值;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RTI;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>用戶的中斷形式和以前一樣,沒有什么大的變化,僅僅是在原來用戶ISR的基礎上在固定的位置加了兩個函數:OSIntEnter(),&nbsp;OSIntExit().</P></BLOCKQUOTE>
                                <P style="LINE-HEIGHT: 150%">3. 各個任務的結構</P>
                                <BLOCKQUOTE>
                                <P 
                                style="LINE-HEIGHT: 150%">void&nbsp;YourTask&nbsp;(void)<BR>{<BR>for(;;)&nbsp;<BR>{<BR>用戶代碼<BR>調用的系統服務<BR>}<BR>}<BR>在任務啟動函數執行完后,系統會切換到最高優先級的任務去執行,此時,可以將系統硬件部分的啟動放在該任務的最前邊,僅僅是啟動時執行一次,主要是啟動系統的節拍中斷,或者一些必須在多任務系統調度后才能初始化的部分,使系統的真正開始工作,達到軟件硬件的基本同步.<BR>Void&nbsp;&nbsp;&nbsp;&nbsp;HighestPrioTask(void)<BR>{<BR>&nbsp;&nbsp;OSStartHardware();<BR>&nbsp;&nbsp;For&nbsp;(;;)<BR>&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用戶代碼<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;調用的系統服務<BR>&nbsp;&nbsp;}<BR>}<BR>用戶可以按照這些格式去編寫自己的任務,建立自己的應用系統.</P></BLOCKQUOTE></BLOCKQUOTE></TD></TR></TBODY></TABLE></CENTER></DIV></SPAN></TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD height=3>&nbsp;</TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD class=seyle5 height=13>
                              <DIV align=right><SPAN class=textbox-urls><A 
                              href="http://www.mcublog.com/blog/user1/7610/archives/2006/10964.html#">閱讀全文<SPAN 
                              id=ob_logreaded></SPAN></A> | <A 
                              href="http://www.mcublog.com/blog/user1/7610/archives/2006/10964.html#cmt">回復(0)</A> 
                              <SPAN id=ob_logm10964></SPAN>| <A 
                              href="http://www.mcublog.com/blog/showtb.asp?id=10964" 
                              target=_blank>引用通告<SPAN id=ob_tbnum></SPAN></A> | 
                              <A 
                              href="http://www.mcublog.com/blog/user_post.asp?logid=10964" 
                              target=_blank>編輯</A></SPAN></DIV></TD></TR></TBODY></TABLE>
                        <TABLE height=14 cellSpacing=0 cellPadding=0 
                        width="100%" align=center border=0>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品系列在线播放| 久久国产人妖系列| 中文字幕欧美日本乱码一线二线| 在线播放日韩导航| 国产女人水真多18毛片18精品视频| 日韩丝袜美女视频| 欧美欧美午夜aⅴ在线观看| 欧美日韩精品欧美日韩精品| 在线视频欧美精品| 欧美日韩一区二区三区视频| 欧美午夜片在线看| 欧美日韩国产一区二区三区地区| 欧美三级电影网站| 91麻豆精品91久久久久同性| 91精品国产品国语在线不卡| 日韩一区二区三区视频| 久久九九久久九九| 亚洲女同女同女同女同女同69| 亚洲欧美日韩在线| 日日欢夜夜爽一区| 激情五月婷婷综合| 99久久99久久精品免费看蜜桃| 色综合激情五月| 在线不卡一区二区| 国产偷v国产偷v亚洲高清| 综合激情网...| 亚洲大片在线观看| 国产超碰在线一区| 在线观看亚洲一区| 精品国产一区二区三区忘忧草| 中文幕一区二区三区久久蜜桃| 亚洲精品综合在线| 免费在线成人网| av毛片久久久久**hd| 欧美福利视频一区| 中文字幕精品综合| 亚洲777理论| 高清视频一区二区| 欧美精品国产精品| 亚洲人精品午夜| 久久99久久精品| 91黄视频在线| 欧美激情一二三区| 美女脱光内衣内裤视频久久网站| av一二三不卡影片| 精品福利一二区| 亚洲一区二区在线观看视频 | 91免费观看视频| 91麻豆精品国产91久久久久久久久 | 国内久久婷婷综合| 91黄色免费看| 久久精品视频在线免费观看| 亚洲国产精品一区二区久久恐怖片| 精品一区二区免费在线观看| 日本电影欧美片| 国产嫩草影院久久久久| 日av在线不卡| 欧日韩精品视频| 国产精品私人影院| 国产一区二区三区四| 欧美一二三四在线| 香蕉加勒比综合久久| www.99精品| 亚洲国产成人在线| 国产成人在线视频网站| 欧美tickle裸体挠脚心vk| 五月天网站亚洲| 欧美日韩综合在线免费观看| 亚洲精品v日韩精品| 91一区在线观看| 国产精品久久影院| 成人黄色网址在线观看| 国产亚洲短视频| 国产成人免费视频网站| 国产婷婷色一区二区三区四区 | 高清日韩电视剧大全免费| 久久色在线观看| 久久99精品国产麻豆不卡| 日韩一区二区在线免费观看| 天天综合天天综合色| 欧美亚洲国产bt| 午夜视频在线观看一区二区三区| 欧美视频精品在线观看| 亚洲图片有声小说| 欧美老女人在线| 奇米在线7777在线精品 | 国产成人自拍网| 欧美激情一区二区三区四区| 国产成人免费在线观看| 国产精品久久久一区麻豆最新章节| eeuss国产一区二区三区| 最新日韩在线视频| 精品视频全国免费看| 日本三级亚洲精品| 国产目拍亚洲精品99久久精品| 国产99久久精品| 一区二区视频在线| 欧美一级欧美三级在线观看| 久久www免费人成看片高清| 国产婷婷色一区二区三区| 91蝌蚪porny成人天涯| 午夜av区久久| 国产亚洲美州欧州综合国| 91黄色在线观看| 九一久久久久久| 中文字幕一区二区三区在线观看| 色乱码一区二区三区88| 美女看a上一区| 一区在线播放视频| 日韩一级免费一区| 99国内精品久久| 亚洲成国产人片在线观看| 欧美精品一区二区三区一线天视频| 成人av在线影院| 美腿丝袜亚洲一区| 亚洲少妇最新在线视频| 精品少妇一区二区三区在线视频| 成人综合在线观看| 日本美女一区二区三区视频| 一区在线播放视频| 欧美大尺度电影在线| 色婷婷av一区二区| 国产一区二区三区在线观看免费| 亚洲精品中文在线影院| 国产女人18水真多18精品一级做| 777午夜精品免费视频| 成人av电影在线播放| 精品一区二区综合| 亚洲va中文字幕| 亚洲人成在线播放网站岛国| 久久久久久久电影| 日韩欧美高清dvd碟片| 欧美性猛片xxxx免费看久爱| 成人在线一区二区三区| 韩国av一区二区三区在线观看| 亚洲国产欧美在线| 国产精品的网站| 久久久精品免费网站| 欧美精品一区在线观看| 欧美一区二区日韩| 欧美剧情片在线观看| 欧洲国内综合视频| 日本韩国欧美一区| 91小视频在线免费看| 丁香天五香天堂综合| 成人在线视频一区| 国产成人精品www牛牛影视| 精品午夜久久福利影院| 精品在线视频一区| 久久av资源站| 精品无人码麻豆乱码1区2区 | 日韩国产在线观看一区| 亚洲品质自拍视频网站| 亚洲欧美一区二区不卡| 成人欧美一区二区三区视频网页| 欧美国产精品专区| 国产精品毛片无遮挡高清| 中文字幕国产精品一区二区| 久久综合色8888| 久久久久久一级片| 中文字幕一区在线观看视频| 国产精品色呦呦| 国产精品入口麻豆原神| 亚洲欧美aⅴ...| 亚洲一区二区三区视频在线 | 亚洲精品久久久蜜桃| 亚洲女同一区二区| 日韩中文字幕1| 久久国产精品99久久人人澡| 国产成人午夜视频| 99久久婷婷国产| 欧美三级日本三级少妇99| 日韩美女视频在线| 日本一区二区电影| 亚洲综合免费观看高清完整版| 日韩电影在线免费看| 韩国精品久久久| 91麻豆国产在线观看| 91精品国产综合久久香蕉的特点| 精品国产一区a| 亚洲品质自拍视频| 久久99热99| 色综合天天在线| 91精品国产全国免费观看| 国产亚洲成av人在线观看导航| 一区二区三区四区中文字幕| 毛片一区二区三区| 成人app在线| 欧美一区永久视频免费观看| 国产精品丝袜久久久久久app| 天天综合天天综合色| 国产精品影视天天线| 欧美三级视频在线| 国产日韩成人精品| 蜜桃在线一区二区三区| 成人黄色国产精品网站大全在线免费观看| 色婷婷激情综合| 国产日韩欧美综合在线| 午夜精品福利久久久| 99精品国产一区二区三区不卡|