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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機控制LED點陣顯示囧

[復制鏈接]
跳轉到指定樓層
樓主
ID:72519 發表于 2015-1-22 01:55 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. #include <REG51.H>
  2. #include <intrins.h>
  3. #define  NOP() _nop_()  // 定義空指令 ,這個函數在庫 <intrins.h> 中

  4. //SPI IO
  5. sbit MOSIO = P3^4;
  6. sbit R_CLK = P3^5;
  7. sbit S_CLK = P3^6;


  8. //點陣顯示數組
  9. unsigned char code tab0[] = {0x00, 0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80,
  10.                              0x01, 0x00, 0x02, 0x00, 0x04, 0x00, 0x08, 0x00, 0x10, 0x00, 0x20, 0x00, 0x40, 0x00, 0x80, 0x00};

  11. unsigned char code tab1[] ={0,0,254,127,2,64,66,66,34,68,18,72,2,64,2,64,242,79,18,72,18,72,18,72,242,79,2,64,254,127,0,0};



  12. //函數聲明
  13. void HC595SendData(  unsigned char BT3, unsigned char BT2,unsigned char BT1,unsigned char BT0);
  14.                                                                                                                                                                                        
  15. /*************主函數*****************************/        
  16. void main(void)
  17. {
  18.    int k,i,ms;
  19.    i = 16;                                                                                                                                  //顯示時間
  20.    while(1)
  21.    {
  22.      for(ms = i; ms > 0; ms--)
  23.         {
  24.        for(k = 0; k < 16; k++)                                                                                                //顯示囧
  25.            {        
  26.          HC595SendData(~tab1[2*k +1],~tab1[2*k],tab0[2*k],tab0[2*k + 1]);                 
  27.            }
  28.         }                                                            

  29.         
  30.    }
  31. }

  32. /*********************************************************************************************************
  33. ** 函數名稱: HC595SendData
  34. ** 功能描述: 向SPI總線發送數據
  35. *********************************************************************************************************/
  36. void HC595SendData(  unsigned char BT3, unsigned char BT2,unsigned char BT1,unsigned char BT0)
  37. {  
  38.   unsigned char i;
  39.   for(i = 0; i < 32; i++)
  40.    {
  41.    if(i > 23 )
  42.    {
  43.       if((BT0 << (i - 24)) & 0x80)
  44.       {
  45.             MOSIO = 1;
  46.           }
  47.           else
  48.           {
  49.             MOSIO = 0;
  50.           }
  51.    }
  52.    
  53.    else if(i > 15 & i < 24 )
  54.    {
  55.         if((BT1 << (i - 16)) & 0x80)  //set dataline high  0X80000000  最高位與SendVal左移的最高位 進行邏輯運算
  56.       {
  57.             MOSIO = 1;                                        // 如果為真 MOSIO = 1
  58.           }
  59.         else
  60.           {
  61.             MOSIO = 0;                                    
  62.           }        
  63.    }


  64.     else if(i < 16 & i > 7 )
  65.    {
  66.       if((BT2 << (i - 8)) & 0x80)
  67.       {
  68.             MOSIO = 1;
  69.           }
  70.           else
  71.           {
  72.             MOSIO = 0;
  73.           }
  74.    }
  75.    

  76.         else
  77.         {
  78.                   if((BT3 << i) & 0x80)  //set dataline high  0X80000000  最高位 進行邏輯運算
  79.       {
  80.             MOSIO = 1;                                        // 如果為真 MOSIO = 1
  81.           }
  82.         else
  83.           {
  84.             MOSIO = 0;                                    
  85.           }        
  86.         }
  87.         S_CLK = 0;
  88.         NOP();        //產生方形波
  89.         S_CLK = 1;        
  90.    }
  91.    
  92.   R_CLK = 0; //set dataline low
  93. NOP();   //產生方形波
  94.   R_CLK = 1;
  95. }
復制代碼


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

使用道具 舉報

沙發
ID:155598 發表于 2017-3-30 15:57 | 只看該作者
HC595SendData(~tab6[2*k +1],~tab6[2*k],tab0[2*k],tab0[2*k + 1]);這一步能解釋下嗎?
還有點陣顯示數組怎么來的
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日本精品久久 | 精品欧美一区免费观看α√ | jdav视频在线观看免费 | 视频一区二区在线 | 欧美日韩第一页 | 日韩视频一区二区在线 | 亚洲风情在线观看 | 九色视频网 | 一本大道久久a久久精二百 国产成人免费在线 | 精品久久久久久久 | 国产成人精品一区二 | 精品99在线 | 国产精品一区久久久久 | xxxcom在线观看 | 久色视频在线 | 日日噜噜夜夜爽爽狠狠 | 国产精品海角社区在线观看 | 祝你幸福电影在线观看 | 五月婷婷激情网 | 精品av| 2020国产在线 | 国产成人在线一区二区 | www.色午夜.com | 久久51| 欧美天堂在线 | 天天躁日日躁狠狠躁2018小说 | 欧美一级片在线看 | 成人精品毛片 | 爱爱爱av | 国产精品久久久久久久久久久免费看 | 99re在线| 久久一区二区视频 | 国产成人精品一区二区三区在线观看 | 中文字幕亚洲一区 | 亚洲美女一区 | 亚洲欧美综合 | 一级做a爰片性色毛片 | 欧美日韩a | 亚洲美乳中文字幕 | 日韩免费一区 | 91精品国产91 |