找回密码
 立即注册

QQ登录

只需一步,快速开始

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

请教那位老师帮忙修重新改按键定义!!

[复制链接]
跳转到指定楼层
楼主
ID:154576 发表于 2017-5-25 19:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教那位老师帮忙修重新改按键定义
我这个是一个加减计数器程序,现在是按jia=P3^1加一,按jian=P3^0减一, 麻烦老师帮忙修改成P3^0 加一个高电平时,按P3^1加,P3^0加低电平时,按P3^1减,万分感谢!!!!小弟在这先谢了!!!
#include<reg51.h>
#define leddata P1 //数码管的段码输出
#define uchar unsigned char
#define uint unsigned int
float shu;

sbit jia=P3^1; //加一按键
sbit jian=P3^0; //减一按键
sbit qw=P3^2; //数码管的千位
sbit bw=P3^3; //数码管的百位
sbit sw=P3^4; //数码管的十位
sbit gw=P3^5; //数码管的个位
uchar code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};
uchar code distab[16]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0e};
void desplay();
void delay(uchar a) //延时函数
{
uchar x,y;
for(x=0;x<a;x++)
for(y=0;y<120;y++);
}
void key() //按键扫描函数
{
if(jia==0)
{
delay(50);
if(jia==0)
{
while(!jia)desplay();
if(shu>=9999)shu=0;
else shu=++;
}
}
if(jian==0)
{
delay(50);
if(jian==0)
{
while(!jian)desplay();
if(shu<=0)shu=9999;
else shu=--;
}
}
}
void desplay() //显示函数
{sw=qw=bw=gw=0;
qw=1;
leddata=tab[(int)shu/1000];delay(6);qw=0;
P1=0xff;
bw=1;leddata=distab[(int)shu%1000/100];delay(6);bw=0;
P1=0xff;
sw=1;leddata=tab[(int)shu%100/10];delay(6);sw=0;
P1=0xff;
gw=1;leddata=tab[(int)shu%10];delay(6);gw=0;
P1=0xff;
}
void main() //主函数
{
while(1)
{
key();
desplay();
}
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:123289 发表于 2017-5-26 00:01 | 只看该作者
判断语句的参数,不是单一参数,是可以多少参数一起进行逻辑运算的,再对其结果进行判断。
回复

使用道具 举报

板凳
ID:146949 发表于 2017-5-26 00:41 | 只看该作者
if(jia==0 && P30==1)//加多一个P3.0的IO口判断就可以了
{
delay(50);
if(jia==0 && P30==1)//加多一个P3.0的IO口判断就可以了
{
while(!jia)desplay();
if(shu>=9999)shu=0;
else shu=++;
}
}
回复

使用道具 举报

地板
ID:154576 发表于 2017-5-26 06:51 | 只看该作者
yzwzfyz 发表于 2017-5-26 00:01
判断语句的参数,不是单一参数,是可以多少参数一起进行逻辑运算的,再对其结果进行判断。

非常感谢!!我刚刚接触单片机,都不知道具体怎么修改这程序
回复

使用道具 举报

5#
ID:154576 发表于 2017-5-26 06:52 | 只看该作者
wosiyabo 发表于 2017-5-26 00:41
if(jia==0 && P30==1)//加多一个P3.0的IO口判断就可以了
{
delay(50);

非常感谢!!我试试看看!!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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