• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > 用74HC165讀8個按鍵狀態

    用74HC165讀8個按鍵狀態

    作者: 時間:2018-08-01 來源:網絡 收藏

    本文介紹用74HC165讀8個按鍵狀態

    本文引用地址:http://www.czjhyjcfj.com/article/201808/384880.htm

    //程序名稱: 用74HC165讀8個按鍵狀態

    //晶振: 11.0592MHz;

    //MCU型號: STC89C52RC;

    //電路板型號: EBV-MV(51實驗板);

    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------

    //硬件連接:

    //EBVn-[VCC] -> MVn-[--VCC--]

    //EBVn-[GND] -> MVn-[//GND//]

    //MVn-{EX3}-[Y0] -> MVn-{EX2}-[L1]

    //MVn-{EX3}-[Y1] -> MVn-{EX2}-[L2]

    //MVn-{EX3}-[Y2] -> MVn-{EX2}-[L3]

    //MVn-{EX3}-[Y3] -> MVn-{EX2}-[L4]

    //MVn-{EX3}-[Y4] -> MVn-{EX2}-[L5]

    //MVn-{EX3}-[Y5] -> MVn-{EX2}-[L6]

    //MVn-{EX3}-[Y6] -> MVn-{EX2}-[L7]

    //MVn-{EX3}-[Y7] -> MVn-{EX2}-[L8]

    // -> MVn-{EX2}-(VCC)

    // -> MVn-{EX3}-(VCC)

    //EBVn-[P10] -> MVn-{EX3}-[A]

    //EBVn-[P11] -> MVn-{EX3}-[B]

    //EBVn-[P12] -> MVn-{EX3}-[C]

    //EBVn-[P13] -> MVn-{EX3}-[G1]

    //--------------------------------------------------------------------------

    //--------------------------------------------------------------------------

    //實驗結果:

    //控制74HC138的[A,B,C,G1]端口,使[Y0,Y1..Y7]輸出預期的值,LED實現了流水燈顯示

    //--------------------------------------------------------------------------

    //------------------------------------------------------

    //頭文件;

    #include

    #define HC165_nPL P3_5

    #define HC165_CK P3_6

    #define HC165_OUT P3_7

    //------------------------------------------------------

    void delay(void)

    {

    unsigned char i,j;

    for(i = 250;i > 0;i--)

    for(j = 200;j > 0;j--);

    }

    unsigned char HC165(void)

    {

    unsigned char i;

    unsigned char Temp;

    HC165_CK = 1;

    HC165_nPL = 0; //HC165讀按鍵

    HC165_nPL = 1; //暫停HC165讀按鍵

    Temp = 0;

    if(HC165_OUT == 1) Temp |= 0x01;

    for(i = 0;i 7;i++)

    {

    HC165_CK = 0;

    HC165_CK = 1;

    Temp = 1;

    if(HC165_OUT == 1)

    {

    Temp |= 0x01;

    }

    }

    HC165_CK = 0;

    return(Temp);

    }

    //------------------------------------------------------

    //程序入口;

    void main(void)

    {

    while(1)

    {

    P1 = HC165();

    delay();

    }

    }



    關鍵詞: 單片機

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 郧西县| 中牟县| 永修县| 卢湾区| 北辰区| 长汀县| 阿拉尔市| 自治县| 通化县| 洮南市| 黄梅县| 宜州市| 宜城市| 宣武区| 英德市| 兴山县| 静海县| 阳新县| 曲周县| 大田县| 大厂| 福建省| 翁源县| 宜良县| 临夏县| 榕江县| 雷山县| 波密县| 获嘉县| 达拉特旗| 界首市| 黎川县| 上思县| 绥棱县| 平塘县| 周至县| 千阳县| 威信县| 九龙城区| 伊通| 香河县|