独立按键实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
51单片机独立按键控制LED灯实验
独立按键实验
• • • • • • • • • • • • • • • • /************************************************************************************** * 独立按键实验 * 实现现象:下载程序后按下K1按键可以对LED小灯状态取反。 注意事项:无 ***************************************************************************************/ #include "reg52.h" typedef unsigned int u16; typedef unsigned char u8; sbit k1=P1^0; sbit led=P1^1; sbit led1=P1^2; sbit led2=P1^3; /******************************************************************************* *函数名 * 函数功能 : delay : 延时函数,i=1时,大约延时10us //定义P10口是k1 //定义P11口是led //此文件中定义了单片机的一些特殊功能寄存器 //对数据类型进行声明定义

/*******************************************************************************
/******************************************************* ************************ *函数名 : main * 函数功能 : 主函数 *输 入 :无 *输 出 :无 ******************************************************** ***********************/ void main() { led=0; led1=1; led2=0; while(1) { keypros(); //按键处理函数 } }
*******************************************************************************/
• • •
*******************************************************************************/ void delay(u16 i) {
**来自百度文库****************************************************************************/

• • • • • • • • • } }
delay(1000); //消除抖动 一般大约10ms
if(k1==0) { led=~led; led1=~led1; led2=~led2; } while(!k1); //检测按键是否松开 //led状态取反 //再次判断按键是否按下

• • • • • • • • • }
while(i--);
/******************************************************************************* *函数名 * 函数功能 void keypros() { if(k1==0) { //检测按键K1是否按下 : keypros : 按键处理函数,判断按键K1是否按下
相关文档
最新文档