|
|
@ -1,9 +1,57 @@
|
|
|
|
|
|
|
|
String Prcss_ALL_Read(){
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String str = "";
|
|
|
|
|
|
|
|
str += "AI?:";
|
|
|
|
|
|
|
|
for (int i = 0; i < Size_AI; i++) {
|
|
|
|
|
|
|
|
char formattedNumber[5]; // 4자리 숫자 + 널 종료 문자
|
|
|
|
|
|
|
|
sprintf(formattedNumber, "%04X", Values_AI[i]); // 4자리로 고정된 형식의 문자열 생성
|
|
|
|
|
|
|
|
str += formattedNumber; // 형식화된 문자열 추가
|
|
|
|
|
|
|
|
str += ',';
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str += "DI?:";
|
|
|
|
|
|
|
|
char formattedNumber[5]; // 4자리 숫자 + 널 종료 문자
|
|
|
|
|
|
|
|
sprintf(formattedNumber, "%04X", Values_DI); // 4자리로 고정된 형식의 문자열 생성
|
|
|
|
|
|
|
|
str += formattedNumber; // 형식화된 문자열 추가
|
|
|
|
|
|
|
|
str += ',';
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str += "PV10?:";
|
|
|
|
|
|
|
|
if(rcv_10_PV){
|
|
|
|
|
|
|
|
for (int i = 0; i < Size_PV; i++) {
|
|
|
|
|
|
|
|
char formattedNumber[5]; // 4자리 숫자 + 널 종료 문자
|
|
|
|
|
|
|
|
sprintf(formattedNumber, "%04X", Values_10_PV[i]); // 4자리로 고정된 형식의 문자열 생성
|
|
|
|
|
|
|
|
str += formattedNumber; // 형식화된 문자열 추가
|
|
|
|
|
|
|
|
str += ',';
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
str += RcvErr;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str += "SV10?:";
|
|
|
|
|
|
|
|
if(rcv_10_SV){
|
|
|
|
|
|
|
|
for (int i = 0; i < Size_SV; i++) {
|
|
|
|
|
|
|
|
char formattedNumber[5]; // 4자리 숫자 + 널 종료 문자
|
|
|
|
|
|
|
|
sprintf(formattedNumber, "%04X", Values_10_SV[i]); // 4자리로 고정된 형식의 문자열 생성
|
|
|
|
|
|
|
|
str += formattedNumber; // 형식화된 문자열 추가
|
|
|
|
|
|
|
|
str += ',';
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
str += RcvErr;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
return str + FIN;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String Prcss_DO_Write(unsigned int data[], int dataSize){
|
|
|
|
String Prcss_DO_Write(unsigned int data[], int dataSize){
|
|
|
|
String str = "DO!:";
|
|
|
|
String str = "DO!:";
|
|
|
|
|
|
|
|
|
|
|
|
if(dataSize != 1){
|
|
|
|
if(dataSize != 1){
|
|
|
|
str += RcvErr;
|
|
|
|
str += RcvErr;
|
|
|
|
return str;
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
unsigned int data0 = data[0];
|
|
|
|
unsigned int data0 = data[0];
|
|
|
@ -12,7 +60,7 @@ String Prcss_DO_Write(unsigned int data[], int dataSize){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
str += RcvOK;
|
|
|
|
return str;
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
String Prcss_DI_Read(){
|
|
|
|
String Prcss_DI_Read(){
|
|
|
|
String str = "DI?:";
|
|
|
|
String str = "DI?:";
|
|
|
@ -25,7 +73,7 @@ String Prcss_DI_Read(){
|
|
|
|
//}
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
str += RcvOK;
|
|
|
|
return str;
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//
|
|
|
|
//
|
|
|
|
String Prcss_AI_Read(){
|
|
|
|
String Prcss_AI_Read(){
|
|
|
@ -39,17 +87,30 @@ String Prcss_AI_Read(){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
str += RcvOK;
|
|
|
|
return str;
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String Prcss_AO(unsigned int data[], int dataSize){
|
|
|
|
String Prcss_AO(unsigned int data[], int dataSize){
|
|
|
|
String str = "AO!:";
|
|
|
|
String str = "AO!:";
|
|
|
|
|
|
|
|
int t = millis();
|
|
|
|
for(int i=0 ; i<dataSize ; i++){
|
|
|
|
for(int i=0 ; i<dataSize ; i++){
|
|
|
|
str += String(data[i]);
|
|
|
|
|
|
|
|
str += "\t";
|
|
|
|
if(i==0){
|
|
|
|
|
|
|
|
AO_0.setDACOutVoltage(data[i], 0);
|
|
|
|
|
|
|
|
delay(10);
|
|
|
|
|
|
|
|
}else if(i==1){
|
|
|
|
|
|
|
|
AO_0.setDACOutVoltage(data[i], 1);
|
|
|
|
|
|
|
|
delay(10);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Serial.println(str);
|
|
|
|
|
|
|
|
return RcvOK;
|
|
|
|
//str += String(data[i]);
|
|
|
|
|
|
|
|
//str += "\t";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
t = millis()-t;
|
|
|
|
|
|
|
|
Serial.println(t);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String Prcss_PV_Read(){
|
|
|
|
String Prcss_PV_Read(){
|
|
|
@ -63,7 +124,7 @@ String Prcss_PV_Read(){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
str += RcvOK;
|
|
|
|
return str;
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String Prcss_SV_Read(){
|
|
|
|
String Prcss_SV_Read(){
|
|
|
@ -77,14 +138,22 @@ String Prcss_SV_Read(){
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
str += RcvOK;
|
|
|
|
return str;
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
String Prcss_SV_Write(unsigned int data[], int dataSize){
|
|
|
|
String Prcss_SV_Write(unsigned int data[], int dataSize){
|
|
|
|
String str = "SV!:";
|
|
|
|
String str = "SV!:";
|
|
|
|
String message, cmd, cmdData;
|
|
|
|
String message, cmd, cmdData;
|
|
|
|
|
|
|
|
|
|
|
|
cmd = "10DWR,08,";
|
|
|
|
cmd = "10DWR,";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (dataSize < 9) {
|
|
|
|
|
|
|
|
cmd = "10DWR,0" + String(dataSize) + ",";
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
str += RcvErr;
|
|
|
|
|
|
|
|
return str + FIN;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
cmdData = "";
|
|
|
|
cmdData = "";
|
|
|
|
for(int i=0 ; i<dataSize ; i++){
|
|
|
|
for(int i=0 ; i<dataSize ; i++){
|
|
|
|
char hexStr[5]; // Buffer to hold the hexadecimal string (4 characters + null terminator)
|
|
|
|
char hexStr[5]; // Buffer to hold the hexadecimal string (4 characters + null terminator)
|
|
|
@ -102,7 +171,29 @@ String Prcss_SV_Write(unsigned int data[], int dataSize){
|
|
|
|
message += sumMC9(message);
|
|
|
|
message += sumMC9(message);
|
|
|
|
message = "" + message + CRLF;
|
|
|
|
message = "" + message + CRLF;
|
|
|
|
write_buff_first(Buff_485_Wr, message);
|
|
|
|
write_buff_first(Buff_485_Wr, message);
|
|
|
|
Serial.println(cmdData);
|
|
|
|
Serial.println(message);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
return str + FIN;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
String Prcss_AT_Write(bool onOff){
|
|
|
|
|
|
|
|
String str = "AT!:";
|
|
|
|
|
|
|
|
String message, cmd;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cmd = "10DWR,02,0302,0001,0501,";
|
|
|
|
|
|
|
|
if(onOff){
|
|
|
|
|
|
|
|
cmd += "0001";
|
|
|
|
|
|
|
|
}else{
|
|
|
|
|
|
|
|
cmd += "0000";
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
message = cmd;
|
|
|
|
|
|
|
|
message += sumMC9(message);
|
|
|
|
|
|
|
|
message = "" + message + CRLF;
|
|
|
|
|
|
|
|
write_buff_first(Buff_485_Wr, message);
|
|
|
|
|
|
|
|
|
|
|
|
return RcvOK;
|
|
|
|
str += RcvOK;
|
|
|
|
|
|
|
|
return str + FIN;
|
|
|
|
}
|
|
|
|
}
|