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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

基于595與138 16x16點陣設計源碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:270937 發表于 2018-3-20 09:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
基于595與13816x16點陣設計

單片機源程序:
  1. #include<reg52.h>
  2. #include "intrins.h"
  3. #define uchar unsigned char
  4. #define uint  unsigned int
  5.   
  6. sbit SRCK =P1^7;   //移位時鐘脈沖      
  7. sbit RCK  =P1^6;   //串行數據輸入   
  8. sbit S_IN =P1^5;   //輸出鎖存器控制脈沖
  9. sbit EN   =P1^4;
  10. sbit A2   =P1^3;
  11. sbit A1   =P1^2;
  12. sbit A0   =P1^1;                  
  13. sbit D    =P1^0;



  14. uchar BUFF[4];
  15. uchar temp1,temp2,j,zim,shang,shu;

  16. uchar code tab1[32]={0x7f,0xff,0xbf,0xff,0xdf,0xff,0xef,0xff,0xf7,0xff,0xfb,0xff,0xfd,0xff,0xfe,0xff,
  17.                                         0xff,0x7f,0xff,0xbf,0xff,0xdf,0xff,0xef,0xff,0xf7,0xff,0xfb,0xff,0xfd,0xff,0xfe,};
  18. uchar code tabh[16]={0x10,0x18,0x14,0x1c,0x12,0x1a,0x16,0x1e,0x11,0x19,0x15,0x1d,0x13,0x1b,0x17,0x1f};
  19. uchar code zi1[]={
  20. /*--  文字:  電  --*/
  21. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  22. 0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,
  23. 0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,0xDE,0xF5,0xFE,0xFD,0xFE,0xFD,0xFF,0x01,

  24. /*--  文字:  子  --*/
  25. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  26. 0xFF,0xFF,0xE0,0x07,0xFF,0xEF,0xFF,0xDF,0xFF,0xBF,0xFE,0x7F,0xFE,0xFF,0x00,0x01,
  27. 0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFA,0xFF,0xFC,0xFF,0xFF,0xFF,


  28. /*--  文字:  實  --*/
  29. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  30. 0xFD,0xFF,0xFE,0xFF,0x80,0x01,0xBF,0xFD,0x77,0x7B,0xFB,0x7F,0xFB,0x7F,0xEF,0x7F,
  31. 0xF7,0x7F,0xF7,0x7F,0x00,0x01,0xFE,0xBF,0xFD,0xDF,0xFB,0xEF,0xE7,0xF7,0x9F,0xFB,

  32. /*--  文字:  驗  --*/
  33. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  34. 0xFF,0xDF,0x87,0xDF,0xF7,0xAF,0xB7,0xAF,0xB7,0x77,0xB6,0xFB,0xB5,0x05,0x83,0xFF,
  35. 0xFB,0xBB,0xFB,0xDB,0x02,0xDB,0xFB,0x57,0xFB,0x77,0xD7,0xEF,0xEC,0x01,0xFF,0xFF,


  36. /*--  文字:  室  --*/
  37. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  38. 0xFD,0xFF,0xFE,0xFF,0x80,0x01,0xBF,0xFD,0x7F,0xFB,0xC0,0x07,0xFB,0xFF,0xF7,0xDF,
  39. 0xE0,0x0F,0xFE,0xEF,0xFE,0xFF,0xC0,0x07,0xFE,0xFF,0xFE,0xFF,0x00,0x01,0xFF,0xFF,
  40. };
  41. //*******************************************************************************************************************************************************************
  42. uchar code zi2[]={
  43. /*--  文字:  電  --*/
  44. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  45. 0xFE,0x01,0xFE,0xFD,0xFE,0xFD,0xDE,0xF5,0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,
  46. 0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,

  47. /*--  文字:  子  --*/
  48. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  49. 0xFF,0xFF,0xFD,0xFF,0xFA,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,
  50. 0x00,0x01,0xFE,0xFF,0xFE,0x7F,0xFF,0xBF,0xFF,0xDF,0xFF,0xEF,0xE0,0x07,0xFF,0xFF,

  51. /*--  文字:  實  --*/
  52. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  53. 0x9F,0xFB,0xE7,0xF7,0xFB,0xEF,0xFD,0xDF,0xFE,0xBF,0x00,0x01,0xF7,0x7F,0xF7,0x7F,
  54. 0xEF,0x7F,0xFB,0x7F,0xFB,0x7F,0x77,0x7B,0xBF,0xFD,0x80,0x01,0xFE,0xFF,0xFD,0xFF,

  55. /*--  文字:  驗  --*/
  56. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  57. 0xFF,0xFF,0xEC,0x01,0xD7,0xEF,0xFB,0x77,0xFB,0x57,0x02,0xDB,0xFB,0xDB,0xFB,0xBB,
  58. 0x83,0xFF,0xB5,0x05,0xB6,0xFB,0xB7,0x77,0xB7,0xAF,0xF7,0xAF,0x87,0xDF,0xFF,0xDF,

  59. /*--  文字:  室  --*/
  60. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  61. 0xFF,0xFF,0x00,0x01,0xFE,0xFF,0xFE,0xFF,0xC0,0x07,0xFE,0xFF,0xFE,0xEF,0xE0,0x0F,
  62. 0xF7,0xDF,0xFB,0xFF,0xC0,0x07,0x7F,0xFB,0xBF,0xFD,0x80,0x01,0xFE,0xFF,0xFD,0xFF,
  63. };
  64. //*******************************************************************************************************************************************************************



  65. uchar code zi3[]={
  66. /*--  文字:  電  --*/
  67. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  68. 0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,
  69. 0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,0xDE,0xF5,0xFE,0xFD,0xFE,0xFD,0xFF,0x01,

  70. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  71. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  72. /*--  文字:  子  --*/
  73. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  74. 0xFF,0xFF,0xE0,0x07,0xFF,0xEF,0xFF,0xDF,0xFF,0xBF,0xFE,0x7F,0xFE,0xFF,0x00,0x01,
  75. 0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFA,0xFF,0xFC,0xFF,0xFF,0xFF,

  76. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  77. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  78. /*--  文字:  實  --*/
  79. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  80. 0xFD,0xFF,0xFE,0xFF,0x80,0x01,0xBF,0xFD,0x77,0x7B,0xFB,0x7F,0xFB,0x7F,0xEF,0x7F,
  81. 0xF7,0x7F,0xF7,0x7F,0x00,0x01,0xFE,0xBF,0xFD,0xDF,0xFB,0xEF,0xE7,0xF7,0x9F,0xFB,

  82. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  83. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  84. /*--  文字:  驗  --*/
  85. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  86. 0xFF,0xDF,0x87,0xDF,0xF7,0xAF,0xB7,0xAF,0xB7,0x77,0xB6,0xFB,0xB5,0x05,0x83,0xFF,
  87. 0xFB,0xBB,0xFB,0xDB,0x02,0xDB,0xFB,0x57,0xFB,0x77,0xD7,0xEF,0xEC,0x01,0xFF,0xFF,

  88. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  89. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  90. /*--  文字:  室  --*/
  91. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  92. 0xFD,0xFF,0xFE,0xFF,0x80,0x01,0xBF,0xFD,0x7F,0xFB,0xC0,0x07,0xFB,0xFF,0xF7,0xDF,
  93. 0xE0,0x0F,0xFE,0xEF,0xFE,0xFF,0xC0,0x07,0xFE,0xFF,0xFE,0xFF,0x00,0x01,0xFF,0xFF,

  94. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  95. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  96. };

  97. //*******************************************************************************************************************************************************************

  98. uchar code zi4[]={
  99. /*--  文字:  電  --*/
  100. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  101. 0xFE,0x01,0xFE,0xFD,0xFE,0xFD,0xDE,0xF5,0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,
  102. 0xC0,0x07,0xDE,0xF7,0xDE,0xF7,0xDE,0xF7,0xC0,0x07,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,

  103. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  104. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  105. /*--  文字:  子  --*/
  106. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  107. 0xFF,0xFF,0xFD,0xFF,0xFA,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,0xFE,0xFF,
  108. 0x00,0x01,0xFE,0xFF,0xFE,0x7F,0xFF,0xBF,0xFF,0xDF,0xFF,0xEF,0xE0,0x07,0xFF,0xFF,

  109. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  110. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  111. /*--  文字:  實  --*/
  112. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  113. 0x9F,0xFB,0xE7,0xF7,0xFB,0xEF,0xFD,0xDF,0xFE,0xBF,0x00,0x01,0xF7,0x7F,0xF7,0x7F,
  114. 0xEF,0x7F,0xFB,0x7F,0xFB,0x7F,0x77,0x7B,0xBF,0xFD,0x80,0x01,0xFE,0xFF,0xFD,0xFF,

  115. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  116. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  117. /*--  文字:  驗  --*/
  118. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  119. 0xFF,0xFF,0xEC,0x01,0xD7,0xEF,0xFB,0x77,0xFB,0x57,0x02,0xDB,0xFB,0xDB,0xFB,0xBB,
  120. 0x83,0xFF,0xB5,0x05,0xB6,0xFB,0xB7,0x77,0xB7,0xAF,0xF7,0xAF,0x87,0xDF,0xFF,0xDF,

  121. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  122. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,

  123. /*--  文字:  室  --*/
  124. /*--  宋體12;  此字體下對應的點陣為:寬x高=16x16   --*/
  125. 0xFF,0xFF,0x00,0x01,0xFE,0xFF,0xFE,0xFF,0xC0,0x07,0xFE,0xFF,0xFE,0xEF,0xE0,0x0F,
  126. 0xF7,0xDF,0xFB,0xFF,0xC0,0x07,0x7F,0xFB,0xBF,0xFD,0x80,0x01,0xFE,0xFF,0xFD,0xFF,

  127. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  128. 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
  129. };
  130. //*******************************************************************************************************************************************************************

  131. void delay(uint ms)   
  132. {
  133.         uint i,a;
  134.         for(i=ms;i>0;i--)
  135.                 for(a=125;a>0;a--);
  136. }

  137. void HC595(void)                           //595驅動
  138. {
  139.     uchar k;
  140.     for (k=8;k>0;k--)
  141.     {
  142.             temp2=temp2>>1 ;    //會把最高位元移入CY內
  143.         S_IN=CY;     //把CY的值給P2^0,也就是準備好資料(0或1)給595
  144.         SRCK=1;          //上升沿發生移位
  145.         _nop_();
  146.         _nop_();
  147.         SRCK=0;
  148.     }
  149.         for (k=8;k>0;k--)
  150.     {
  151.             temp1=temp1>>1 ;    //會把最高位元移入CY內
  152.         S_IN=CY;     //把CY的值給P2^0,也就是準備好資料(0或1)給595
  153.         SRCK=1;          //上升沿發生移位
  154.         _nop_();
  155.         _nop_();
  156.         SRCK=0;
  157.     }
  158.         RCK=1;
  159.     _nop_();
  160.     _nop_();
  161.     RCK=0;
  162. }
  163.                                           
  164. void shangyi()                         //上移
  165. {
  166.         uchar i,j,move;
  167.         for(i=0;i<8;i++)
  168.         {
  169.                 for(j=0;j<16;j++)
  170.                 {               
  171.        
  172.                         P1=tabh[j];
  173.                         EN=1;
  174.                         if(j==8)
  175.                         {
  176.                                 delay(50);
  177.                         }
  178.        
  179.                         temp1=zi1[2*j+move*2];
  180.                         temp2=zi1[2*j+1+move*2];
  181.                         HC595();
  182.                         EN=0;
  183.                         delay(4);
  184.                         EN=1;                                                                                                                                                  
  185.                 }
  186.         }
  187.         move++;

  188.         if(move>64)
  189.         {
  190.                 move=0;       
  191.         }
  192.         if(j>14)
  193.         {
  194.                 j=0;
  195.         }
  196. }

  197. void xiayi()                        //下移
  198. {
  199.         uchar i,j,move;               
  200.         for(i=0;i<8;i++)
  201.         {
  202.                 for(j=0;j<16;j++)
  203.                 {               
  204.        
  205.                         P1=tabh[15-j];
  206.                         EN=1;
  207.                         if(j==7)
  208.                         {
  209.                                 delay(50);
  210.                         }
  211.                
  212.                         temp1=zi2[2*j+move*2];
  213.                         temp2=zi2[2*j+1+move*2];
  214.                         HC595();
  215.                         EN=0;
  216.                         delay(4);
  217.                         EN=1;
  218.                 }                                                                                                                                                  
  219.         }
  220.         move++;

  221.         if(move>64)
  222.         {
  223.                 move=0;
  224.                 shu=0;       
  225.         }

  226.         if(j>14)
  227.         {
  228.                 j=0;
  229.         }       
  230. }

  231. void zuoyishuju()                //左移數據處理
  232. {
  233.         uchar s;
  234.         for(s=0;s<2;s++)
  235.         {
  236.                 BUFF[2*s]=zi1[32*s+2*j+32*zim];
  237.                 BUFF[2*s+1]=zi1[32*s+1+2*j+32*zim];
  238.                 delay(3);
  239.         }
  240. }

  241. void youyishuju()                //右移數據處理
  242. {
  243.         uchar s;
  244.         for(s=0;s<2;s++)
  245.         {
  246.                 BUFF[2*s]=  zi1[32*s+2*j+1+32*zim];
  247.                 BUFF[2*s+1]=zi1[32*s+2*j+32*zim];
  248.                 delay(3);
  249.         }
  250. }

  251. void zuoshangshuju()            //左上數據處理
  252. {
  253.         uchar s;
  254.         for(s=0;s<2;s++)
  255.         {
  256.                 BUFF[2*s]=  zi3[32*s+2*j+32*zim+shang*2];
  257.                 BUFF[2*s+1]=zi3[32*s+2*j+1+32*zim+shang*2];
  258.                 delay(3);
  259.         }
  260. }

  261. void youshangshuju()            //右上數據處理
  262. {
  263.         uchar s;
  264.         for(s=0;s<2;s++)
  265.         {
  266.                 BUFF[2*s]=  zi3[32*s+2*j+1+32*zim+shang*2];
  267.                 BUFF[2*s+1]=zi3[32*s+2*j+32*zim+shang*2];
  268.                 delay(3);
  269.         }
  270. }

  271. void zuoxiashuju()                    //左下數據處理
  272. {
  273.         uchar s;
  274.         for(s=0;s<2;s++)
  275.         {
  276.                 BUFF[2*s]=  zi4[32*s+2*j+32*zim+shang*2];
  277.                 BUFF[2*s+1]=zi4[32*s+2*j+1+32*zim+shang*2];
  278.                 delay(3);
  279.         }
  280. }

  281. void youxiashuju()                    //右下數據處理
  282. {
  283.         uchar s;
  284.         for(s=0;s<2;s++)
  285.         {
  286.                 BUFF[2*s]=  zi4[32*s+2*j+1+32*zim+shang*2];
  287.                 BUFF[2*s+1]=zi4[32*s+2*j+32*zim+shang*2];
  288.                 delay(3);
  289.         }
  290. }

  291. void zuoyi()                            //左移
  292. {
  293.         uchar t,u,lie;
  294.                 for(u=0;u<8;u++)
  295.                 {
  296.                         for(j=0;j<16;j++)
  297.                         {
  298.                                 P1=tabh[j];
  299.                
  300.                                 zuoyishuju();
  301.                
  302.                                 temp1=(BUFF[t]<<lie)|(BUFF[t+1]>>(8-lie));
  303.                                 temp2=(BUFF[t+1]<<lie)|(BUFF[t+2]>>(8-lie));
  304.                                 HC595();
  305.                                 EN=0;
  306.                                 delay(5);
  307.                         }
  308.                 }

  309.                 if(++lie>7)
  310.                 {
  311.                         lie=0;
  312.                         t++;
  313.                 }

  314.                 if(t>1)
  315.                 {
  316.                         t=0;
  317.                         zim++;
  318.                 }

  319.                 if(zim>3)
  320.                 {
  321.                         zim=0;
  322.                 }                       
  323. }

  324. void youyi()                            //右移
  325. {
  326.         uchar u,lie,t;
  327.         {
  328.                 for(u=0;u<8;u++)
  329.                 {
  330.                         for(j=0;j<16;j++)
  331.                         {
  332.                                 P1=tabh[j];
  333.                        
  334.                                 youyishuju();
  335.                        
  336.                                 temp2=(BUFF[t]>>lie)|(BUFF[t+1]<<(8-lie));
  337.                                 temp1=(BUFF[t+1]>>lie)|(BUFF[t+2]<<(8-lie));
  338.                                 HC595();
  339.                                 EN=0;
  340.                                 delay(5);
  341.                         }
  342.                 }
  343.         }
  344.        
  345.         if(++lie>7)
  346.         {
  347.                 lie=0;
  348.                 t++;
  349.         }
  350.        
  351.         if(t>1)
  352.         {
  353.                 t=0;
  354.                 zim++;
  355.         }
  356.        
  357.         if(zim>3)
  358.         {
  359.                 zim=0;
  360.         }
  361. }

  362. void zuoshang()                            //左上移
  363. {
  364.         uchar t,u,lie;
  365.                 for(u=0;u<8;u++)
  366.                 {
  367.                         for(j=0;j<16;j++)
  368.                         {
  369.                                 P1=tabh[j];
  370.                
  371.                                 zuoshangshuju();
  372.                
  373.                                 temp1=(BUFF[t]<<lie)|(BUFF[t+1]>>(8-lie));
  374.                                 temp2=(BUFF[t+1]<<lie)|(BUFF[t+2]>>(8-lie));
  375.                                 HC595();
  376.                                 EN=0;
  377.                                 delay(5);
  378.                         }
  379.                 }

  380.                 if(++shang>15)
  381.                 {
  382.                         shang=0;
  383.                 }

  384.                 if(++lie>7)
  385.                 {
  386.                         lie=0;
  387.                         t++;
  388.                 }

  389.                 if(t>1)
  390.                 {
  391.                         t=0;
  392.                         zim=zim+2;
  393.                 }

  394.                 if(zim>7)
  395.                 {
  396.                         zim=0;
  397.                 }       
  398. }                                                  
  399. void youshang()                        //右上移
  400. {
  401.                 uchar u,lie,t;
  402.         {
  403.                 for(u=0;u<8;u++)
  404.                 {
  405.                         for(j=0;j<16;j++)
  406.                         {
  407.                                 P1=tabh[j];
  408.                        
  409.                                 youshangshuju();
  410.                        
  411.                                 temp2=(BUFF[t]>>lie)|(BUFF[t+1]<<(8-lie));
  412.                                 temp1=(BUFF[t+1]>>lie)|(BUFF[t+2]<<(8-lie));
  413.                                 HC595();
  414.                                 EN=0;
  415.                                 delay(5);
  416.                         }
  417.                 }
  418.         }

  419.         if(++shang>15)
  420.                 {
  421.                         shang=0;
  422.                 }
  423.        
  424.         if(++lie>7)
  425.         {
  426.                 lie=0;
  427.                 t++;
  428.         }
  429.        
  430.         if(t>1)
  431.         {
  432.                 t=0;
  433.                 zim=zim+2;
  434.         }
  435.        
  436.         if(zim>7)
  437.         {
  438.                 zim=0;
  439.         }
  440. }

  441. void zuoxia()                            //左下移
  442. {
  443.         uchar t,u,lie;
  444.         for(u=0;u<8;u++)
  445.         {
  446.                 for(j=0;j<16;j++)
  447.                 {
  448.                         P1=tabh[15-j];
  449.                
  450.                         zuoxiashuju();
  451.                
  452.                         temp1=(BUFF[t]<<lie)|(BUFF[t+1]>>(8-lie));
  453.                         temp2=(BUFF[t+1]<<lie)|(BUFF[t+2]>>(8-lie));
  454.                         HC595();
  455.                         EN=0;
  456.                         delay(5);
  457.                 }
  458.         }

  459.         if(++shang>15)
  460.         {
  461.                 shang=0;
  462.         }

  463.         if(++lie>7)
  464.         {
  465.                 lie=0;
  466.                 t++;
  467.         }

  468.         if(t>1)
  469.         {
  470.                 t=0;
  471.                 zim=zim+2;
  472.         }

  473.         if(zim>7)
  474.         {
  475.                 zim=0;
  476.         }
  477. }

  478. void youxia()                        //右下移
  479. {
  480.                 uchar t,u,lie;
  481.         for(u=0;u<8;u++)
  482.         {
  483.                 for(j=0;j<16;j++)
  484.                 {
  485.                         P1=tabh[15-j];
  486.                
  487.                         youxiashuju();
  488.                
  489.                         temp2=(BUFF[t]>>lie)|(BUFF[t+1]<<(8-lie));
  490.                         temp1=(BUFF[t+1]>>lie)|(BUFF[t+2]<<(8-lie));
  491.                         HC595();
  492.                         EN=0;
  493.                         delay(5);
  494.                 }
  495.         }

  496.         if(++shang>15)
  497.         {
  498.                 shang=0;
  499.         }

  500.         if(++lie>7)
  501.         {
  502.                 lie=0;
  503.                 t++;
  504.         }

  505.         if(t>1)
  506.         {
  507.                 t=0;
  508.                 zim=zim+2;
  509.         }

  510.         if(zim>7)
  511.         {
  512.                 zim=0;
  513.         }
  514. }

  515. void main()
  516. {
  517.         SRCK=0;
  518.         RCK=1;
  519.         while(1)
  520.         {
  521.                 uchar yi,er,shan,si,wu,liu,qi,ba;
  522.                
  523.                 for(yi=0;yi<65;yi++)
  524.                 {
  525.                         shangyi();
  526.                 }
  527.                 delay(50);
  528.                 for(er=0;er<65;er++)
  529.                 {
  530.                         xiayi();
  531.                 }
  532.                 delay(50);
  533.                 for(shan=0;shan<64;shan++)
  534.                 {
  535.                         zuoyi();
  536.                 }
  537.                 delay(50);
  538.                 for(si=0;si<64;si++)
  539.                 {
  540.                         youyi();
  541.                 }
  542.                 delay(50);
  543.                 for(wu=0;wu<64;wu++)
  544.                 {
  545.                         zuoshang();
  546.                 }
  547.                 delay(50);
  548.                 for(liu=0;liu<64;liu++)
  549.                 {
  550.                         youshang();
  551.                 }
  552.                 delay(50);
  553.                 for(qi=0;qi<64;qi++)
  554.                 {
  555.                         zuoxia();
  556.                 }
  557.                 delay(50);
  558.                 for(ba=0;ba<64;ba++)
  559.                 {
  560.                         youxia();
  561.                 }
  562.                 delay(50);                                                 
  563.         }
  564. }
