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

📄 jmq.c

📁 一个解码器程序
💻 C
字号:
#include<reg51.h>
#include<intrins.h>
#include<math.h>
#include<absacc.h>
#define uchar unsigned char
#define uint unsigned int
#define ulong unsigned long
#define adder 0x83
//#define BN 8
//#define RE RD
//#define DE WR

/*-----------THE PAN CONTROL LINE DEFINE------------*/
sbit PANUP=P1^0;
sbit PANDOWN=P1^1;
sbit PANLEFT=P1^2;
sbit PANRIGHT=P1^3;
sbit PANCOM=P1^4;
/*--------- THE  LEN CONTROL LINE DEFINE------------*/
sbit ZOOM=P2^0;
sbit FCOUS=P2^1;
sbit IRIS=P2^2;
sbit LENCOM=P2^3;
/* --------- THE RAIN AND LAMP AND BORSH--------------*/
sbit OUT=P2^6;
sbit LIGHT=P1^7;
sbit OC=P2^7;
/*-------------- THE DEFINE MAX813 DEFINE GIVE DOG LINE------*/ 
sbit DOG=P1^6;	//WATCH-DOG

uint timer;
uchar rcd[8];
uchar rcbuf[8];
uchar sig;
uchar i_i;
uchar C_O;
uchar server;	
void delay(void)
{int i=100;while(i--);}

void delay1(uint i)
{while(i--);}	
void timer0() interrupt 1		//timer0 init for DELAY
{
	TH0=0;TL0=0;
	timer++;
 	if(timer==20){PANUP=1;PANDOWN=1;PANRIGHT=1;PANLEFT=1;}
 	TR0=0;timer=0;
		
}
void ssio(void) interrupt 4
{	
	uchar i,num;
	RI=0;ES=0;				//close ES
	if(SBUF!=adder){for(i_i=0;i_i<20;i_i++)delay();
		goto off_es;}	//It isn't me. listening on
	SM2=0;					//Stop listening
	delay();                		//Recive Command
	while(RI!=1);RI=0;
	C_O=SBUF;
	server=1;
						//Send data block
off_es:	SM2=1;ES=1;			//restore listening
}
void fukey(uchar kkk)
{
switch(kkk){
	case 0X00:PANUP=0;   break;///the key is   pan    UP 
	case 0X01:PANDOWN=0; break;///the key is pan  DOWN
	case 0X02:PANLEFT=0; break;///the key is pan  LEFT
	case 0X03:PANRIGHT=0;break;///the key is RIGHT
	case 0X04:PANUP=1;break;///the key is panup
	case 0X05:PANDOWN=1;break;///the key is panup
	case 0X06:PANLEFT=1;break;///the key is panup
	case 0X07:PANRIGHT=1;break;///the key is panup
	default:break;
	}

}


main()
{	uchar i;
	uint K;
	TH1=0xfd;		//set baud
	TL1=0xfd;
	TH0=0xd8;
	TL0=0Xf0;
	PCON=0x80;		//double baud
	SCON=0xf0;		//mode 3 allow recive
	TMOD=0x21;		//timer0 mode-1
	TR1=1;			//timer1-allow
	ET1=0;			//close timer1
	ET0=1;
	PS=1;
	ES=1;			//OPEN con int
	EX1=0;			//OPEN INT1-AD
	EX0=0;
	IT1=0;
	EA=1;
	TR0=0;
	SM2=1;
	//adder=P0;
	server=0;
	timer=0;
loop:	if(server==1){fukey(C_O);server=0;TR0=1;timer=0;}
	DOG=~DOG;
	goto loop;	
	}

⌨️ 快捷键说明

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