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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 17496|回復: 20
打印 上一主題 下一主題
收起左側

4*4*4光立方制作 帶單片機源碼 原理圖

  [復制鏈接]
跳轉到指定樓層
樓主
給51黑電子論壇的朋友們分享我的444光立方制作全過程





程序不完美之處是執行燈光效果或音樂效果的時候,不能響應按鍵,請高手指教。  還有是燈光和音樂不能同時執行。
附件已更新!
還有其他不足之處請指出,虛心接納。

有好多網友要電路圖,當初制作的時候還不會畫電路圖,所以也沒有,只有用鉛筆在本子上畫的簡單的原理圖,給大家分享吧,獻丑了
后面的三極管是因為亮度不夠,后來又添加的,型號 :s9013



單片機源碼:
  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. #ifndef __SOUNDPLAY_H_REVISION_FIRST__
  5. #define __SOUNDPLAY_H_REVISION_FIRST__
  6. #define SYSTEM_OSC                 12000000        //定義晶振頻率12000000HZ
  7. #define SOUND_SPACE         4/5                 //定義普通音符演奏的長度分率,//每4分音符間隔
  8. uint  code FreTab[12]  = { 262,277,294,311,330,349,369,392,415,440,466,494 }; //原始頻率表
  9. uchar code SignTab[7]  = { 0,2,4,5,7,9,11 };                                                                   //1~7在頻率表中的位置
  10. uchar code LengthTab[7]= { 1,2,4,8,16,32,64 };                                                
  11. uchar Sound_Temp_TH0,Sound_Temp_TL0;        //音符定時器初值暫存
  12. uchar Sound_Temp_TH1,Sound_Temp_TL1;        //音長定時器初值暫存
  13. uchar shang,slie,slie1,aa,a,kk,n,m;  
  14. uint x,y,z;
  15. void key();                        //    按鍵檢測
  16. void delay(uint z);           //*****************************延時
  17. void init();                   //******************************初始化
  18. void hangl();//**************************************************行外圍逐列個亮
  19. void ceng();//***************************************1234層循環亮
  20. void houqian();//******************************************從后向前
  21. void zuoyou();//****************************************從左向右亮
  22. void shanshuo();  //*****************************全部以200ms的速度閃爍50次,關閉
  23. void rao(); //*************************************環繞
  24. void InitialSound(void);//*************音樂初始化
  25. void Play(uchar *Sound,uchar Signature,unsigned Octachord,uint Speed);
  26. void Delay1ms(uint count)
  27. {
  28.         unsigned int i,j;
  29.         for(i=0;i<count;i++)
  30.         for(j=0;j<120;j++);
  31. }
  32. uchar code Music_Same[]={ 0x0F,0x01, 0x15,0x02, 0x16,0x02, 0x17,0x66, 0x18,0x03,
  33.                                   0x17,0x02, 0x15,0x02, 0x16,0x01, 0x15,0x02, 0x10,0x02,
  34.                                   0x15,0x00, 0x0F,0x01, 0x15,0x02, 0x16,0x02, 0x17,0x02,
  35.                                   0x17,0x03, 0x18,0x03, 0x19,0x02, 0x15,0x02, 0x18,0x66,
  36.                                   0x17,0x03, 0x19,0x02, 0x16,0x03, 0x17,0x03, 0x16,0x00,
  37.                                   0x17,0x01, 0x19,0x02, 0x1B,0x02, 0x1B,0x70, 0x1A,0x03,
  38.                                   0x1A,0x01, 0x19,0x02, 0x19,0x03, 0x1A,0x03, 0x1B,0x02,
  39.                                   0x1A,0x0D, 0x19,0x03, 0x17,0x00, 0x18,0x66, 0x18,0x03,
  40.                                   0x19,0x02, 0x1A,0x02, 0x19,0x0C, 0x18,0x0D, 0x17,0x03,
  41.                                   0x16,0x01, 0x11,0x02, 0x11,0x03, 0x10,0x03, 0x0F,0x0C,
  42.                                   0x10,0x02, 0x15,0x00, 0x1F,0x01, 0x1A,0x01, 0x18,0x66,
  43.                                   0x19,0x03, 0x1A,0x01, 0x1B,0x02, 0x1B,0x03, 0x1B,0x03,
  44.                                   0x1B,0x0C, 0x1A,0x0D, 0x19,0x03, 0x17,0x00, 0x1F,0x01,
  45.                                   0x1A,0x01, 0x18,0x66, 0x19,0x03, 0x1A,0x01, 0x10,0x02,
  46.                                   0x10,0x03, 0x10,0x03, 0x1A,0x0C, 0x18,0x0D, 0x17,0x03,
  47.                                   0x16,0x00, 0x0F,0x01, 0x15,0x02, 0x16,0x02, 0x17,0x70,
  48.                                   0x18,0x03, 0x17,0x02, 0x15,0x03, 0x15,0x03, 0x16,0x66,
  49.                                   0x16,0x03, 0x16,0x02, 0x16,0x03, 0x15,0x03, 0x10,0x02,
  50.                                   0x10,0x01, 0x11,0x01, 0x11,0x66, 0x10,0x03, 0x0F,0x0C,
  51.                                   0x1A,0x02, 0x19,0x02, 0x16,0x03, 0x16,0x03, 0x18,0x66,
  52.                                   0x18,0x03, 0x18,0x02, 0x17,0x03, 0x16,0x03, 0x19,0x00,
  53.                                   0x00,0x00 };

  54. sbit cai=P3^3;                //高電平點亮
  55. sbit yy=P3^4;                //蜂鳴器
  56. sbit k1=P3^5;                // 按鍵        左
  57. sbit k2=P3^6;                //按鍵        中
  58. sbit k3=P3^7;                //按鍵        右

  59. //*******************************************行選
  60. uchar code hang[]={
  61.         0x00, //全開
  62.         0xff,//全關
  63.         0x7f,//開底層
  64.         0xbf,//開底二
  65.         0xdf,//開底三層
  66.         0xef,//開最高層
  67. };

  68. //***************************************列選P0
  69. uchar code lie[]={
  70.         0xff,//全開
  71.         0x00,//全關
  72. };

  73. //****************************************列選P1
  74. uchar code lie1[]={
  75.         0xff,//全開
  76.         0x00,//全關
  77. };        
  78. //--------------------------------------------------------------主程序
  79. void main()
  80. {        
  81.         init();                         //初始化設置         
  82.         while(1)
  83.         {
  84.                           P0=0xff;        P1=0xff;         P2=0x00;        //全亮
  85.                 key();         
  86.                
  87.         }                        
  88. }

  89. //====================================各種模塊=================================================                        

  90. void delay(uint z)        //***************************延時                                                  
  91. {                                                
  92.         for(x=z;x>0;x--)
  93.                 for(y=110;y>0;y--);
  94. }
  95. //============================================================================================
  96. void init()                         //******************************初始化
  97. {
  98.         kk=0;
  99.         P2=0xff;          //關閉行選
  100.         P0=0x00;          //關閉列選
  101.         P1=0x00;          //關閉列選
  102.         cai=0;                 //關閉彩燈
  103. }
  104. //=====================================================音樂初始化
  105. void InitialSound(void)
  106. {
  107.         yy = 0;
  108.         Sound_Temp_TH1 = (65535-(1/1200)*SYSTEM_OSC)/256;        // 計算TL1應裝入的初值         (10ms的初裝值)
  109.         Sound_Temp_TL1 = (65535-(1/1200)*SYSTEM_OSC)%256;        // 計算TH1應裝入的初值
  110.         TH1 = Sound_Temp_TH1;
  111.         TL1 = Sound_Temp_TL1;
  112.         TMOD  |= 0x11;
  113.         ET0    = 1;
  114.         ET1           = 0;
  115.         TR0           = 0;
  116.         TR1    = 0;
  117.         EA     = 1;
  118. }
  119. //============================================================================================
  120. void shanshuo()  //*****************************各種閃爍
  121. {               
  122.                  for(a=0;a<10;a++)
  123.                   {
  124.                          P2=hang[0];                          //開所有行選
  125.                         for(slie=0;slie<2;slie++)
  126.                         {
  127.                          P0=lie[slie];
  128.                          P1=lie1[slie];
  129.                          delay(60);
  130.                         }
  131.                   }
  132.                         P2=0xff;        P0=P1=0x00;          //全部關閉

  133.                         for(a=0;a<10;a++)
  134.                         {
  135.                                 P2=0x00;
  136.                                 P1=0x99;        P0=0x99;  delay(50);
  137.                                         P2=0xff;        P0=0X00;P1=0x00;          //全部關閉
  138.                                         delay(50);
  139.                         }
  140.                         for(a=0;a<10;a++)
  141.                         {
  142.                                 P2=0x00;
  143.                                 P1=0x66;        P0=0x66;  delay(50);
  144.                                         P2=0xff;        P0=0X00;P1=0x00;          //全部關閉
  145.                                         delay(50);
  146.                         }
  147.                         for(a=0;a<10;a++)
  148.                         {
  149.                                 P2=0x00;
  150.                                 P1=0x55;        P0=0x55;  delay(50);
  151.                                         P2=0xff;        P0=0x00;        P1=0x00;          //全部關閉
  152.                                         delay(50);
  153.                         }
  154.                         for(a=0;a<10;a++)
  155.                         {
  156.                                 P2=0x00;
  157.                                 P1=0xaa;        P0=0xaa;   delay(50);
  158.                                         P2=0xff;        P0=0x00;        P1=0x00;          //全部關閉
  159.                                         delay(50);
  160.                         }
  161.                            
  162.                         delay(1000);
  163.                         P2=0x3f;
  164.                         P0=0x60;        P1=0x06;        delay(1000);
  165.                         P2=0x00;        P0=0xff;        P1=0xff;        delay(1000);
  166. }
  167. //============================================================================================
  168. void zuoyou()//****************************************從左向右亮
  169. {
  170.         for(a=0;a<8;a++)
  171.                  {
  172.                          P2=0x00;
  173.                          P1=0x11;        P0=0x11;         delay(50);
  174.                         P1=0x22;        P0=0x22;         delay(50);
  175.                         P1=0x44;        P0=0x44;         delay(50);
  176.                         P1=0x88;        P0=0x88;         delay(50);        
  177.                         P2=0xff;        P0=0x00;            P1=0x00;          //全部關閉
  178.                                 delay(50);
  179. }
  180. }
  181. //============================================================================================
  182. void houqian()//******************************************從后向前
  183. {
  184. for(a=0;a<8;a++)
  185. {
  186.                 P2=0x00;
  187.                         P0=0x0f;        delay(50);                        
  188.                         P0=0xf0;        delay(50);         P0=0x00;
  189.                         P1=0x0f;        delay(50);
  190.                         P1=0xf0;        delay(50);        
  191.                         P2=0xff;        P0=0x00;        P1=0x00;          //全部關閉
  192.                  delay(400);
  193. }
  194. }
  195. //============================================================================================
  196. void ceng()//***************************************1234層循環亮
  197. {
  198. for(a=0;a<15;a++)
  199. {
  200.         P0=0xff;P1=0xff;
  201.            P2=0x7f;                delay(50);
  202.            P2=0xbf;                delay(50);
  203.            P2=0xdf;                delay(50);
  204.            P2=0xef;                delay(150);
  205.            P2=0xdf;                delay(50);
  206.            P2=0xbf;                delay(50);
  207.            P2=0xff;        P0=P1=0x00;          //全部關閉
  208. }
  209. }
  210. void hangl()//**************************************************行外圍逐個亮
  211. {
  212. for(a=0;a<8;a++)
  213. {
  214.                  P0=0x88;        P1=0x88;        
  215.          P2=0xef;                                           delay(50);
  216.          P2=0xdf;                                        delay(50);
  217.          P2=0xbf;                                        delay(50);
  218.             P2=0x7f;                                        delay(50);
  219.                  P0=0x44;        P1=0x44;        delay(50);
  220.                  P0=0x22;        P1=0x22;        delay(50);
  221.                  P0=0x11;        P1=0x11;        delay(50);
  222.         P2=0xbf;                                        delay(50);
  223.     P2=0xdf;                                        delay(50);
  224.         P2=0xef;                                       
  225.                  P0=0x11;        P1=0x11;        delay(50);
  226.                  P0=0x22;        P1=0x22;        delay(50);
  227.                  P0=0x44;        P1=0x44;        delay(50);
  228. }           P2=0xff;        P0=P1=0x00;          //全部關閉
  229. }

  230. void rao()
  231. {          P2=0xff;        P0=P1=0x00;          //全部關閉
  232. //-----------------------------------------------------------------------------------------

  233.                                  P2=0x7f;                P1=0xf0;  delay(200);
  234.                                  P2=0x3f;                                           delay(200);
  235.                                  P2=0x1f;                                           delay(200);
  236.                                  P2=0x0f;                                           delay(800);
  237.                                                                     
  238.                                                                         P1=0x70;  delay(200);
  239.                                                                         P1=0xb0;  delay(200);
  240.                                                                         P1=0xd0;  delay(200);
  241.                                                                         P1=0xe0;  delay(200);          P1=0X00;
  242.                                  for(a=0;a<4;a++)
  243.                                 {
  244.                                 P1=0x71;                                           delay(100);
  245.                                 P1=0x31;                P0=0x10;  delay(100);
  246.                                 P1=0x11;                P0=0x11;        delay(100);
  247.                                 P1=0x01;                P0=0x13;  delay(100);
  248.                                 P1=0X00;                    P0=0x17;  delay(100);
  249.                                                                         P0=0x0f;        delay(100);
  250.                                                                         P0=0x8e;  delay(100);
  251.                             P1=0x08;                P0=0x46;  delay(100);
  252.                                 P1=0x88;                P0=0x88; delay(100);
  253.                                 P1=0xc8;                P0=0x80; delay(100);
  254.                                 P1=0xe8;                P0=0X00;          delay(100);
  255.                                 P1=0xf0;                                          delay(100);
  256.                                 }
  257.                                 P1=0x70;                delay(200);
  258.                                 P1=0x30;                delay(200);
  259.                                 for(a=0;a<4;a++)
  260.                                 {
  261.                                  P1=0x10;         delay(200);        P1=0X00;  delay(200);
  262.                                 } P1=0x10;
  263.                                 P2=0x1f;                delay(200);
  264.                                 P2=0x3f;                delay(200);
  265.                                 P2=0x7f;                delay(500);
  266.                                 P2=0Xff;P0=0X00;P1=0X00;
  267. }                 
  268. //============================================================================================
  269. void key()        //***********************************按鍵檢測
  270. {
  271.                   if(k1==0)                //********************左鍵
  272.                   {         if(kk==6)
  273.                                   {kk=0;}                  
  274.                   delay(10);
  275.                           if(k1==0)
  276.                         {
  277.                                 while(!k1);
  278.                                 if(kk==1)
  279.                                         {shanshuo();}        //全部以200ms的速度閃爍
  280.                                 if(kk==2)
  281.                                         {hangl();}                   //行外圍逐列個亮
  282.                                 if(kk==5)
  283.                                         {houqian();}         //          從后向前
  284.                                 if(kk==3)
  285.                                         {zuoyou();}                //          從左向右亮
  286.                                 if(kk==4)
  287.                                         {ceng();}                //         1234層循環亮
  288.                                 if(kk==0)
  289.                                         {rao();}                                
  290.                         }
  291.                           kk++;
  292.                   }

  293.                   if(k3==0)        //***************************右鍵
  294.                   {
  295.                           delay(10);
  296.                         if(k3==0)
  297.                         {        while(!k3);
  298.                                 cai=~cai;
  299.                         }
  300.                   }

  301.                   if(k2==0)           //***************************中鍵
  302.                   {
  303.                           delay(10);
  304.                         if(k2==0)
  305.                         {         
  306.                                 while(!k2);
  307.                                    InitialSound();
  308.                                 Play(Music_Same,0,3,360);
  309.                 Delay1ms(500);
  310. //        P0=0x00;

  311.                         }
  312.                   }
  313. }
  314. void BeepTimer0(void) interrupt 1        //音符發生中斷
  315. {
  316.         yy = !yy;
  317.         TH0    = Sound_Temp_TH0;
  318.          TL0    = Sound_Temp_TL0;
  319. }
  320. void Play(uchar *Sound,uchar Signature,unsigned Octachord,uint Speed)
  321. {
  322.         uint NewFreTab[12];                //新的頻率表
  323.         uchar i,j;
  324.         uint Point,LDiv,LDiv0,LDiv1,LDiv2,LDiv4,CurrentFre,Temp_T,SoundLength;
  325.         uchar Tone,Length,SL,SH,SM,SLen,XG,FD;
  326.         for(i=0;i<12;i++)                                 // 根據調號及升降八度來生成新的頻率表
  327.         {
  328.                 j = i + Signature;
  329.                 if(j > 11)
  330.                 {
  331.                         j = j-12;
  332.                         NewFreTab[i] = FreTab[j]*2;
  333.                 }
  334.                 else
  335.                         NewFreTab[i] = FreTab[j];

  336.                 if(Octachord == 1)
  337.                         NewFreTab[i]>>=2;
  338.                 else if(Octachord == 3)
  339.                         NewFreTab[i]<<=2;
  340.         }                                                                        
  341.         
  342.         SoundLength = 0;
  343.         while(Sound[SoundLength] != 0x00)        //計算歌曲長度
  344.         {
  345.                 SoundLength+=2;
  346.         }

  347.         Point = 0;
  348.         Tone   = Sound[Point];        
  349.         Length = Sound[Point+1];                         // 讀出第一個音符和它時時值
  350.         
  351.         LDiv0 = 12000/Speed;                                // 算出1分音符的長度(幾個10ms)         
  352.         LDiv4 = LDiv0/4;                                         // 算出4分音符的長度
  353.         LDiv4 = LDiv4-LDiv4*SOUND_SPACE;         // 普通音最長間隔標準
  354.         TR0          = 0;
  355.         TR1   = 1;
  356.         while(Point < SoundLength)
  357.         {
  358.                 SL=Tone%10;                                                                 //計算出音符
  359.                 SM=Tone/10%10;                                                                 //計算出高低音
  360.                 SH=Tone/100;                                                                 //計算出是否升半
  361.                 CurrentFre = NewFreTab[SignTab[SL-1]+SH];         //查出對應音符的頻率         
  362.                 if(SL!=0)
  363.                 {
  364.                         if (SM==1) CurrentFre >>= 2;                 //低音
  365.                         if (SM==3) CurrentFre <<= 2;                 //高音
  366.                         Temp_T = 65536-(50000/CurrentFre)*10/(12000000/SYSTEM_OSC);//計算計數器初值
  367.                         Sound_Temp_TH0 = Temp_T/256;
  368.                         Sound_Temp_TL0 = Temp_T%256;
  369.                         TH0 = Sound_Temp_TH0;  
  370.                         TL0 = Sound_Temp_TL0 + 12; //加12是對中斷延時的補償
  371.                 }
  372.                 SLen=LengthTab[Length%10];         //算出是幾分音符
  373.                 XG=Length/10%10;                         //算出音符類型(0普通1連音2頓音)
  374.                 FD=Length/100;
  375.                 LDiv=LDiv0/SLen;                         //算出連音音符演奏的長度(多少個10ms)
  376.                 if (FD==1)
  377.                         LDiv=LDiv+LDiv/2;
  378.                 if(XG!=1)        
  379.                         if(XG==0)                                 //算出普通音符的演奏長度
  380.                                 if (SLen<=4)        
  381.                                         LDiv1=LDiv-LDiv4;
  382.                                 else
  383.                                         LDiv1=LDiv*SOUND_SPACE;
  384.                         else
  385.                                 LDiv1=LDiv/2;                 //算出頓音的演奏長度
  386.                 else
  387.                         LDiv1=LDiv;
  388.                 if(SL==0) LDiv1=0;
  389.                         LDiv2=LDiv-LDiv1;                 //算出不發音的長度
  390.                   if (SL!=0)
  391.                 {
  392.                         TR0=1;
  393.                         for(i=LDiv1;i>0;i--)         //發規定長度的音
  394.                         {
  395.                                 while(TF1==0);
  396.                                 TH1 = Sound_Temp_TH1;
  397.                                 TL1 = Sound_Temp_TL1;
  398.                                 TF1=0;
  399.                         }
  400.                 }
  401.                 if(LDiv2!=0)
  402.                 {
  403.                         TR0=0; yy=0;
  404.                         for(i=LDiv2;i>0;i--)         //音符間的間隔
  405.                         {
  406.                                 while(TF1==0);
  407.                                 TH1 = Sound_Temp_TH1;
  408.                                 TL1 = Sound_Temp_TL1;
  409.                                 TF1=0;
  410.                         }
  411.                 }
  412.                 Point+=2;
  413.                 Tone=Sound[Point];
  414.                 Length=Sound[Point+1];
  415.         }                                         
  416.         yy = 0;
  417. }
