main.c

来自「《Proteus在MCS-51&ARM7系统中的应用百例》逆向之 Chapter」· C语言 代码 · 共 82 行

C
82
字号
#include <reg51.h>
typedef unsigned char BYTE;

sbit KEY=P1^7;
sbit P10=P1^0;

BYTE LCNT;
BYTE HCNT;
BYTE FLAG;


void INT_T0()	interrupt 1
{
	LCNT++;

	if(LCNT==100)
	{
		LCNT=0x00;
		HCNT++;
		if(HCNT==5)
		{
			HCNT=0x00;
			FLAG++;	
		}
	}

   	while(1)
	{
		P10=~P10;
		if(FLAG==0x00)
		{
			TH0=(65536-700)/256;
			TL0=(65536-700)%256;
			return;
		}
		else if(FLAG==0x01)
		{
			TH0=(65536-1000)/256;
			TL0=(65536-1000)%256;
			return;	
		}
		else if(FLAG==0x02)
		{
			FLAG=0x00;
			TR0=0;	
		}
	}
}


void DELAY()
{
	BYTE i=20;

	do
	{
		BYTE j=250;
		do
		{}while(--j);
	}while(--i);
}


main()
{
	LCNT=0x00;
	HCNT=0x00;
   	FLAG=0;
	TMOD=0x01;
	TH0=(65536-700)/256;
	TL0=(65536-700)%256;

	while(1)
	{
		while(KEY);
		DELAY();
		while(KEY);
		IE=0x82;
		TR0=1;
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?