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

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

        基于51單片機之74HC595實驗例程

        作者:未知   來源:CaKen的空間   點擊數:  更新時間:2014年08月17日   【字體:

         **************************  Copyright(C)CaKe  *****************************************

        ========================================================================================
        ==============**文件名    : main.c              ==============
        ==============**作者      : CaKen              ==============
        ==============**版本號    : V1.0               ==============
        ==============**時間      : 2014.08.16               ==============
        ==============**功能描述  : 74HC595實驗測試          ==============
        ========================================================================================
        ****************************************************************************************
         
         
        #include <reg52.h>      //52芯片管腳定義頭文件
        #include <intrins.h>      //內部包含延時函數 _nop_();
         
        #define uchar unsigned char
        #define uint  unsigned int
         
        //uchar code DAT[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};  //陽
          uchar code DAT[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};  //陰
         
        sbit  SCLK_595  =P2^0;   //移位時鐘脈沖      
        sbit  SDATA_595 =P2^1;   //串行數據輸入    
        sbit  RCK_595   =P2^2;   //輸出鎖存器控制脈沖
         
        uchar temp;
         
        *****************************************************************************************
        函數名:延時子程序
        調  用:delay();
        參  數:
        返回值:
        結  果:
        備  注:
        ******************************************************************************************
        void delay(int i)    //延時大小與i有關
        {
           int j;
           while(i--)
           for(j=255;j>0;j--);
         
        }
         
        *****************************************************************************************
        函數名:74HC595初始化
        調  用:HC595_Init();
        參  數:
        返回值:
        結  果:
        備  注:
        ******************************************************************************************
        void HC595_Init(void)   
        {
           uchar j;
           for (j=0;j<8;j++)
            {
              temp=temp<<1 ;    //會把最高位元移入CY內
              SDATA_595=CY;     //把CY的值給P2^0,也就是準備好資料(0或1)給595
              SCLK_595=1;          //上升沿發生移位
               _nop_();
               _nop_();
              SCLK_595=0;
            }
         
         RCK_595=0;
            _nop_();
            _nop_();
            RCK_595=1;       
        }
        *****************************************************************************************
        函數名:主函數
        調  用:
        參  數:
        返回值:
        結  果:
        備  注:
        ******************************************************************************************
        void main()
        {
            SCLK_595=0;
            RCK_595 =1;
         
           while(1)           
            {
              uchar i;
              for (i=0; i<8; i++)
               {
                temp=DAT[i];             
                HC595_Init();
                delay(100);
               }
            }
        }
        關閉窗口
        欧美性色欧美精品视频,99热这里只有精品mp4,日韩高清亚洲日韩精品一区二区,2020国自产拍精品高潮