Hai fatto un po di confusione, non capisco perchè hai definito l’indirizzo IP nella stringa. L’indirizzo IP viene impostato nella definizione del protocollo (Screenshot).
Poi è corretto il modo di definire la stringa, ma ti consiglio di utilizzare la funzione StringCopy che permette di scrivere la stringa, anzichè ogni singolo carattere. Ricorda che il carriage return ed il line feed si indicano come <CR> e <LF> ma in realtà sono due codici ascii 0x0D e 0x0E, quindi devi definirli come singolo carattere. Ecco come potrebbe essere scritta la tua macro.
macro_command main()
char Command[10]
FILL(Command[0], 0, 10) // Azzero tutti i caratteri
StringCopy(“Admin”, Command[0])
Command[5]=0x0D //Carriage return
Command[6]=0x0A //Line feed
OUTPORT(Command[0], “Free Protocol”, 10)
end macro_command
Naturalmente questo è solo un punto di partenza, magari dopo l’invio di un comando devi attendere una risposta prima di inviare un’altro comando, quindi devi inserire un INPORT, dai una occhiata a questo post. Per testare il funzionamento della macro puoi utilizzare Toolly, che impostato come server TCP/IP permette di accettare connessioni in ingresso e visualizzare i caratteri ricevuti.
Attenzione! per il test ricordati di utilizzare porte libere sul PC e magari disabilita il firewall.