⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 《Proteus在MCS-51&ARM7系统中的应用百例》逆向之 Chapter 8 《Proteus在MCS-51&ARM7系统中的应用百例》MCS-51例子的C语言版本。 最
💻 C
字号:
#include <reg51.h>
typedef unsigned char BYTE;

BYTE SAME;

void YS()
{
	BYTE i=0x20;

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


void Y1s()
{
	BYTE i=0x04;

	do
	{
		BYTE j=0xFF;
		do
		{
			BYTE k=0xFF;
			do
			{}while(--k);
		}while(--j);
	}while(--i);	
}

void Y100ms()
{
	BYTE i=0x66;

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



main() 
{
	BYTE temp;	
	P1=0x00;

	while(1)
	{
		do
		{
			do
			{
				temp=P3&0x1F;
				if(temp==0x1F) P1=0x00;
			}while(temp==0x1F);
			SAME=temp;
			YS();
			temp=P3&0x1F;
			if(temp==0x1F||temp!=SAME) P1=0x00;
		}while(temp==0x1F||temp!=SAME);
		
		switch(temp)
		{
			case 0x17:{	P1=0x2A;
						Y1s();
						P1=0x00;
						Y1s();		}break;
	
			case 0x0F:{	P1=0x54;
						Y1s();
						P1=0x00;
						Y1s();		}break;
	
			case 0x1D:{	P1=0x7F;
						Y1s();
						P1=0x00;
						Y1s();		}break;
	
			case 0x1E:{	P1=0x60;	}break;
	
			case 0x16:{	P1=0x6A;
						Y1s();
						P1=0x40;
						Y1s();		}break;
	
			case 0x0E:{	P1=0x6A;
						Y1s();
						P1=0x40;
						Y1s();		}break;
	
			case 0x1C:{	P1=0x7E;
						Y1s();
						P1=0x60;
						Y1s();		}break;
	
			case 0x14:{	P1=0x7E;
						Y1s();
						P1=0x40;
						Y1s();		}break;
	
			case 0x0C:{	P1=0x7E;
						Y1s();
						P1=0x20;
						Y1s();		}break;
	
			case 0x1B:{	P1=0x66;
						Y100ms();
						P1=0x00;
						Y100ms();	}break;
	
			default:	{ P1=0x80;
						  Y1s();
						  P1=0x00;
						  Y1s();
						}
		}
	}

}

⌨️ 快捷键说明

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