-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathfreq.py
More file actions
executable file
·40 lines (32 loc) · 787 Bytes
/
freq.py
File metadata and controls
executable file
·40 lines (32 loc) · 787 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/usr/bin/env python
import sys
def usage():
print "Usage: %s MIN MAX NBITS" % (sys.argv[0])
print "Where:"
print "\tMIN is the minimum period."
print "\tMAX is the maximum period."
print "\tNBITS is the number of bits per symbol."
sys.exit()
# Generates the frequency lookup table
if len(sys.argv) < 4:
usage()
MIN = int(sys.argv[1])
MAX = int(sys.argv[2])
NBITS = int(sys.argv[3])
print "#include <stdint.h>"
print """
/* MIN = %i
MAX = %i
NBITS = %i */
""" % (MIN,MAX,NBITS)
print "const uint16_t period_lut[] = \n{"
NFREQ = (1 << NBITS) + 2
F_STEP = (MAX - MIN)/(NFREQ - 1)
for x in xrange(0, NFREQ):
freq = MIN + F_STEP * x
print "\t%i" % freq ,
if x < (1 + (1<<NBITS)):
print ","
else:
print ""
print "};"