找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4148|回复: 14
打印 上一主题 下一主题
收起左侧

一键多功能按键识别技术

  [复制链接]
跳转到指定楼层
楼主
ID:64693 发表于 2014-8-5 21:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有那位大神能帮我解释一下,一键多功能按键识别技术的程序代码吗?程序是我在论坛上下的,程序很简单,但是我感觉我把自己看的闹晕了
#include<AT89X51.H>
unsigned char ID;
void delay10ms(void)
{
unsigned char i,j;
for(i=20;i>0;i--)
for(j=248;j>0;j--);
}

void delay02s(void)
{
unsigned char i;
for(i=20;i>0;i--)
{delay10ms();
}
}

void main(void)
{ while(1)
{ if(P3_7==0)
{delay10ms();
if(P3_7==0)
{
ID++;
if(ID==4)
{
ID=0;
}
while(P3_7==0);
}
}
switch(ID)
{ case 0:
P1_0=~P1_0;       //p1_0作为输出口,一开始case 为0时,p1_0状态为什么是“1”,当再一次case为“0”时,p1_0状态为什么还是“1” ??????
delay02s();
break;
case 1:
P1_1=~P1_1;
delay02s();
break;
case 2:
P1_2=~P1_2;
delay02s();
break;
case 3:
P1_3=~P1_3;
delay02s();
break;
}
}
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:47760 发表于 2014-9-13 08:03 | 只看该作者
谢谢楼主分享
回复

使用道具 举报

板凳
ID:51348 发表于 2014-9-14 02:10 | 只看该作者
很好  学习  谢谢
回复

使用道具 举报

地板
ID:66338 发表于 2014-9-18 21:43 | 只看该作者
很好  学习  谢谢
回复

使用道具 举报

5#
ID:69147 发表于 2014-11-20 23:18 来自手机 | 只看该作者
你厉害,订
回复

使用道具 举报

6#
ID:69319 发表于 2014-11-23 21:12 | 只看该作者
给力啊楼主楼主加油
回复

使用道具 举报

7#
ID:174969 发表于 2017-3-29 19:15 | 只看该作者
楼主说的P1.0 取反以后就是反的啊,按照你的电路,开关灯对应的是高电平还是低电平,是不是你自己想错了
回复

使用道具 举报

8#
ID:183748 发表于 2017-3-29 19:57 | 只看该作者
楼主说的P1.0 取反以后就是反的啊,按照你的电路,开关灯对应的是高电平还是低电平,是不是你自己想错了
回复

使用道具 举报

9#
ID:183748 发表于 2017-3-29 20:00 | 只看该作者
P1_0=~P1_0第一次输出,第二次自动取反输出
回复

使用道具 举报

10#
ID:117161 发表于 2017-6-14 20:41 | 只看该作者
楼主  你的按键可以循环不  从第一状态到最后一个  再到第一个
回复

使用道具 举报

11#
ID:211258 发表于 2017-6-14 22:49 | 只看该作者
谢谢分享,太好了正好需要
回复

使用道具 举报

12#
ID:211388 发表于 2017-6-15 07:48 | 只看该作者
多谢,
回复

使用道具 举报

13#
ID:68356 发表于 2017-6-15 19:21 | 只看该作者
是不是延时时间太短,端口状态发生多次翻转
回复

使用道具 举报

14#
ID:208108 发表于 2017-6-15 21:22 | 只看该作者
每按一次ID自加,case执行的从P10到P13依次翻转,并没有把之前那一位翻转。
回复

使用道具 举报

15#
ID:68356 发表于 2017-6-16 21:53 | 只看该作者
duranhuang 发表于 2017-6-15 21:22
每按一次ID自加,case执行的从P10到P13依次翻转,并没有把之前那一位翻转。

可能是ID值在执行端口翻转之后没有清零,每一次switch语句都执行一次翻转,实际上端口是在不停的翻转,只是速度太快看起来是一直亮着
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表