|
单片机C语言实例-246-抢答器
/*-----------------------------------------------
名称:抢答器
公司:上海浩豚电子科技有限公司
网站:www.doflye.cn
编写:师访
日期:2009.5
修改:无
内容: 1、试验目的:了解按键的扫描原理
2、实现现象:同时按键抢答,先按的键有效,其他按键锁死 复位后重新开始抢答
3、硬件要求:按键 LED灯
原理:最先按下按键者有效,其他均无效
------------------------------------------------*/
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
sbit key1=P3^0;//定义按键位置 需要切换到独立按键模式
sbit key2=P3^1;
sbit key3=P3^2;
sbit key4=P3^3;
/******************************************************************/
/* 主函数 */
/******************************************************************/
main()
{
bit Flag;
while(!Flag) //执行一次就停止了 先检测到的相应 复位后有效
{
if(!key1) {P1=0xFE;Flag=1;}//
else if(!key2){P1=0xFD;Flag=1;}//
else if(!key3){P1=0xFB;Flag=1;}//
else if(!key4){P1=0xF7;Flag=1;}//
}
while(Flag);
}
//如果有干扰请加去抖程序
//红外接收头部分用黑色物质遮光,防止干扰按键
更多详情参考附件文档
|
|