📄 sifu_keyokbak.c
字号:
/****************************************************************/
/*Module: New technic
/*Creator: lianghaodang
/*Date: 11/19/2007
/*Description: creat a pulse
/****************************************************************/
#include<AT892051.h>
#include<stdio.h>
#include<math.h>
#include<intrins.h>
sbit Sig = P3^4;
sbit KEY = P3^7;
sbit QUENSHU = P3^5;
unsigned int Counter;
void Delayms(unsigned char ms);
//----------------------------------------
void time0(void) interrupt 1
{
Counter++;
TH0 = 0xFC;
TL0 = 0x18;
}
void time1(void) interrupt 3
{
QUENSHU = ~QUENSHU;
Counter++;
TH1 = 0xFF;
TL1 = 0xE0;
}
//----------------------------------------
void main(void)
{
// bit Flag;
P1 = 0XFF;
P3 = 0XFF;
QUENSHU = 0;
TMOD = 0x11;
IT0 = 1;
PCON=0X00;
ET0 = 1;
ET1 = 1;
TH0 = 0xFC;
TL0 = 0x18; //time0=1ms
TH1 = 0xFF;
TL1 = 0xE0;
TR0 = 0;
TR1 = 0;
EA = 1;
while(1)
{
Sig = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<12636);
Counter = 0;
TR1 = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<454);
TR1 = 0;
Counter = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1364);
Counter = 0;
TR1 = 0;
Sig = 1;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1364);
Counter = 0;
TR1 = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1546);
TR1 = 0;
Counter = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1456);
TR1 = 0;
Counter = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1546);
Counter = 0;
TR1 = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1456);
TR1 = 0;
Counter = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<1818);
TR1 = 0;
Counter = 0;
/****************/
KEY = 1;
while(1)
{while(KEY!=0);
Delayms(5);
if(KEY==0) break;
}
while(KEY==0);
/***************/
do
{TR1 = 1;
}while(Counter<5268);
TR1 = 0;
Counter = 0;
}
/* Flag = 0;
while(1)
{
KEY = 1;
while(KEY)
{
Delayms(5);
if(KEY==1) break;
Flag = ~Flag;
if(Flag==1) TR1 =1;
else TR1 = 0;
}
}*/
}
void Delayms(unsigned char ms)
// relay ms
{ unsigned char i;
while(ms--)
{
for(i = 0; i < 120; i++);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -