added conversion to binary form
authorrealraum <realraum@realraum.at>
Wed, 1 Feb 2012 23:08:52 +0000 (23:08 +0000)
committerrealraum <realraum@realraum.at>
Wed, 1 Feb 2012 23:08:52 +0000 (23:08 +0000)
rf433rcv/pc/data2sample.pl [new file with mode: 0755]
rf433rcv/pc/sample2data.pl [new file with mode: 0755]

diff --git a/rf433rcv/pc/data2sample.pl b/rf433rcv/pc/data2sample.pl
new file mode 100755 (executable)
index 0000000..2690012
--- /dev/null
@@ -0,0 +1,20 @@
+#!/usr/bin/perl
+use strict;
+my $base=shift @ARGV;
+
+my @input= split //,<>;
+
+print 1 x $base;
+print 0 x (31 * $base);
+
+for my $current (@input)
+{
+  if ($current)
+  {
+    print 1 x (3*$base);
+    print 0 x $base;
+  } else {
+    print 1 x $base;
+    print 0 x (3*$base);
+  }
+}
diff --git a/rf433rcv/pc/sample2data.pl b/rf433rcv/pc/sample2data.pl
new file mode 100755 (executable)
index 0000000..57afafe
--- /dev/null
@@ -0,0 +1,28 @@
+#!/usr/bin/perl
+use strict;
+my @input= split //,<>;
+
+my $zero=0;
+my $one=0;
+my $last=0;
+my $timebase;
+for my $current (@input)
+{
+  if (($current != $last) and ($current == 1) )
+  {
+    print (($zero>$one)?"0":"1") if $one; #skip first=sync
+    $timebase = (($zero>$one)?$one:$zero);
+    #print "$zero,$one\n";
+    $zero=0;
+    $one=0;
+  }
+  if ($current)
+  {
+    $one++ 
+  } else { 
+    $zero++ 
+  }
+  $last=$current;
+}
+#print "\n";
+warn "Base $timebase\n";