復制代碼

所有資料51hei提供下載:
16dianzhen.rar (35.76 KB, 下載次數: 37)


評分

參與人數 1黑幣 +5 收起 理由
任媛 + 5 很給力!

查看全部評分

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

使用道具 舉報

沙發
ID:251214 發表于 2018-3-22 22:26 | 只看該作者
正在學習,好貼。頂
回復

使用道具 舉報

板凳
ID:25213 發表于 2018-4-8 22:02 | 只看該作者
學習學習
回復

使用道具 舉報

地板
ID:303913 發表于 2018-4-9 23:44 | 只看該作者
準備試試,謝謝樓主分享!
回復

使用道具 舉報

5#
ID:282370 發表于 2018-4-12 10:47 | 只看該作者
為什么不放原理圖啊
回復

使用道具 舉報

6#
ID:658437 發表于 2020-2-15 21:09 | 只看該作者
正好需要,美滋滋
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产成人精品一区二区三区在线观看 | 亚洲 欧美 日韩在线 | 亚洲夜夜爽| 精品免费国产视频 | 日韩精品一区二区三区视频播放 | 中文字幕在线一区二区三区 | 国产精华一区 | 91视频国产精品 | 亚洲一区二区三区乱码aⅴ 四虎在线视频 | 国产在线www | 91色在线| 日韩精品久久久久 | 亚洲免费网址 | 日韩中文字幕一区二区 | 国产成人在线视频 | 特黄毛片 | 国产精品一区二区久久久久 | 一级毛片播放 | 婷婷丁香在线视频 | 99久久精品国产一区二区三区 | 成人精品一区二区三区中文字幕 | 成人精品一区亚洲午夜久久久 | 精品不卡 | 日韩综合在线播放 | 中文字幕1区 | 国产乱码精品一区二三赶尸艳谈 | 在线视频一区二区三区 | 日日操夜夜摸 | 国产激情在线观看 | 精品国产青草久久久久96 | 91影院 | 久草中文在线观看 | aⅴ色国产 欧美 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | av久久 | 麻豆一区| 精品国产乱码久久久久久丨区2区 | 成人精品一区二区 | 成人网址在线观看 | 黄色片视频 | 国产在线视频一区二区 |