<acronym id="xonnx"></acronym>
      <td id="xonnx"></td>
    1. <pre id="xonnx"></pre>

      1. 專注電子技術學習與研究
        當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

        單片機控制點陣矩形收縮閃爍源程序

        作者:寒竹子   來源:本站原創   點擊數:  更新時間:2014年03月21日   【字體:

        本程序所用的原理圖下載: 點這里 ,單片機芯片使用的stc89c52;找到點陣部分的原理圖即可.這是一整個單片機開發板的電路圖其他的忽略

        以下是程序源碼:
        /**
        *功能:矩形收縮閃爍
        *作者:徐冉
        *日期:2013-06-26-22:13
        *備注:程序調試成功
        **/
        /********AT89C52-RC MCU****************/
        /*************51hei開發板**************/
        #include <reg52.h>
        typedef unsigned int uint;
        typedef unsigned char uchar;
        sbit din = P2^0;
        sbit cs = P2^1;
        sbit clk = P2^2;
        uchar code dis[][8] ={
               {0xFF,0x81,0x81,0x81,0x81,0x81,0x81,0xFF},
                  {0x00,0x7E,0x42,0x42,0x42,0x42,0x7E,0x00},
               {0x00,0x00,0x3C,0x24,0x24,0x3C,0x00,0x00},
               {0x00,0x00,0x00,0x18,0x18,0x00,0x00,0x00}
               };
        //延時xms           
        void delay(uint xms)
        {
         uint x, y;
         for(x = xms; x > 0; x--)
          for(y = 110; y > 0; y--);
        }
        //寫一個字節
        void write_byte(uchar date)
        {
         uchar i, temp;
         temp = date;
         cs = 0; //選通MAX7219
         for(i = 0; i < 8; i++)
         {
          clk = 0;
          din = temp & 0x80;
          temp <<= 1;
          clk = 1; //時鐘上升沿脈沖
         }
        }
        //寫MAX7219
        void write_max7219(uchar address, uchar date)
        {
         cs = 0;//選通MAX7219
         write_byte(address);
         write_byte(date);
         cs = 1;
        }
        //MAX7219初始化
        void max7219_init()
        {
         write_max7219(0x0c, 0x01);
         write_max7219(0x09, 0x00);
         write_max7219(0x0a, 0x05);
         write_max7219(0x0b, 0x07);
         write_max7219(0x0f, 0x00);
        }
        //主程序
        void main(void)
        {
         uchar i, j;
         delay(50);//稍作延時
         max7219_init();
         while(1)
         {
          for(i = 0; i < 4; i++)
          {
           for(j = 0; j < 8; j++)
           {
            write_max7219(j+1, dis[i][j]);//寫入MAX7219數據
           }
           delay(100); //延時100ms
          }
         }
        }
         

        關閉窗口

        相關文章

        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