X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=rf433rcv%2Fpc%2Fdecode.pl;h=685a283067c2810916764dea8c3ba9dd5d04c21d;hb=02293cb00639b97ca422619ee15f5981a5b3ffd0;hp=c5822e50f4ca827b9816ca4f77b8a71feb0b8eaa;hpb=df71a4e96592d60eaaf409591b590326db3ee9f4;p=svn42.git diff --git a/rf433rcv/pc/decode.pl b/rf433rcv/pc/decode.pl index c5822e5..685a283 100755 --- a/rf433rcv/pc/decode.pl +++ b/rf433rcv/pc/decode.pl @@ -52,5 +52,21 @@ if (my $delemiter = $ARGV[0]) } } chop $seq; - print STDERR "$seq\n"; + # print "$seq\n"; + my $bitcount=0; + my @binarydata; + for my $bits (reverse split /,/,$seq) + { + $binarydata[int($bitcount/8)]<<=1; + $binarydata[int($bitcount/8)]|=$bits; + $bitcount++; + } + $binarydata[int($bitcount/8)]<<= 7 - ($bitcount % 8); + my @chars = map { chr($_) } @binarydata; + print STDERR join '',@chars; +# print STDERR "\ns\x04"; # send 4 times +# print STDERR chr(8-($bitcount % 8)) if $bitcount % 8; + print "$bitcount total, offset ".($bitcount % 8)." bits\n"; + print ($bitcount/8 ," bytes (must be <= 63)\n"); } +