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