Difference between revisions of "Program Examples:Serial Com:Serial Com Example"

From SoftMC-Wiki
Jump to: navigation, search
(Created page with "{{Axystems:Template:Serial_Com |DESCRIPTION= The following example demonstrates the set up of a TCP-IP server that opens connection with multiple clients.<br/> <br/> The serv...")
 
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Axystems:Template:Serial_Com
+
{{Languages|Program_Examples:Serial_Com:Serial_Com_Example}}
 +
The following example demonstrates the setup of a serial connection with softMC.
  
|DESCRIPTION=
+
The program opens COM2 and waits for at least 3 bytes to arrive. Then it sends a message "done" and closes connection.
The following example demonstrates the set up of a TCP-IP server that opens connection with multiple clients.<br/>
 
<br/>
 
The server opens a socket and blocks on "Accept" until a client gets connected. Then an exchange of messages takes place and the server<br/>
 
closes the connection and gets blocked again waiting to accept the next client.<br/>
 
<br/>
 
<br/>
 
  
|EXAMPLE=
+
<syntaxhighlight lang="vb">
Open COM2 BaudRate=115200 Parity=0 DataBits=8 StopBit=1 XOnOff=1 As #2<br/>
+
common shared str1 as string
sleep 3000<br/>
+
common shared iteration_counter as long = 0
print #2, "done"<br/>
+
common shared time_counter as long = 0
<br/>
 
|SEE ALSO=
 
* [[Axystems:Program_Examples:TCPIP_Simple_Server|Simple Server]]
 
* [[Axystems:Program_Examples:TCPIP_Simple_Client|Simple Client]]
 
* [[Axystems:MC-Basic:ACCEPT|ACCEPT]]
 
* [[Axystems:MC-Basic:CLOSE|CLOSE]]
 
* [[Axystems:MC-Basic:CONNECT|CONNECT]]
 
* [[Axystems:MC-Basic:OPENSOCKET|OPENSOCKET]]
 
* [[Axystems:MC-Basic:PING|PING]]
 
  
}}
+
Program
 +
 
 +
try
 +
close #2
 +
catch else
 +
 
 +
end try
 +
 
 +
Open COM2 BaudRate=115200 Parity=0 DataBits=8 StopBit=1 XOnOff=1 As #2
 +
 
 +
while (loc(2) < 3) and (time_counter < 120) ' allow 120 seconds for system start up to complete
 +
sleep 1000
 +
time_counter = time_counter +1
 +
end while
 +
 
 +
str1 = input$(loc(2),#2)
 +
?str1
 +
 
 +
print #2, "done"
 +
sleep 100
 +
 
 +
close #2
 +
 
 +
End Program
 +
</syntaxhighlight>
 +
 
 +
 
 +
The example corresponds to commit SHA-1: ada143a7f402e6bbad24c13c56401a5393ce3d2b.
 +
 
 +
 
 +
== See Also ==
 +
* [[Serial Communication|'''Serial Communication''']]
 +
* [[MC-Basic:OPEN|OPEN]]
 +
* [[MC-Basic:LOC|LOC]]
 +
* [[MC-Basic:PRINT|PRINT]]
 +
* [[MC-Basic:INPUT$|INPUT$]]
 +
* [[MC-Basic:CLOSE|CLOSE]]
 +
* [[MC-Basic:PRINT|PRINT]]

Latest revision as of 08:19, 16 July 2017

Language: English  • 中文(简体)‎

The following example demonstrates the setup of a serial connection with softMC.

The program opens COM2 and waits for at least 3 bytes to arrive. Then it sends a message "done" and closes connection.

common shared str1 as string
common shared iteration_counter as long = 0
common shared time_counter as long = 0

Program

	try 
		close #2
	catch else

	end try

	Open COM2 BaudRate=115200 Parity=0 DataBits=8 StopBit=1 XOnOff=1 As #2

	while (loc(2) < 3) and (time_counter < 120) ' allow 120 seconds for system start up to complete
		sleep 1000
		time_counter = time_counter +1
	end while

	str1 = input$(loc(2),#2)
	?str1

	print #2, "done" 
	sleep 100

	close #2

End Program


The example corresponds to commit SHA-1: ada143a7f402e6bbad24c13c56401a5393ce3d2b.


See Also