新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 用74HC165读8个按键状态

用74HC165读8个按键状态

作者:时间:2018-08-01来源:网络收藏

本文介绍用74HC165读8个按键状态

本文引用地址:http://www.eepw.com.cn/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();

}

}



关键词: 单片机

评论


相关推荐

技术专区

关闭