导航:首页 > 操作系统 > 单片机计数器的设计

单片机计数器的设计

发布时间:2023-08-23 03:23:50

1. 51单片机设计两位计数器C语言

#include "reg52.h"
#define uchar unsigned char

#define uint unsigned int
#define dataport P1
sbit s1=P2^0;
sbit s2=P2^1;
sbit s3=P2^2;
sbit wei1=P2^4;

sbit wei2=P2^5;
signed char a=0;

uchar TABLE[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

//延时子程序
void delay1ms(uint t)
{
uint i;
uint j;
for(i=0;i<t;i++)
for(j=0;j<116;j++);
}
//显示子程序
void display(uchar n)
{
wei1=1;

dataport=TABLE[n/10];
delay1ms(1);
wei1=0;

wei2=1;
dataport=TABLE[n%10];
delay1ms(1);
wei2=0;
}

void main(void)//主程序
{
while(1)
{
if(s1==0)
{
delay1ms(20);
if(s1==0)
{
a++;
}
}
if(a=100)a=0;
if(s2==0)
{
delay1ms(20);
if(s2==0)
{
a--;
}
}
if(a<0)a=99;
if(s3==0)
{
delay1ms(20);
if(s3==0)
{
a=0;
}
}
display(a);
}
}

2. C51单片机设计一个游客流量计数器(00-99),实现对游客人数的统计。

#include<reg51.h>

#defineucharunsignedchar
uchar派握codeledtab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};//0-9
ucharscanled;
uchar顷猜disdat[6]={0,0,0,0,0,0};
uchardatin,datout,dath;
display()
{
disdat[0]=datin/10;
disdat[1]=datin%10;
disdat[2]=datout/10;
disdat[3]=datout%10;
disdat[4]=dath/10;
disdat[5]=dath%10;
}
voidext0isr()interrupt0
{
datin++;
datin%=100;
dath=(datin-datout);
display();
}
voidext1isr()interrupt尘乎庆2
{
if(dath>0)datout++;
dath=(datin-datout);
display();
}
voidt1isr()interrupt3 //显示
{
TH1=0xec;
TL1=0x78;
P2=~(1<<scanled);
P0=ledtab[disdat[scanled]];
scanled++;
scanled%=6;
}
main()
{
TMOD=0x10;
TH1=0xec;
TL1=0x78;
TR1=1;
ET1=1;
EX0=1;
IT0=1;
EX1=1;
IT1=1;
EA=1;
while(1);
}

3. 怎么用单片机设计一个计数器

把T0设为计数器模式,初值为FFFFH,来一个脉冲即中断,定义一个变量放在中断函数里加1,这个变量即计数值

阅读全文

与单片机计数器的设计相关的资料

热点内容
文件夹怎么不重名 浏览:406
linuxyum安装java 浏览:250
java数字计算 浏览:286
java按钮文字 浏览:641
python列表互换位置 浏览:337
sw怎么删除定向命令 浏览:757
php包含数组元素 浏览:666
安卓系统开发app需要什么 浏览:730
ssh2项目源码 浏览:288
三星提供了什么服务器地址 浏览:903
阿里云轻量应用服务器60元 浏览:160
微信公众号支付java 浏览:217
虾皮用的什么服务器 浏览:144
拍照的app哪个好用 浏览:890
方舟编译器2022 浏览:770
一般情况下源码注释量 浏览:743
18号命令 浏览:871
我的世界如何将材质包加在服务器里 浏览:413
缝纫pdf 浏览:408
软硬件系统算法 浏览:121