我想在下面这个小程序里在加一个按键KEY2 单独控制一个LED2的点亮和熄灭输入端口为P3^1
输出端口为P1^1
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
sbit KEY=P3^0; //定义按键输入端
sbit LED=P1^0; //定义led输出端口
sbit LED1=P1^1; //定义led输出端口
void DelayUs2x(unsigned char t);//函数声明
void DelayMs(unsigned char t);
/*------------------------------------------------
主函数
------------------------------------------------*/
void main (void)
{
KEY=1; //按键输入端口电平置高
while (1) //主循环
{
if(!KEY) //如果检测到低电平,说明按键按下
{
DelayMs(10); //延时去抖,一般10-20ms
if(!KEY) //再次确认按键是否按下,没有按下则退出
{
while(!KEY);//如果确认按下按键等待按键释放,没有释放则一直等待
{
LED=!LED;//释放则执行需要的程序
LED1=!LED;//释放则执行需要的程序
此帖出自
小平头技术问答
sbit add_out=P1^1;
sbit add_key=P3^1;
sbit KEY=P3^0; //定义按键输入端
sbit LED=P1^0; //定义led输出端口
sbit LED1=P1^1; //定义led输出端口
void DelayMs(unsigned char t);
/*------------------------------------------------
主函数
------------------------------------------------*/
void main (void)
{
add_out=0;
KEY=1; //按键输入端口电平置高
add_key=1;
while (1) //主循环
{
if(!KEY) //如果检测到低电平,说明按键按下
{
DelayMs(200); //延时去抖,一般10-20ms
if(!KEY) //再次确认按键是否按下,没有按下则退出
{
while(!KEY);//如果确认按下按键等待按键释放,没有释放则一直等待
{
LED=!LED;//释放则执行需要的程序
LED1=!LED;//释放则执行需要的程序
}
}
}
if(!add_key)
{DelayMs(200);
if(!add_key)
add_out=~add_out;}
}
}
void DelayMs(unsigned char t)
{
while(t--);
}
一周热门 更多>