📄 mxulie.c
字号:
#include<reg51.h>
#include<stdio.h>
sbit P0_0=P0^0; //m序列输出
sbit P1_0=P1^0; //同步信号输出
sbit P2_0=P2^0; //200us
sbit P2_3=P2^3; //2ms
sbit P2_6=P2^6; //20ms
sbit P3_0=P3^0; //31位m序列
sbit P3_3=P3^3; //15位m序列
sbit P3_6=P3^6; //7位m序列
sbit P3_7=P3^7; //自动跳频选择
unsigned char num0[62]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x00,0x00,0x01,0x01,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01};
unsigned char num1[30]={0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x01,0x01,0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01};
unsigned char num2[14]={0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x01,0x01,0x00,0x00,0x00,0x00};
void initial_0(void)
{
TCON=0x00;
TH0=0xFF;
TL0=0xC3;
TR0=1;
}
void initial_1(void)
{
TCON=0x00;
TH0=0xFC;
TL0=0x17;
TR0=1;
}
void initial_2(void)
{
TCON=0x00;
TH0=0xD8;
TL0=0xEF;
TR0=1;
}
void main()
{ int i=0;
while(1)
{
//自动跳频选择
int j=0;
int k=0;
if(P3_7==1)
{
if(P3_0==1)
{
for(k=0;k<100;k++){
for(j=0;j<62;j++)
{ TMOD=0x01;
initial_0();
do{}while(!TF0);
P0=num0[j++];
P1_0=!P1_0;
}}
for(k=0;k<10;k++){
for(j=0;j<62;j++)
{ TMOD=0x01;
initial_1();
do{}while(!TF0);
P0=num0[j++];
P1_0=!P1_0;
}}
for(j=0;j<62;j++)
{ TMOD=0x01;
initial_2();
do{}while(!TF0);
P0=num0[j++];
P1_0=!P1_0;
}
}
else if(P3_3==1)
{
for(k=0;k<100;k++){
for(j=0;j<30;j++)
{ TMOD=0x01;
initial_0();
do{}while(!TF0);
P0=num1[j++];
P1_0=!P1_0;
}}
for(k=0;k<10;k++){
for(j=0;j<30;j++)
{ TMOD=0x01;
initial_1();
do{}while(!TF0);
P0=num1[j++];
P1_0=!P1_0;
}}
for(j=0;j<30;j++)
{ TMOD=0x01;
initial_2();
do{}while(!TF0);
P0=num1[j++];
P1_0=!P1_0;
}
}
else if(P3_6==1)
{
for(k=0;k<100;k++){
for(j=0;j<14;j++)
{ TMOD=0x01;
initial_0();
do{}while(!TF0);
P0=num2[j++];
P1_0=!P1_0;
}}
for(k=0;k<10;k++){
for(j=0;j<14;j++)
{ TMOD=0x01;
initial_1();
do{}while(!TF0);
P0=num2[j++];
P1_0=!P1_0;
}}
for(j=0;j<14;j++)
{ TMOD=0x01;
initial_2();
do{}while(!TF0);
P0=num2[j++];
P1_0=!P1_0;
}
}
}
//手动选择
else
{
if(P3_0==1)
{
if(P2_0==1)
{ TMOD=0x01;
if(i==62){i=0;}
initial_0();
do{}while(!TF0);
P0=num0[i++];
P1_0=!P1_0;
}
else if(P2_3==1)
{ TMOD=0x01;
if(i==62){i=0;}
initial_1();
do{}while(!TF0);
P0=num0[i++];
P1_0=!P1_0;
}
else if(P2_6==1)
{ TMOD=0x01;
if(i==62){i=0;}
initial_2();
do{}while(!TF0);
P0=num0[i++];
P1_0=!P1_0;
}
}
else if(P3_3==1)
{
if(P2_0==1)
{ TMOD=0x01;
if(i==30){i=0;}
initial_0();
do{}while(!TF0);
P0=num1[i++];
P1_0=!P1_0;
}
else if(P2_3==1)
{ TMOD=0x01;
if(i==30){i=0;}
initial_1();
do{}while(!TF0);
P0=num1[i++];
P1_0=!P1_0;
}
else if(P2_6==1)
{ TMOD=0x01;
if(i==30){i=0;}
initial_2();
do{}while(!TF0);
P0=num1[i++];
P1_0=!P1_0;
}
}
else if(P3_6==1)
{
if(P2_0==1)
{ TMOD=0x01;
if(i==14){i=0;}
initial_0();
do{}while(!TF0);
P0=num2[i++];
P1_0=!P1_0;
}
else if(P2_3==1)
{ TMOD=0x01;
if(i==14){i=0;}
initial_1();
do{}while(!TF0);
P0=num2[i++];
P1_0=!P1_0;
}
else if(P2_6==1)
{ TMOD=0x01;
if(i==14){i=0;}
initial_2();
do{}while(!TF0);
P0=num2[i++];
P1_0=!P1_0;
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -