Hi
I have questions, when we send or receive serial is all in binary so it doesn't matter what we write inside of parentheses (HEX,BIN, DEC)
Example
RS485.write(0x01,0xFF);
VS
RS485.write(1,255);
VS (MIX)
RS485.write(0x01,255);
and if does matter How do you do below example.
When we receive a data how do you convert it to Hex to send it back.
if (values[1] == 5 && values[2] == 16 && values[3] == 191 && values[4] == 6 && first_time == 0 ) {
digitalWrite(SSerialTxControl, RS485Transmit); // Enable RS485 Transmit
for (int i = 0; i < sizeof(msgOut); i++) {
RS485Serial.write(msgOut[i]); // Send the byte back
}
Serial.println("-------------------SEND---------------------------");
digitalWrite(SSerialTxControl, RS485Receive); // Disable RS485 Transmit
}
if (values[1] == 8 && values[2] == 254 && values[3] == 191 && values[4] == 2 && first_time == 0) {
first_time = 1;
Serial.println("-------------------GOT IT---------------------------");
device_address = values[5];
byte Address_Assignment[] = {0x7E, 0x05,device_address,0xBF,0x03,0x47,0x7E};
digitalWrite(SSerialTxControl, RS485Transmit); // Enable RS485 Transmit
for (int i = 0; i < sizeof(Address_Assignment); i++) {
RS485Serial.write(Address_Assignment[i]); // Send the byte back
}
Serial.println("-------------------SEND---------------------------");
Serial.println(device_address);
digitalWrite(SSerialTxControl, RS485Receive); // Disable RS485 Transmit
}
if (values[1] == 8 && values[2] == 17 && values[3] == 191 && values[4] == 4 && first_time == 1) {
Serial.println("-------------------Controller Device Present Query---------------------------");
}