单片机89c51,帮我编个C程序,顺便说一下用KeiluVision3仿真调试软件的调试步骤
线路图如下程序要求:按下按键0时加1计数并增加显示位,按下按键1时减1计数并减少显示位,按下按键2时清零。图看不见的话http://zhidao.baidu.com/qu...
线路图如下
程序要求:
按下按键0时加1计数并增加显示位,
按下按键1时减1计数并减少显示位,
按下按键2时清零。
图看不见的话http://zhidao.baidu.com/question/348707036.html这里有图,貌似百度刷了两遍 展开
程序要求:
按下按键0时加1计数并增加显示位,
按下按键1时减1计数并减少显示位,
按下按键2时清零。
图看不见的话http://zhidao.baidu.com/question/348707036.html这里有图,貌似百度刷了两遍 展开
3个回答
展开全部
#include<reg51.h>
sbit p20=P2^0;
sbit p21=P2^1;
sbit p22=P2^2;
sbit p25=P2^5;
sbit p26=P2^6;
typedef unsigned char uint8;
code uint8 num[]={0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x82,0xf8,0x80,0x90,};
uint8 count,shi,ge,i;
delay()
{
uint8 i=1000;
while(i--);
}
display()
{
shi=count/10;
ge=count%10;
p25=0;
P0=num[shi];
p25=1;
p26=0;
P0=num[ge];
p26=1;
}
main()
{
while(1)
{
if(p20==0)
{
delay();
if(p20==0)
{
count++;
}
}
if(p21==0)
{
delay();
if(p21==0)
{
count--;
}
}
if(p22==0)
{
delay();
if(p22==0)
{
count=0;
}
}
display();
}
}
sbit p20=P2^0;
sbit p21=P2^1;
sbit p22=P2^2;
sbit p25=P2^5;
sbit p26=P2^6;
typedef unsigned char uint8;
code uint8 num[]={0xc0,0xf9,0xa4,0xb0,0x99,
0x92,0x82,0xf8,0x80,0x90,};
uint8 count,shi,ge,i;
delay()
{
uint8 i=1000;
while(i--);
}
display()
{
shi=count/10;
ge=count%10;
p25=0;
P0=num[shi];
p25=1;
p26=0;
P0=num[ge];
p26=1;
}
main()
{
while(1)
{
if(p20==0)
{
delay();
if(p20==0)
{
count++;
}
}
if(p21==0)
{
delay();
if(p21==0)
{
count--;
}
}
if(p22==0)
{
delay();
if(p22==0)
{
count=0;
}
}
display();
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询