Siemens 7 User Manual Page 34

  • Download
  • Add to my manuals
  • Print
  • Page
    / 36
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 33
Multiplexer Driver Developers Guide
7.5 The +++-Parser
s
Mux_Drv_DevGuide_v07 Page 34 of 36 2006-9-27
Confidential / Released
7.5 The +++-Parser
The following state diagram shows the states of the +++-parser.
Figure 10: State diagram of the +++-parser
Internal states of the ScanRequest Object for scanning each
character in a Send Request for one Port Object
PLUS
PLUS_TIMEOUTWAIT_BREAK
COMPLETE_PLUS
Timeout 1s and
rcv. BreakChar '+'
if BreakCount = 3
rcv. any character
with time differences over One
second to the last character
or the ScanRequest Timer go to zero
in the Timer
rcv. char. unequal '+'
or Timeout 1s
or difference between current and
last Request too big
1. If the next incoming request
has a TImeout to the last request,
then switch to WAIT_BREAK without
Timerfunction
Request-Flag =SCAN_LATER
2. if the ScanRequest Timer go to zero.
Send MSC
command with
ESCAPE =1
if receive the MSC Response
Timeout
WaitResponseTimer
if BreakCount > 0, then send first
the breaks. After check for incoming
Request also check if Break
Count>0 and then '+' characters.
SerMuxSend(), BreakCount=0
If rcv. a SendRequest, then
Flag = SCAN_LATER
If rcv. a SendRequest, then
Flag = SCAN_LATER
if Timer go to zero:
if STATE_PLUS then STATE_WAIT_CHAR
if STATE_PLUS_TIMEOUT then STATE_WAIT_BREAK
if Timer go to 0:
if STATE_WAIT_BREAK then STATE_WAIT_CHAR
WAIT_CHAR()
ScanRequest
->WaitResponse
Timer
ScanRequest
->Timer
if rcv "++" then
BreakCount +1
Page view 33
1 2 ... 29 30 31 32 33 34 35 36

Comments to this Manuals

No comments