#0x1069 sub parse1069{ my $data=shift; my $len=length($data); my ($obj,$tmp,$j,$k); $obj->{timestamp}=getTimestamp($data); $len=$len-12; ($tmp,$data)=unpack("a12 a$len",$data); for($j=0;$j<2;$j++){ $len=$len-13; ($tmp, $obj->{$j}->{txOpenLoop},$obj->{$j}->{txClosedLoop},$obj->{$j}->{txPilot}, $obj->{$j}->{txTotal}, $obj->{$j}->{rxAgc0}, $obj->{$j}->{rxAgc1}, $data)=unpack("C v v v v v v a$len",$data); $obj->{$j}->{paState} = (int($tmp/32)) % 2; $obj->{$j}->{rachetMode} = (int($tmp/16)) % 2; if($obj->{$j}->{txOpenLoop} >= 2**15){ $obj->{$j}->{txOpenLoop} -= 2**16;} $obj->{$j}->{txOpenLoop} /= 256; if($obj->{$j}->{txClosedLoop} >= 2**15){ $obj->{$j}->{txClosedLoop} -= 2**16;} $obj->{$j}->{txClosedLoop} /= 256; if($obj->{$j}->{txPilot} >= 2**15){ $obj->{$j}->{txPilot} -= 2**16;} $obj->{$j}->{txPilot} /= 256; if($obj->{$j}->{txTotal} >= 2**15){ $obj->{$j}->{txTotal} -= 2**16;} $obj->{$j}->{txTotal} /= 256; if($obj->{$j}->{rxAgc0} >= 2**15){ $obj->{$j}->{rxAgc0} -= 2**16;} $obj->{$j}->{rxAgc0} /= 256; if($obj->{$j}->{rxAgc1} >= 2**15){ $obj->{$j}->{rxAgc1} -= 2**16;} $obj->{$j}->{rxAgc1} /= 256; } return $obj; }