通信人家园
标题: 那位大哥帮忙详细解释一下下面的TCL脚本 [查看完整版帖子] [打印本页]
时间: 2010-4-26 16:41
作者: youngjump
标题: 那位大哥帮忙详细解释一下下面的TCL脚本
proc receiver {switch cmd CmdOutPutEnd WaitTime} {
global RecvBuf savefile debugprintcom debugcheckV
puts -nonewline $switch $cmd\r
set TimeStart [ clock seconds ]
#wait for 100 mili seconds
set TimeEnd [ clock seconds ]
set TimeSpend [ expr $TimeEnd - $TimeStart ]
if { $TimeSpend > $WaitTime } \
if {[ regexp
"Unknown command" $RecvBuf
] > 0} {
puts "discover Unknown command"
#get all output from the active switch
set TempStr [ read $switch ]
set RecvBufList [ concat $RecvBufList [ split $TempStr {} ] ]
if { [string length $TempStr] > 0 } {
foreach ch [ split
$TempStr {}] {
#append out put chars to ComPort Recv Buffer
\x0D
{ append RecvBuf "\n" }
default { append RecvBuf $ch }
#find the end output info string for the command
if { [ regexp
$CmdOutPutEnd $RecvBuf
] > 0 }
\
if {[ regexp
"Unknown command" $RecvBuf
] > 0} {
puts "discover Unknown command"
#The last line is ---More---
if { [ regexp
"More--" $RecvBuf
] > 0 }
\
set RecvBufList [split $RecvBuf "\n"]
foreach ch $RecvBufList {
if { $ch != " --More-- " } {
通信人家园 (https://www.txrjy.com/) |
Powered by C114 |