#TODO include memory in symbol.
reg=self.symbols.get(name);
return self.peek8(reg,"data");
- def pokebysym(self,name,val):
+ def pokebysim(self,name,val):
"""Write a value by its symbol name."""
#TODO include memory in symbol.
reg=self.symbols.get(name);
- return self.poke8(reg,val,"data");
+ return self.pokebyte(reg,val);
def pokebyte(self,address,value):
"""Set a byte of memory by the monitor."""
self.data=[address&0xff,address>>8,value];
#FIXME CC1110 specific
hz=frequency;
- freq=hz/396.728515625;
+ freq=int(hz/396.728515625);
+
freq0=freq&0xFF;
freq1=(freq&0xFF00)>>8;
- freq1=(freq&0xFF0000)>>16;
- self.CCpokedatabyte(0xdf09,freq2);
- self.CCpokedatabyte(0xdf09,freq1);
- self.CCpokedatabyte(0xdf09,freq0);
+ freq2=(freq&0xFF0000)>>16;
+
+ self.pokebysim("FREQ2",freq2);
+ self.pokebysim("FREQ1",freq1);
+ self.pokebysim("FREQ0",freq0);
+
def RF_getfreq(self):
"""Get the frequency in Hz."""
# This code is being rewritten and refactored. You've been warned!
import sys;
-import binascii;
+import binascii, time;
from GoodFETCC import GoodFETCC;
from GoodFETConsole import GoodFETConsole;
print "%s peek 0x$iram" % sys.argv[0];
print "%s poke 0x$iram 0x$val" % sys.argv[0];
print "%s peekcode 0x$start [0x$stop]" % sys.argv[0];
+
+ print "%s carrier [freq]\n\tHolds a carrier on [freq] Hz." % sys.argv[0];
+
sys.exit();
#Initailize FET and set baud rate
client.start();
+if(sys.argv[1]=="carrier"):
+ if len(sys.argv)>2:
+ client.RF_setfreq(eval(sys.argv[2]));
+ client.RF_carrier();
+ #printconfig();
+ print "\nHolding a carrier wave.";
+ while(1):
+ time.sleep(1);
+
if(sys.argv[1]=="explore"):
print "Exploring undefined commands."
print "Status: %s" %client.status();