復制代碼

所有資料下載:
4-4-4光立方.rar (33.53 KB, 下載次數: 139)



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏11 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:143435 發表于 2016-10-19 16:49 | 只看該作者
很有幫助呢..
回復

使用道具 舉報

板凳
ID:155782 發表于 2016-12-19 12:05 | 只看該作者
好東西。。。。。
回復

使用道具 舉報

地板
ID:138936 發表于 2017-2-13 15:15 | 只看該作者
好東西最近一直在看這玩意兒呢
回復

使用道具 舉報

5#
ID:166089 發表于 2017-4-24 01:15 來自手機 | 只看該作者
444光立方學習了
回復

使用道具 舉報

6#
ID:266802 發表于 2017-12-27 16:11 來自手機 | 只看該作者
很好的資料
回復

使用道具 舉報

7#
ID:277136 發表于 2018-1-18 09:35 | 只看該作者
感謝樓主分享!!
回復

使用道具 舉報

8#
ID:289376 發表于 2018-3-22 09:43 | 只看該作者

感謝樓主分享!
回復

使用道具 舉報

9#
ID:284023 發表于 2018-3-23 13:12 | 只看該作者
準備試試,謝謝樓主分享!!
回復

使用道具 舉報

10#
ID:299588 發表于 2018-4-9 10:32 來自手機 | 只看該作者
大師頂
回復

