单片机 三个独立按键要实现六种功能,000,001,010,100,110,101,011.怎么用c语言编程。请告诉指点

如题所述

方法有多种,一种最贴近你题意的大概是按三种键的组合不同完成不同功能:比如ABC代表三个键分别如下:
ABC=001:完成000号功能
ABC=010:完成001号功能
ABC=011:完成010号功能
ABC=100:完成011号功能
ABC=101:完成100号功能
ABC=110:完成101号功能
程序大概如下:
#include<reg51.h>
sbit A=P1^2;
sbit B=P1^1;
sbit C=P1^0;
main()
{
unsigned char ch;
EA=0;
while(1){
ch=0;
if(C==1)ch|=0x01;
if(B==1)ch|=0x02;
if(A==1)ch|=0x04;
ch&=0x07;
switch(ch){
case 0x01://完成000功能代码
break;
case 0x02://完成001功能代码
break;
case 0x03://完成010功能代码
break;
case 0x04://完成011功能代码
break;
case 0x05://完成100功能代码
break;
case 0x06://完成101功能代码
break;
default:break;
}
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-18
楼上正解
第2个回答  2012-04-24
可以分单击,双击。
相似回答