您好,欢迎来到五一七教育网。
搜索
您的当前位置:首页INT0及INT1中断计数

INT0及INT1中断计数

来源:五一七教育网


INT0及INT1中断计数

#include

#define uchar unsigned char

#define uint unsigned int

sbit k3=P3^4;

sbit k4=P3^5;

uchar

DSY_CODE[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};

uchar code Scan_BITs[]={0x20,0x10,0x08,0x04,0x02,0x01};

uchar data Buffer_Counts[]={0,0,0,0,0,0};

uint Count_A=0,Count_B=0;

void DelayMS(uint x)

{

uchar t;

code

while(x--)

for(t=0;t<120;t++)

;

}

void Show_Counts()

{

uchar i;

Buffer_Counts[2]=Count_A/100;

Buffer_Counts[1]=Count_A%100/10;

Buffer_Counts[0]=Count_A%10;

if(Buffer_Counts[2]==0)

{

Buffer_Counts[2]=0x0a;

if(Buffer_Counts[1]==0)

Buffer_Counts[1]=0x0a;

}

Buffer_Counts[5]=Count_B/100;

Buffer_Counts[4]=Count_B%100/10;

Buffer_Counts[3]=Count_B%10;

if(Buffer_Counts[5]==0)

{

Buffer_Counts[5]=0x0a;

if(Buffer_Counts[4]==0)

Buffer_Counts[4]=0x0a;

}

for(i=0;i<6;i++)

{

P2=Scan_BITs[i];

P1=DSY_CODE[Buffer_Counts[i]];

DelayMS(1);

}

}

void main()

{

IT0=1;;

IT1=1;

PX0=1;

IE=0X85;

while(1)

{

if(k3==0)

Count_A=0;

if(k4==0)

Count_B=0;

Show_Counts();

}

}

void EX_INT0() interrupt 0

{

Count_A++;

}

void EX_INT1() interrupt 1

{

Count_B++;

}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 517ttc.cn 版权所有 赣ICP备2024042791号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务