|
#include <reg51.h>
sbit P3_2=P3^2;
void main()
{
unsigned char *P, i;
int a;
P=0x40; //指針指向片內(nèi)40H單元
TMOD=0x09; //GATE=1,工作方式為計數(shù)器T0
TL0=0x00; TH0=0x00; //裝入初值
do { } while (P3_2==1); //等待INT0變低
TR0=1; //啟動計數(shù)器
while(P3_2==0); //等待INT0變高,即脈沖上升沿
while(P3_2==1); //等待INT0變低,即脈沖下降沿
TR0=0; //停止計數(shù)
i=TH0; //讀入TH0值
a=i*256+TL0; //計數(shù)結(jié)果轉(zhuǎn)換為10進(jìn)制
for (a;a!=0; ) //a不等于0時循環(huán),轉(zhuǎn)換為BCD碼
{
*P=a%10; //個位存放在40單元
a=a/10;
P++;
}
} |
|