📄 at_cmd01.c
字号:
#include "init.h"
#include <string.h>
extern char recv[100];
extern int counter, counter2;
void delay(void){
int i;
for (i = 0; i < 5000; i++) {;}
}
void sat(char res[]){
char *p, *pr;
char att[2] = "at";
pr = &res[0];
p = &att[0];
for (counter = 0; counter < 2; counter++){
TDR = *p;
p++;
while ( TDRE != 1){;}
}
for (counter2 = 0; counter2 < 2; counter2++){
while (RDRF == 0) {;}
*pr = RDR;
pr++;
}
counter2--;
}
void sc(char cmd[], char res[], int len){
char *p, *pr;
int l;
p = &cmd[0];
pr = &res[counter2 + 1];
if (len == 0){
l = strlen(cmd);
}
else {
l = len;
}
for (counter = 2; counter < l + 2; counter++){
TDR = *p;
p++;
while ( TDRE != 1){;}
while ( RDRF == 0) {;}
*pr = RDR;
pr++;
counter2++;
}
}
void se(char res[]){
char *pr;
pr = &res[counter2 + 1];
TDR = 0x0D;
while (TDRE != 1){;}
while (RDRF == 0) {;}
*pr = RDR;
pr++;
counter2++;
}
void getr(char res[]){
char *pr;
int i, flag;
pr = &res[counter2 + 1];
while (RDRF == 0) {;}
if (SCI3.SSR.BIT.OER == 1) {
*pr = 0xFF;
}
else {
flag = 0;
while (flag == 0){
for (i = 0; i <= 5000; i++){
if (RDRF == 1)
{ break; }
}
if (i >= 5000) {
flag = 1;
break;
}
*pr = RDR;
if (counter2 < 100){
pr++;
counter2++;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -