Herunterladen Inhalt Inhalt Diese Seite drucken

IFTOOLS MSB-RS485-PLUS Handbuch Seite 178

Inhaltsverzeichnis

Werbung

KAPITEL 13. DER PROTOKOLLMONITOR
1
l o c a l t e l e = t e l e g r a m s . t h i s ( )
2
l o c a l b i n d a t a = base16 . decode ( t e l e : s t r i n g ( ) : sub (2 ,
3
l o c a l pos , adr , fnc , reg , v a l , l r c = bunpack ( b i n d a t a , " bb>H>Hb " )
4
box . t e x t { c a p t i o n =" Addr " , t e x t =adr }
5
box . t e x t { c a p t i o n =" Func " , t e x t = f n c }
6
box . t e x t { c a p t i o n =" R e g i s t e r " , t e x t =reg }
7
box . t e x t { c a p t i o n =" Value " , t e x t = v a l }
8
box . t e x t { c a p t i o n ="LRC" , t e x t = s t r i n g . f o r m a t ("%02X " , l r c ) }
Übrig bleiben jetzt noch das Start ':' Zeichen und die CRLF Endesequenz. Der
Doppelpunkt ist das erste Zeichen im Originaltelegramm und wir können es
ähnlich wie im obsoleten Code handhaben. Sehen Sie dazu Zeile 4 im folgen-
den Listing.
Die neue telegram:dump Funktion ersetzt den restriktiven box.hexdata
Aufruf in Zeile 10. Die dump Funktion 'gehört' immer zu einer zuvor zugewie-
senen telegram Variable und greift nicht mehr intern auf tg zu.
1
l o c a l t e l e = t e l e g r a m s . t h i s ( )
2
l o c a l b i n d a t a = base16 . decode ( t e l e : s t r i n g ( ) : sub (2 ,
3
l o c a l pos , adr , fnc , reg , v a l , l r c = bunpack ( b i n d a t a , " bb>H>Hb " )
4
box . t e x t | c a p t i o n ) " S t a r t " , t e x t = s t r i n g . char ( t e l e : data ( 1 ) )
5
box . t e x t { c a p t i o n =" Addr " , t e x t =adr }
6
box . t e x t { c a p t i o n =" Func " , t e x t = f n c }
7
box . t e x t { c a p t i o n =" R e g i s t e r " , t e x t =reg }
8
box . t e x t { c a p t i o n =" Value " , t e x t = v a l }
9
box . t e x t { c a p t i o n ="LRC" , t e x t = s t r i n g . f o r m a t ("%02X " , l r c ) }
10
box . t e x t { c a p t i o n ="End " , t e x t = t e l e : dump { f i r s t = 2, w i d t h =2 } }
166
3) )
3) )

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis