📄 ok.c
字号:
#define TIME_OVER 100
#include<reg52.h>
#include<stdlib.h>
#include<string.h>
unsigned char *compare=0x0040;
unsigned char *indata=0x0050;
int wait=0;
int exam=0;
void serial_init();
void send(char);
void send_string(const char *);
void receive_string();
int compare_string(char *);
void main(){
int i;
int test=1;
wait=0;
exam=0;
serial_init();
for(;;){
receive_string();
if(wait!=0) exam++;
if(exam>=TIME_OVER){
*compare=NULL;
compare=0x0040;
test=compare_string(compare);
switch(test){
case 0:{
send_string("error");
break;
}
case 1:{
send_string("ccc1500cccc1000000ccc");
/* *indata='$';
indata++;
*indata=0x50;
indata++;
*indata=0x51;
indata++;
*indata='$';
indata++;
*indata=0x52;
indata++;
*indata=0x80;
indata++;
*indata='$';
indata++;
*indata=NULL;
indata=0x0050;
send_string(indata);
indata=0x0050;
*/ break;
}
case 2:{
send_string("write ram");
break;
}
case 3:{
send_string("ram format");
break;
}
case 4:{
send_string("hello");
break;
}
case 5:{
for(i=0;i<100;i++)
send_string("go go go ");
break;
}
default:{
break;
}
}
wait=0;
exam=0;
compare=0x0040;
test=5;
}
}
return;
}
void send_string(char *string){
char *read_string=string;
char *buffer=string;
int COUNT=strlen(read_string);
for(;COUNT!=0;COUNT--){
send(*buffer);
buffer++;
}
}
void send(char a){
SBUF=a;
while(TI!=1);TI=0;
}
void serial_init()
{
SCON=0x50;
PCON=0;
TMOD=0X20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
ET1=1;
return;
}
void receive_string(){
unsigned char temp;
if(RI==1) {
wait++;
exam=0;
RI=0;
temp=SBUF;
*compare=temp;
compare++;
return;
}
return;
}
int compare_string(char *test){
char *comp=test;
char *temp="1";
if(strcmp(temp,comp)==0){return 1;}
temp="2";
if(strcmp(temp,comp)==0){return 2;}
temp="3";
if(strcmp(temp,comp)==0){return 3;}
temp="4";
if(strcmp(temp,comp)==0){return 4;}
temp="5";
if(strcmp(temp,comp)==0){return 5;}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -