51单片机设计一个的计数器求助?
网上搜索一下啊
好吧,应该是大作业吧!
能帮满解决一下不?
其实不大,只是我不会做,你会不?
会不,帮我写个程序呗,谢谢了
应该是毕业设计吧!~~自己做吧 有什么不会的倒是 可以给你指点 qq:971759001
入门的程序
可我不会……
还需要帮忙嘛? 需要的话971759001 发给你!~~~
我也想要一个计数器。
#include<reg52.h>
#include"main.h"
sbit D1=P1^0;
sbit D2=P1^1;
sbit KEY=P3^4;
sbit wela=P2^7;
sbit dula=P2^6;
uchar bai,shi,ge;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay_ms(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void display(uchar bai,uchar shi,uchar ge)
{
dula=1;
P0=table[bai];
dula=0;
P0=0xf8;
wela=1;
P0=0xfe;
wela=0;
delay_ms(1);
dula=1;
P0=table[shi];
dula=0;
P0=0xf8;
wela=1;
P0=0xfd;
wela=0;
delay_ms(1);
dula=1;
P0=table[ge];
dula=0;
P0=0xf8;
wela=1;
P0=0xfb;
wela=0;
delay_ms(1);
}
void main()
{
uchar m=0;
wela=1;
P0=0xf8;
wela=0;
dula=1;
P0=table[0];
dula=0;
P3=0xff;
while(1)
{
if(KEY==0)
{
delay_ms(5);
if(KEY==0)
{
m++;
P0=0xf8;
if(m%2==1)
{
D1=0;
D2=1;
}
if(m%2==0)
{
D1=1;
D2=0;
}
}
while(!KEY);
delay_ms(5);
while(!KEY);
}
bai=m/100;
shi=m%100/10;
ge=m%10;
display(bai,shi,ge);
}
}
按键接到外部中断上,用下降沿触发更简单
