Instrument control package: Difference between revisions
no edit summary
No edit summary |
|||
Line 284: | Line 284: | ||
== i2c == | == i2c == | ||
i2c | i2c | ||
== TCP == | |||
=== Example: basic use === | |||
For testing you could start a tcp listener | |||
<pre> | |||
$ socat TCP-LISTEN:8000 - | |||
</pre> | |||
Now you can connect your listener. | |||
{{Code|TCP example|<syntaxhighlight lang="octave" style="font-size:13px"> | |||
# Open TCP connection to 127.0.0.1:8000 | |||
t0 = tcp("127.0.0.1",8000) | |||
# write to listener | |||
tcp_write(t0, "Hello world!") | |||
# Blocking read call, returns uint8 array of exactly 12 bytes read | |||
data = tcp_read(t0, 12) | |||
# Convert uint8 array to string, | |||
char(data) | |||
</syntaxhighlight> | |||
}} | |||
There are several ways to set timeout of read call. | |||
{{Code|set TCP timeout|<syntaxhighlight lang="octave" style="font-size:13px"> | |||
# Open TCP connection to 127.0.0.1:8000 with timeout of 100 ms | |||
t0 = tcp("127.0.0.1",8000,100) | |||
# set timeout to blocking | |||
tcp_timeout(t0, -1) | |||
# the timeout can be overwritten for single read call, in this case 1000ms | |||
data = tcp_read(t0, 12, 1000) | |||
</syntaxhighlight> | |||
}} | |||
[[Category:OctaveForge]] | [[Category:OctaveForge]] | ||
[[Category:Packages]] | [[Category:Packages]] |