使用道具 舉報

11#
ID:303913 發表于 2018-4-9 20:39 | 只看該作者
準備試試,謝謝樓主分享!!
回復

使用道具 舉報

12#
ID:432687 發表于 2019-5-26 03:06 來自手機 | 只看該作者
非常感謝你。 這是一個很棒的網站。 在這里,您可以真正了解有關中國STC  -  MCU的許多信息。 我很著迷有多少人在這里提出他們的想法。
回復

使用道具 舉報

13#
ID:540797 發表于 2019-5-26 16:31 | 只看該作者
大神求帶飛
回復

使用道具 舉報

14#
ID:537142 發表于 2019-5-28 15:19 來自手機 | 只看該作者
這個可以學習學習
回復

使用道具 舉報

15#
ID:542523 發表于 2019-5-29 12:37 | 只看該作者
有視頻就更好了,如果我沒猜錯的話樓主是用了十六個下拉引腳,然后將每一層的接在一起。我最近也想做一個立方燈。
回復

使用道具 舉報

16#
ID:546335 發表于 2019-5-29 15:05 | 只看該作者
很不錯,實用的干貨
回復

使用道具 舉報

17#
ID:628342 發表于 2019-11-3 17:12 來自手機 | 只看該作者
非常好的介紹,最近我也準備弄一個444光立方呢,謝謝樓主分享啊!
回復

