📄 jmq.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 + -