日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 單片機程序-點陣LED

          單片機程序-點陣LED

          作者: 時間:2016-11-30 來源:網(wǎng)絡(luò) 收藏
          /****************點陣LED******************/

          /**
          *功能:點陣LED流動顯示5,4,3,2,1后,會一直顯示閃動的矩形
          *作者:徐冉
          *日期:2013-06-10
          *備注:已經(jīng)通過調(diào)試
          **/
          /*****************AT89C52-RC MCU****************/
          /***********************51hei開發(fā)板**************/

          本文引用地址:http://yuyingmama.com.cn/article/201611/323718.htm

          #include
          typedef unsigned int uint;//數(shù)據(jù)類型聲明優(yōu)于#define
          typedef unsigned char uchar;
          sbit max7219_din = P2^0;//MAX7219串行數(shù)據(jù)輸入端
          sbit max7219_cs = P2^1; //MAX7219片選端
          sbit max7219_clk = P2^2;//MAX7219時鐘端
          //顯示取模編碼表
          uchar code dis[11][8] = {
          {0x3C,0x20,0x20,0x3C,0x4,0x4,0x3C,0x0},//5
          {0x8,0x18,0x28,0x48,0xFE,0x8,0x8,0x8},//4
          {0x3E,0x2,0x2,0x3E,0x2,0x2,0x3E,0x0},//3
          {0x7E,0x2,0x2,0x7E,0x40,0x40,0x40,0x7E},//2
          {0x10,0x18,0x14,0x10,0x10,0x10,0x10,0x10},//1
          {0xff,0x81,0x81,0x81,0x81,0x81,0x81,0xff},
          {0,0x7e,0x42,0x42,0x42,0x42,0x7e,0},
          {0,0,0x3c,0x24,0x24,0x3c,0,0},
          {0,0,0,0x18,0x18,0,0,0,},
          {0,0,0,0,0,0,0,0}
          };
          //毫秒延時程序
          void delay(uint xms)
          {
          uint x, y;
          for(x = 0; x < xms; x++)
          for(y = 0; y < 110; y++);
          }
          //寫MAX7219字節(jié)數(shù)據(jù)
          void write_byte_max7219(uchar dat)
          {
          uchar i;
          max7219_cs = 0;//選通max7219
          for(i = 0; i < 8; i++)
          {
          max7219_clk = 0;
          max7219_din = dat & 0x80;
          dat <<= 1;
          max7219_clk = 1;
          }
          }
          //寫數(shù)據(jù)到MAX7219
          void write_max7219(uchar address, uchar dat)
          {
          max7219_cs = 0;
          write_byte_max7219(address);
          write_byte_max7219(dat);
          max7219_cs = 1;
          }
          //MAX7219初始化
          void max7219_init()
          {
          //譯碼模式
          write_max7219(0x09, 0x00);
          //亮度模式
          write_max7219(0x0a, 0x06);//亮度為13/32
          //設(shè)置掉電模式
          write_max7219(0x0c, 0x01);
          //掃描模式0~7
          write_max7219(0x0b, 0x07);
          //顯示檢測
          write_max7219(0x0f, 0x00);
          }
          //主程序
          void main(void)
          {
          uchar i = 0, j = 0;
          delay(50);
          max7219_init();
          while(1)
          {
          //流動顯示數(shù)字
          for(i = 0; i < 5; i++)
          {
          for(j = 0; j < 8; j++)
          { //此處的數(shù)據(jù)必須從0x01開始寫,否則寫不成功;
          write_max7219(j+1, dis[j]);
          }
          delay(500);
          }
          //矩形閃動
          while(1)
          {
          for(i = 5; i < 10; i++)
          {
          for(j = 0; j < 8; j++)
          { //此處的數(shù)據(jù)必須從0x01開始寫,否則寫不成功;
          write_max7219(j+1, dis[j]);
          }
          delay(100);
          }
          }
          }
          }



          關(guān)鍵詞: 單片機點陣LEDAT89C5

          評論


          技術(shù)專區(qū)

          關(guān)閉