使用道具 舉報

18#
ID:509174 發表于 2019-11-13 22:05 | 只看該作者
挺全,感謝分享。
回復

使用道具 舉報

19#
ID:26429 發表于 2019-11-14 13:12 | 只看該作者
謝謝lz的奉獻
回復

使用道具 舉報

20#
ID:105805 發表于 2019-11-14 18:02 | 只看該作者
好帖,收藏收藏
回復

使用道具 舉報

21#
ID:634320 發表于 2019-11-21 13:17 | 只看該作者
有電路圖嗎
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本午夜免费福利视频 | 亚洲精品在线观看视频 | 免费在线a视频 | 亚洲一区二区三区观看 | 日韩成人 | 天天干天天操天天爽 | 99re视频在线免费观看 | 国产电影精品久久 | 精品婷婷| 超碰91在线 | 国产小视频在线观看 | 精品国产乱码久久久久久影片 | 亚洲成人精品在线 | 亚洲综合大片69999 | 国产二区在线播放 | 色婷婷久久 | 亚洲一区视频在线 | 国产午夜视频 | 午夜影院网站 | 亚洲一区国产精品 | 在线视频一区二区三区 | 在线观看一区 | 欧美一区免费 | 成人在线免费观看 | av手机免费在线观看 | 久久精品日产第一区二区三区 | 欧美日韩国产一区二区三区 | 精品久久久久久久久久久久 | 在线中文字幕亚洲 | 国产乱码精品一区二区三区忘忧草 | 久久蜜桃av一区二区天堂 | 岛国精品 | 午夜看片网站 | 国产激情视频网站 | 日韩欧美中文在线 | 国产特一级黄色片 | 亚洲少妇综合网 | 青青草国产在线观看 | 国产一二三区精品视频 | 在线观看国产视频 | 久久久久久久久久久久一区二区 |