main.c

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

C
67
字号
#include <reg51.h>

typedef unsigned char BYTE;

sbit P17=P1^7;

BYTE Tcount;
BYTE R_CNT;
BYTE NUMB;


BYTE code Table[]={	0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};
BYTE code Graph[]={	0x12,0x14,0x3C,0x48,0x3C,0x14,0x12,0x00,
					0x00,0x38,0x44,0x44,0x44,0x38,0x00,0x00,
			  		0x30,0x48,0x44,0x22,0x44,0x48,0x30,0x00}; 

void delay()
{
	BYTE i=20;

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

main()
{
	while(1)
	{
		Tcount=0;
		R_CNT=0;
		NUMB=0;

		TMOD=0x01;
		TH0=(65536-4000)/256;
		TL0=(65536-4000)%256;

		do
		{
			while(P17);	
		    delay();
			while(P17);
			TR0=1;
			IE=0x82;
	
			while(!P17);
			R_CNT=0;
			TR0=0;	
		}while(++NUMB!=0x03);
	}	
}


void int_t0() interrupt 1
{
	TH0=(65536-4000)/256;
	TL0=(65536-4000)%256;

	P3=Table[R_CNT];
	P0=~Graph[NUMB*8+R_CNT];
	R_CNT++;
	if(R_CNT==8)
		R_CNT=0x00;
}

⌨️ 快捷键说明

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